<?xml version="1.0" encoding="UTF-8"?>
<robot generator="Robot 7.4.2 (Python 3.11.10 on linux)" generated="2026-05-25T01:52:08.087387" rpa="false" schemaversion="5">
<suite id="s1" name="openflowplugin-flow-services.txt">
<suite id="s1-s1" name="MD SAL NSF OF10" source="/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/MD_SAL_NSF_OF10">
<kw name="Start Mininet" owner="Utils" type="SETUP">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:08.518551" level="INFO">Start the test on the base edition</msg>
<arg>Start the test on the base edition</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:08.518262" elapsed="0.000360"/>
</kw>
<kw name="Clean Mininet System" owner="Utils">
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:08.521086" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:08.520807" elapsed="0.000348"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:08.520779" elapsed="0.000405"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:52:08.521620" level="INFO">index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:52:08.521744" level="INFO">${current_ssh_connection} = index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:52:08.521324" elapsed="0.000450"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:08.522337" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:08.521913" elapsed="0.000475"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:52:08.522926" level="INFO">${conn_id} = 1</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:52:08.522528" elapsed="0.000426"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:52:08.523936" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:52:08.524029" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:52:08.523504" elapsed="0.000555"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:08.524225" elapsed="0.000350"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:52:08.525415" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:52:09.175580" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:52:08 UTC 2026

  System load:  0.02               Processes:             111
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:52:08.525085" elapsed="0.650641"/>
</kw>
<msg time="2026-05-25T01:52:09.175823" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:08.524722" elapsed="0.651196"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:52:08.523170" elapsed="0.652867"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:52:09.176531" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-05-25T01:52:10.385601" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:52:10.386009" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:52:10.386162" level="INFO">${stderr} = *** Removing excess controllers/ofprotocols/ofdatapaths/pings/noxes
killall controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec iv...</msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:52:09.176261" elapsed="1.209964"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:52:10.386678" elapsed="0.001028"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:10.388731" level="INFO">*** Removing excess controllers/ofprotocols/ofdatapaths/pings/noxes
killall controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec ivs ryu-manager 2&gt; /dev/null
killall -9 controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec ivs ryu-manager 2&gt; /dev/null
pkill -9 -f "sudo mnexec"
*** Removing junk from /tmp
rm -f /tmp/vconn* /tmp/vlogs* /tmp/*.out /tmp/*.log
*** Removing old X11 tunnels
*** Removing excess kernel datapaths
ps ax | egrep -o 'dp[0-9]+' | sed 's/dp/nl:/'
***  Removing OVS datapaths
ovs-vsctl --timeout=1 list-br
ovs-vsctl --timeout=1 list-br
*** Removing all links of the pattern foo-ethX
ip link show | egrep -o '([-_.[:alnum:]]+-eth[[:digit:]]+)'
ip link show
*** Killing stale mininet node processes
pkill -9 -f mininet:
*** Shutting down stale tunnels
pkill -9 -f Tunnel=Ethernet
pkill -9 -f .ssh/mn
rm -f ~/.ssh/mn/*
*** Cleanup complete.</msg>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:10.388043" elapsed="0.000967"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:52:10.389556" elapsed="0.000047"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:10.389245" elapsed="0.000436"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:10.389183" elapsed="0.000553"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:52:10.390146" elapsed="0.000078"/>
</return>
<status status="PASS" start="2026-05-25T01:52:10.389867" elapsed="0.000437"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:10.389827" elapsed="0.000535"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:52:10.390443" elapsed="0.000034"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:10.393862" elapsed="0.000482"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:52:10.394538" elapsed="0.000257"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:52:10.394963" elapsed="0.000161"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:52:10.391243" elapsed="0.003961"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:52:08.520272" elapsed="1.875063"/>
</kw>
<msg time="2026-05-25T01:52:10.395415" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:08.519610" elapsed="1.875884"/>
</kw>
<arg>${system}</arg>
<arg>sudo mn -c</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:52:08.519117" elapsed="1.876490"/>
</kw>
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:10.398358" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:10.398000" elapsed="0.000438"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:10.397973" elapsed="0.000500"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:52:10.398895" level="INFO">index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:52:10.399049" level="INFO">${current_ssh_connection} = index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:52:10.398683" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:10.399702" level="INFO">Attempting to execute command "sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:10.399293" elapsed="0.000456"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:52:10.400273" level="INFO">${conn_id} = 3</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:52:10.399876" elapsed="0.000423"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:52:10.401103" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:52:10.401187" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:52:10.400801" elapsed="0.000411"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:10.401340" elapsed="0.000329"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:52:10.402517" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:52:10.733900" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:52:08 UTC 2026

  System load:  0.02               Processes:             111
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:52:09 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:52:10.402180" elapsed="0.331909"/>
</kw>
<msg time="2026-05-25T01:52:10.734315" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:10.401828" elapsed="0.332588"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:52:10.400487" elapsed="0.334062"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:52:10.735172" level="INFO">Executing command 'sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh'.</msg>
<msg time="2026-05-25T01:52:10.767326" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-05-25T01:52:10.767609" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:52:10.767706" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:52:10.734821" elapsed="0.032936"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:52:10.768114" elapsed="0.000522"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:10.769714" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:10.768983" elapsed="0.000826"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:52:10.770411" elapsed="0.000046"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:10.770019" elapsed="0.000520"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:10.769948" elapsed="0.000644"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:52:10.770963" elapsed="0.000066"/>
</return>
<status status="PASS" start="2026-05-25T01:52:10.770717" elapsed="0.000421"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:10.770681" elapsed="0.000584"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:52:10.771356" elapsed="0.000035"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:10.774588" elapsed="0.000500"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:52:10.775324" elapsed="0.000260"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:52:10.775757" elapsed="0.000141"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:52:10.771834" elapsed="0.004139"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:52:10.397283" elapsed="0.378847"/>
</kw>
<msg time="2026-05-25T01:52:10.776211" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:10.396480" elapsed="0.379802"/>
</kw>
<arg>${system}</arg>
<arg>sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:52:10.395848" elapsed="0.380574"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:08.518807" elapsed="2.257700"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:52:10.777259" level="INFO">${mininet_conn_id} = 5</msg>
<var>${mininet_conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:52:10.776695" elapsed="0.000601"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:10.778007" level="INFO">${mininet_conn_id} = 5</msg>
<arg>${mininet_conn_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:10.777526" elapsed="0.000561"/>
</kw>
<kw name="Flexible_Mininet_Login" owner="SSHKeywords">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:52:10.780211" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:52:10.780292" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:52:10.779892" elapsed="0.000425"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:10.780457" elapsed="0.000331"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:52:10.781624" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:52:11.113652" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:52:08 UTC 2026

  System load:  0.02               Processes:             111
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:52:10 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:52:10.781287" elapsed="0.332611"/>
</kw>
<msg time="2026-05-25T01:52:11.113990" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:10.780929" elapsed="0.333168"/>
</kw>
<arg>user=${user}</arg>
<arg>password=${password}</arg>
<arg>delay=${delay}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:52:10.779473" elapsed="0.334754"/>
</kw>
<msg time="2026-05-25T01:52:11.114283" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Flexible SSH Login</arg>
<arg>user=${user}</arg>
<arg>password=${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:10.778886" elapsed="0.335448"/>
</kw>
<arg>user=${user}</arg>
<arg>password=${password}</arg>
<doc>Call Flexible SSH Login, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:52:10.778334" elapsed="0.336078"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:52:11.114847" level="INFO">Executing command 'sudo ovs-vsctl set-manager ptcp:6644'.</msg>
<msg time="2026-05-25T01:52:11.137644" level="INFO">Command exited with return code 0.</msg>
<arg>sudo ovs-vsctl set-manager ptcp:6644</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:52:11.114678" elapsed="0.023137"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:52:11.176453" level="INFO">sudo mn --controller=remote,ip=10.30.170.200 --topo tree,2 --switch ovsk,protocols=OpenFlow13</msg>
<arg>${start}</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:52:11.138269" elapsed="0.038248"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:52:11.499170" level="INFO">[?2004l*** Creating network
*** Adding controller
Connecting to remote controller at 10.30.170.200:6653
*** Adding hosts:
h1 h2 h3 h4 
*** Adding switches:
s1 s2 s3 
*** Adding links:
(s1, s2) (s1, s3) (s2, h1) (s2, h2) (s3, h3) (s3, h4) 
*** Configuring hosts
h1 h2 h3 h4 
*** Starting controller
c0 
*** Starting 3 switches
s1 s2 s3 ...
*** Starting CLI:
mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:52:11.176678" elapsed="0.322607"/>
</kw>
<doc>Basic setup/cleanup work that can be done safely before any system
is run.</doc>
<status status="PASS" start="2026-05-25T01:52:08.517083" elapsed="2.982301"/>
</kw>
<suite id="s1-s1-s1" name="010 Restconf Inventory" source="/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/MD_SAL_NSF_OF10/010_restconf_inventory.robot">
<kw name="Create Session" owner="RequestsLibrary" type="SETUP">
<msg time="2026-05-25T01:52:11.533725" level="INFO">Creating Session using : alias=session, url=http://10.30.170.200:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7f5aceb03510&gt;, timeout=None, proxies=None, verify=False,                     debug=0 </msg>
<arg>session</arg>
<arg>http://${ODL_SYSTEM_IP}:${RESTCONFPORT}</arg>
<arg>auth=${AUTH}</arg>
<arg>headers=${HEADERS_XML}</arg>
<doc>Create Session: create a HTTP session to a server</doc>
<status status="PASS" start="2026-05-25T01:52:11.533339" elapsed="0.000605"/>
</kw>
<test id="s1-s1-s1-t1" name="Get list of nodes" line="30">
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:12.966826" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:12.971457" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node01e0788wamptwp1mxdtwv38l9l10.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 24-May-2026 01:52:12 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":44994,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"6","active-flows":1,"packets-matched":"0"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:12.971835" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:11.541192" elapsed="1.430685"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:12.972627" elapsed="0.000041"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:12.972060" elapsed="0.000656"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:12.976515" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":44994,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"6","active-flows":1,"packets-matched":"0"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s3","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:52:12.012Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"86:6b:7e:aa:d8:45","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"4"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":769000000},"bytes":{"transmitted":"351","received":"351"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"da:1d:b1:57:7a:e9","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"3","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":769000000},"bytes":{"transmitted":"261","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"0a:2b:56:c8:58:06","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":769000000},"bytes":{"transmitted":"351","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"7a:d5:cc:c3:a5:4b","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":755000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:52:12.301Z"}},{"id":"openflow:1","flow-node-inventory:port-number":44982,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"2","active-flows":1,"packets-matched":"0"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s1","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:52:12.013Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ca:de:10:89:22:af","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":777000000},"bytes":{"transmitted":"351","received":"90"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"b6:47:67:c4:b9:4f","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":764000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"96:65:17:8b:f9:14","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"4"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":778000000},"bytes":{"transmitted":"351","received":"351"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:52:12.357Z"}},{"id":"openflow:2","flow-node-inventory:port-number":44998,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-1","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":5000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"5","active-flows":1,"packets-matched":"2"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s2","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:52:12.012Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"92:c7:a2:53:70:de","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"4"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":1,"nanosecond":45000000},"bytes":{"transmitted":"351","received":"351"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"36:78:85:37:b2:45","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":1,"nanosecond":38000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"42:fe:c9:be:4b:45","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"6","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":1,"nanosecond":42000000},"bytes":{"transmitted":"511","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"52:4e:9b:23:8b:73","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":1,"nanosecond":42000000},"bytes":{"transmitted":"351","received":"266"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:52:12.535Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:12.972966" elapsed="0.005054"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:12.972759" elapsed="0.005337"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:12.972013" elapsed="0.006159"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:12.978357" elapsed="0.000249"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:12.978982" elapsed="0.002814"/>
</kw>
<var name="${i}">openflow:1</var>
<status status="PASS" start="2026-05-25T01:52:12.978842" elapsed="0.002997"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:12.982056" elapsed="0.002477"/>
</kw>
<var name="${i}">openflow:2</var>
<status status="PASS" start="2026-05-25T01:52:12.981932" elapsed="0.002643"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:12.984786" elapsed="0.002797"/>
</kw>
<var name="${i}">openflow:3</var>
<status status="PASS" start="2026-05-25T01:52:12.984665" elapsed="0.002971"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-05-25T01:52:12.978679" elapsed="0.008991"/>
</for>
<arg>${RFC8040_OPERATIONAL_NODES_API}</arg>
<arg>${node_list}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
${elements} is verified to exist in the response</doc>
<status status="PASS" start="2026-05-25T01:52:11.540762" elapsed="1.446976"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check For Elements At URI</arg>
<arg>${RFC8040_OPERATIONAL_NODES_API}</arg>
<arg>${node_list}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:11.534517" elapsed="1.453276"/>
</kw>
<doc>Get the inventory</doc>
<status status="PASS" start="2026-05-25T01:52:11.534022" elapsed="1.453920"/>
</test>
<test id="s1-s1-s1-t2" name="Check No Link Down" line="39">
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check For Specific Number Of Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:13.024956" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01e0788wamptwp1mxdtwv38l9l10.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:13.026431" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":44994,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"6","active-flows":1,"packets-matched":"0"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:13.027423" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:12.998464" elapsed="0.029025"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:13.032240" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":44994,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"6","active-flows":1,"packets-matched":"0"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s3","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:52:12.012Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"86:6b:7e:aa:d8:45","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"4"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":769000000},"bytes":{"transmitted":"351","received":"351"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"da:1d:b1:57:7a:e9","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"3","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":769000000},"bytes":{"transmitted":"261","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"0a:2b:56:c8:58:06","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":769000000},"bytes":{"transmitted":"351","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"7a:d5:cc:c3:a5:4b","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":755000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:52:12.301Z"}},{"id":"openflow:1","flow-node-inventory:port-number":44982,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"2","active-flows":1,"packets-matched":"0"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s1","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:52:12.013Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ca:de:10:89:22:af","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":777000000},"bytes":{"transmitted":"351","received":"90"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"b6:47:67:c4:b9:4f","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":764000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"96:65:17:8b:f9:14","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"4"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":778000000},"bytes":{"transmitted":"351","received":"351"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:52:12.357Z"}},{"id":"openflow:2","flow-node-inventory:port-number":44998,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-1","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":5000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"5","active-flows":1,"packets-matched":"2"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s2","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:52:12.012Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"92:c7:a2:53:70:de","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"4"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":1,"nanosecond":45000000},"bytes":{"transmitted":"351","received":"351"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"36:78:85:37:b2:45","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":1,"nanosecond":38000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"42:fe:c9:be:4b:45","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"6","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":1,"nanosecond":42000000},"bytes":{"transmitted":"511","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"52:4e:9b:23:8b:73","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":1,"nanosecond":42000000},"bytes":{"transmitted":"351","received":"266"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:52:12.535Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:13.027856" elapsed="0.005977"/>
</kw>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:13.034054" elapsed="0.000321"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-05-25T01:52:13.038459" level="INFO">Item found from container 8 times.</msg>
<arg>${resp.text}</arg>
<arg>${element}</arg>
<arg>${expected_count}</arg>
<doc>Fails if ``container`` does not contain ``item`` ``count`` times.</doc>
<status status="PASS" start="2026-05-25T01:52:13.034601" elapsed="0.004314"/>
</kw>
<arg>${RFC8040_OPERATIONAL_NODES_API}</arg>
<arg>"link-down":false</arg>
<arg>8</arg>
<doc>A GET is made to the specified ${URI} and the specific count of a
given element is done (as supplied by ${element} and ${expected_count})</doc>
<status status="PASS" start="2026-05-25T01:52:12.998045" elapsed="0.040938"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check For Specific Number Of Elements At URI</arg>
<arg>${RFC8040_OPERATIONAL_NODES_API}</arg>
<arg>"link-down":false</arg>
<arg>8</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:12.988874" elapsed="0.050163"/>
</kw>
<kw name="Report Failure Due To Bug" owner="Utils" type="TEARDOWN">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:52:13.040339" level="INFO">${test_skipped} = False</msg>
<var>${test_skipped}</var>
<arg>len(re.findall('SKIPPED', """${TEST_MESSAGE}""")) &gt; 0</arg>
<arg>modules=re</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:52:13.039782" elapsed="0.000586"/>
</kw>
<if>
<branch type="IF" condition="('${TEST_STATUS}' != 'FAIL') or ${test_skipped}">
<return>
<status status="PASS" start="2026-05-25T01:52:13.040638" elapsed="0.000044"/>
</return>
<status status="PASS" start="2026-05-25T01:52:13.040453" elapsed="0.000265"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:13.040430" elapsed="0.000312"/>
</if>
<kw name="Comment" owner="BuiltIn">
<arg>Jira tickets are {PROJECT}-{NUMBER} while Bugzilla tickets are {NUMBER}</arg>
<doc>Displays the given messages in the log file as keyword arguments.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:13.040878" elapsed="0.000031"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<var>${match}</var>
<arg>Should Contain</arg>
<arg>${number}</arg>
<arg>-</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:13.041046" elapsed="0.000037"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<var>${bug_url}</var>
<arg>${match}</arg>
<arg>https://jira.opendaylight.org/browse/${number}</arg>
<arg>https://bugs.opendaylight.org/show_bug.cgi?id=${number}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:13.041255" elapsed="0.000024"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<var>${msg}</var>
<arg>This test fails due to ${bug_url}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:13.041408" elapsed="0.000022"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${newline}</var>
<arg>chr(10)</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:13.041557" elapsed="0.000021"/>
</kw>
<kw name="Set Test Message" owner="BuiltIn">
<arg>${msg}${newline}${newline}${TEST_MESSAGE}</arg>
<doc>Sets message for the current test case.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:13.041696" elapsed="0.000020"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:13.041839" elapsed="0.000020"/>
</kw>
<if>
<branch type="IF" condition="&quot;${include_bug_in_tags}&quot;==&quot;True&quot;">
<kw name="Set Tags" owner="BuiltIn">
<arg>${bug_url}</arg>
<doc>Adds given ``tags`` for the current test or all tests in a suite.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:13.042097" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:13.041944" elapsed="0.000230"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:52:13.041921" elapsed="0.000316"/>
</if>
<arg>6595</arg>
<doc>Report that a test failed due to a known Bugzilla bug whose
number is provided as an argument.
Not FAILED (incl. SKIPPED) test are not reported.
This keyword must be used in the [Teardown] setting of the affected test
or as the first line of the test if FastFail module is not being
used. It reports the URL of the bug on console and also puts it
into the Robot log file.</doc>
<status status="PASS" start="2026-05-25T01:52:13.039447" elapsed="0.002853"/>
</kw>
<doc>Check there is no link down. We have 8 ports in total: s1=2, s2=3, s3=3.</doc>
<status status="PASS" start="2026-05-25T01:52:12.988349" elapsed="0.054000"/>
</test>
<test id="s1-s1-s1-t3" name="Get node 1 inventory" line="50">
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:52:13.043576" level="INFO">${list} = ['"flow-node-inventory:flow-feature-capability-flow-stats"', '"flow-node-inventory:flow-feature-capability-table-stats"', '"flow-node-inventory:flow-feature-capability-port-stats"', '"flow-node-invent...</msg>
<var>${list}</var>
<arg>@{SW_CAPABILITIES}</arg>
<arg>${SW_VENDOR}</arg>
<arg>${SW_IPADDRESS}</arg>
<arg>${SW_HARDWARE}</arg>
<arg>openflow:1:1</arg>
<arg>openflow:1:2</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:52:13.043106" elapsed="0.000499"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:13.074259" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01e0788wamptwp1mxdtwv38l9l10.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:13.078401" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":44982,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"2","active-flows":1,"packets-matched":"0"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-tab... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:13.078970" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:13.051180" elapsed="0.027854"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:13.080003" elapsed="0.000058"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:13.079283" elapsed="0.000887"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:13.084021" level="INFO">{"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":44982,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"2","active-flows":1,"packets-matched":"0"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s1","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:52:12.013Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ca:de:10:89:22:af","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":777000000},"bytes":{"transmitted":"351","received":"90"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"b6:47:67:c4:b9:4f","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":764000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"96:65:17:8b:f9:14","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"4"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":778000000},"bytes":{"transmitted":"351","received":"351"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:52:12.357Z"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:13.080515" elapsed="0.003897"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:13.080231" elapsed="0.004219"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:13.079230" elapsed="0.005243"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:13.084598" elapsed="0.000187"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:13.085173" elapsed="0.002396"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-flow-stats"</var>
<status status="PASS" start="2026-05-25T01:52:13.085019" elapsed="0.002592"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:13.087822" elapsed="0.002511"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-table-stats"</var>
<status status="PASS" start="2026-05-25T01:52:13.087703" elapsed="0.002672"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:13.090577" elapsed="0.002319"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-port-stats"</var>
<status status="PASS" start="2026-05-25T01:52:13.090460" elapsed="0.002477"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:13.093155" elapsed="0.002365"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-queue-stats"</var>
<status status="PASS" start="2026-05-25T01:52:13.093022" elapsed="0.002539"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:13.095773" elapsed="0.002453"/>
</kw>
<var name="${i}">"flow-node-inventory:manufacturer":"Nicira, Inc."</var>
<status status="PASS" start="2026-05-25T01:52:13.095652" elapsed="0.002645"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:13.098511" elapsed="0.002360"/>
</kw>
<var name="${i}">"flow-node-inventory:ip-address":"10.30.171.68"</var>
<status status="PASS" start="2026-05-25T01:52:13.098385" elapsed="0.002529"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:13.101131" elapsed="0.002352"/>
</kw>
<var name="${i}">"flow-node-inventory:hardware":"Open vSwitch"</var>
<status status="PASS" start="2026-05-25T01:52:13.100997" elapsed="0.002527"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:13.103727" elapsed="0.002321"/>
</kw>
<var name="${i}">openflow:1:1</var>
<status status="PASS" start="2026-05-25T01:52:13.103608" elapsed="0.002496"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:13.106338" elapsed="0.002447"/>
</kw>
<var name="${i}">openflow:1:2</var>
<status status="PASS" start="2026-05-25T01:52:13.106189" elapsed="0.002637"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-05-25T01:52:13.084854" elapsed="0.024003"/>
</for>
<arg>${RFC8040_NODES_API}/node=openflow%3A1?${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>${list}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
${elements} is verified to exist in the response</doc>
<status status="PASS" start="2026-05-25T01:52:13.050484" elapsed="0.058436"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check For Elements At URI</arg>
<arg>${RFC8040_NODES_API}/node=openflow%3A1?${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>${list}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:13.043788" elapsed="0.065185"/>
</kw>
<doc>Get the inventory for a node</doc>
<status status="PASS" start="2026-05-25T01:52:13.042667" elapsed="0.066465"/>
</test>
<test id="s1-s1-s1-t4" name="Get node 2 inventory" line="61">
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:52:13.110406" level="INFO">${list} = ['"flow-node-inventory:flow-feature-capability-flow-stats"', '"flow-node-inventory:flow-feature-capability-table-stats"', '"flow-node-inventory:flow-feature-capability-port-stats"', '"flow-node-invent...</msg>
<var>${list}</var>
<arg>@{SW_CAPABILITIES}</arg>
<arg>${SW_VENDOR}</arg>
<arg>${SW_IPADDRESS}</arg>
<arg>${SW_HARDWARE}</arg>
<arg>openflow:2:1</arg>
<arg>openflow:2:2</arg>
<arg>openflow:2:3</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:52:13.109912" elapsed="0.000523"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:13.132491" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A2?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01e0788wamptwp1mxdtwv38l9l10.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:13.136678" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:node":[{"id":"openflow:2","flow-node-inventory:port-number":44998,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-1","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":5000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"5","active-flows":1,"packets-matched":"2"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendayli... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:13.137243" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:13.117425" elapsed="0.019918"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:13.138568" elapsed="0.000065"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:13.137590" elapsed="0.001120"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:13.141913" level="INFO">{"opendaylight-inventory:node":[{"id":"openflow:2","flow-node-inventory:port-number":44998,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-1","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":5000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"5","active-flows":1,"packets-matched":"2"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s2","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:52:12.012Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"92:c7:a2:53:70:de","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"4"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":1,"nanosecond":45000000},"bytes":{"transmitted":"351","received":"351"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"36:78:85:37:b2:45","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":1,"nanosecond":38000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"42:fe:c9:be:4b:45","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"6","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":1,"nanosecond":42000000},"bytes":{"transmitted":"511","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"52:4e:9b:23:8b:73","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":1,"nanosecond":42000000},"bytes":{"transmitted":"351","received":"266"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:52:12.535Z"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:13.139114" elapsed="0.003226"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:13.138768" elapsed="0.003612"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:13.137527" elapsed="0.004877"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:13.142530" elapsed="0.000183"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:13.143050" elapsed="0.002415"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-flow-stats"</var>
<status status="PASS" start="2026-05-25T01:52:13.142925" elapsed="0.002582"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:13.145715" elapsed="0.002412"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-table-stats"</var>
<status status="PASS" start="2026-05-25T01:52:13.145594" elapsed="0.002581"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:13.148385" elapsed="0.002410"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-port-stats"</var>
<status status="PASS" start="2026-05-25T01:52:13.148263" elapsed="0.002574"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:13.151041" elapsed="0.002430"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-queue-stats"</var>
<status status="PASS" start="2026-05-25T01:52:13.150920" elapsed="0.002594"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:13.153749" elapsed="0.002406"/>
</kw>
<var name="${i}">"flow-node-inventory:manufacturer":"Nicira, Inc."</var>
<status status="PASS" start="2026-05-25T01:52:13.153598" elapsed="0.002599"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:13.156410" elapsed="0.002376"/>
</kw>
<var name="${i}">"flow-node-inventory:ip-address":"10.30.171.68"</var>
<status status="PASS" start="2026-05-25T01:52:13.156282" elapsed="0.002545"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:13.159034" elapsed="0.002387"/>
</kw>
<var name="${i}">"flow-node-inventory:hardware":"Open vSwitch"</var>
<status status="PASS" start="2026-05-25T01:52:13.158912" elapsed="0.002555"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:13.161685" elapsed="0.002378"/>
</kw>
<var name="${i}">openflow:2:1</var>
<status status="PASS" start="2026-05-25T01:52:13.161551" elapsed="0.002570"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:13.164326" elapsed="0.002355"/>
</kw>
<var name="${i}">openflow:2:2</var>
<status status="PASS" start="2026-05-25T01:52:13.164206" elapsed="0.002517"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:13.166932" elapsed="0.002354"/>
</kw>
<var name="${i}">openflow:2:3</var>
<status status="PASS" start="2026-05-25T01:52:13.166807" elapsed="0.002521"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-05-25T01:52:13.142777" elapsed="0.026581"/>
</for>
<arg>${RFC8040_NODES_API}/node=openflow%3A2?${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>${list}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
${elements} is verified to exist in the response</doc>
<status status="PASS" start="2026-05-25T01:52:13.116803" elapsed="0.052617"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check For Elements At URI</arg>
<arg>${RFC8040_NODES_API}/node=openflow%3A2?${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>${list}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:13.110605" elapsed="0.058867"/>
</kw>
<doc>Get the inventory for a node</doc>
<status status="PASS" start="2026-05-25T01:52:13.109469" elapsed="0.060137"/>
</test>
<test id="s1-s1-s1-t5" name="Get node 3 inventory" line="72">
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:52:13.170904" level="INFO">${list} = ['"flow-node-inventory:flow-feature-capability-flow-stats"', '"flow-node-inventory:flow-feature-capability-table-stats"', '"flow-node-inventory:flow-feature-capability-port-stats"', '"flow-node-invent...</msg>
<var>${list}</var>
<arg>@{SW_CAPABILITIES}</arg>
<arg>${SW_VENDOR}</arg>
<arg>${SW_IPADDRESS}</arg>
<arg>${SW_HARDWARE}</arg>
<arg>openflow:3:1</arg>
<arg>openflow:3:2</arg>
<arg>openflow:3:3</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:52:13.170424" elapsed="0.000510"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:13.191976" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A3?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01e0788wamptwp1mxdtwv38l9l10.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:13.196052" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:node":[{"id":"openflow:3","flow-node-inventory:port-number":44994,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"6","active-flows":1,"packets-matched":"0"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-tab... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:13.196559" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:13.177855" elapsed="0.018765"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:13.197518" elapsed="0.000059"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:13.196807" elapsed="0.000844"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:13.203334" level="INFO">{"opendaylight-inventory:node":[{"id":"openflow:3","flow-node-inventory:port-number":44994,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"6","active-flows":1,"packets-matched":"0"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s3","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:52:12.012Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"86:6b:7e:aa:d8:45","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"4"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":769000000},"bytes":{"transmitted":"351","received":"351"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"da:1d:b1:57:7a:e9","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"3","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":769000000},"bytes":{"transmitted":"261","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"0a:2b:56:c8:58:06","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":769000000},"bytes":{"transmitted":"351","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"7a:d5:cc:c3:a5:4b","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":755000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:52:12.301Z"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:13.197986" elapsed="0.005905"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:13.197707" elapsed="0.006220"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:13.196760" elapsed="0.007189"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:13.204084" elapsed="0.000172"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:13.204563" elapsed="0.002550"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-flow-stats"</var>
<status status="PASS" start="2026-05-25T01:52:13.204447" elapsed="0.002708"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:13.207357" elapsed="0.002312"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-table-stats"</var>
<status status="PASS" start="2026-05-25T01:52:13.207238" elapsed="0.002472"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:13.209907" elapsed="0.002407"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-port-stats"</var>
<status status="PASS" start="2026-05-25T01:52:13.209791" elapsed="0.002565"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:13.212554" elapsed="0.002377"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-queue-stats"</var>
<status status="PASS" start="2026-05-25T01:52:13.212437" elapsed="0.002534"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:13.215185" elapsed="0.002304"/>
</kw>
<var name="${i}">"flow-node-inventory:manufacturer":"Nicira, Inc."</var>
<status status="PASS" start="2026-05-25T01:52:13.215052" elapsed="0.002480"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:13.217729" elapsed="0.002328"/>
</kw>
<var name="${i}">"flow-node-inventory:ip-address":"10.30.171.68"</var>
<status status="PASS" start="2026-05-25T01:52:13.217612" elapsed="0.002500"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:13.220339" elapsed="0.002329"/>
</kw>
<var name="${i}">"flow-node-inventory:hardware":"Open vSwitch"</var>
<status status="PASS" start="2026-05-25T01:52:13.220200" elapsed="0.002509"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:13.222908" elapsed="0.002333"/>
</kw>
<var name="${i}">openflow:3:1</var>
<status status="PASS" start="2026-05-25T01:52:13.222790" elapsed="0.002491"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:13.225480" elapsed="0.002360"/>
</kw>
<var name="${i}">openflow:3:2</var>
<status status="PASS" start="2026-05-25T01:52:13.225361" elapsed="0.002519"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:13.228122" elapsed="0.002374"/>
</kw>
<var name="${i}">openflow:3:3</var>
<status status="PASS" start="2026-05-25T01:52:13.227960" elapsed="0.002578"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-05-25T01:52:13.204314" elapsed="0.026254"/>
</for>
<arg>${RFC8040_NODES_API}/node=openflow%3A3?${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>${list}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
${elements} is verified to exist in the response</doc>
<status status="PASS" start="2026-05-25T01:52:13.177344" elapsed="0.053280"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check For Elements At URI</arg>
<arg>${RFC8040_NODES_API}/node=openflow%3A3?${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>${list}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:13.171127" elapsed="0.059547"/>
</kw>
<doc>Get the inventory for a node</doc>
<status status="PASS" start="2026-05-25T01:52:13.169934" elapsed="0.060854"/>
</test>
<test id="s1-s1-s1-t6" name="Link Down" line="83">
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:52:13.234087" level="INFO">link s1 s2 down</msg>
<arg>link s1 s2 down</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:52:13.231380" elapsed="0.002768"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:52:13.238632" level="INFO">mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:52:13.234295" elapsed="0.004395"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:52:13.239137" level="INFO">@{list} = [ "link-down":true ]</msg>
<var>@{list}</var>
<arg>"link-down":true</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:52:13.238830" elapsed="0.000336"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:13.261161" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/node-connector=openflow%3A1%3A1?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/node-connector=openflow%3A1%3A1?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01e0788wamptwp1mxdtwv38l9l10.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:13.262536" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/node-connector=openflow%3A1%3A1?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '966'} 
 body={"opendaylight-inventory:node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ca:de:10:89:22:af","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":777000000},"bytes":{"transmitted":"351","received":"90"},"receive-crc-error":"0"}}]} 
 </msg>
<msg time="2026-05-25T01:52:13.262867" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:13.246151" elapsed="0.016777"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:13.263833" elapsed="0.000057"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:13.263155" elapsed="0.000805"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:13.268855" level="INFO">{"opendaylight-inventory:node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ca:de:10:89:22:af","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":777000000},"bytes":{"transmitted":"351","received":"90"},"receive-crc-error":"0"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:13.264323" elapsed="0.004651"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:13.264016" elapsed="0.005034"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:13.263101" elapsed="0.006033"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:13.269401" elapsed="0.000373"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-05-25T01:52:13.273402" level="FAIL">'{"opendaylight-inventory:node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ca:de:10:89:22:af","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":777000000},"bytes":{"transmitted":"351","received":"90"},"receive-crc-error":"0"}}]}' does not contain '"link-down":true'</msg>
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="FAIL" start="2026-05-25T01:52:13.270556" elapsed="0.003026">'{"opendaylight-inventory:node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ca:de:10:89:22:af","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":777000000},"bytes":{"transmitted":"351","received":"90"},"receive-crc-error":"0"}}]}' does not contain '"link-down":true'</status>
</kw>
<var name="${i}">"link-down":true</var>
<status status="FAIL" start="2026-05-25T01:52:13.270245" elapsed="0.003426">'{"opendaylight-inventory:node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ca:de:10:89:22:af","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":777000000},"bytes":{"transmitted":"351","received":"90"},"receive-crc-error":"0"}}]}' does not contain '"link-down":true'</status>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="FAIL" start="2026-05-25T01:52:13.269906" elapsed="0.003833">'{"opendaylight-inventory:node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ca:de:10:89:22:af","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":777000000},"bytes":{"transmitted":"351","received":"90"},"receive-crc-error":"0"}}]}' does not contain '"link-down":true'</status>
</for>
<arg>${RFC8040_NODES_API}/node=openflow%3A1/node-connector=openflow%3A1%3A1?${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>${list}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
${elements} is verified to exist in the response</doc>
<status status="FAIL" start="2026-05-25T01:52:13.245647" elapsed="0.028210">'{"opendaylight-inventory:node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ca:de:10:89:22:af","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":777000000},"bytes":{"transmitted":"351","received":"90"},"receive-crc-error":"0"}}]}' does not contain '"link-down":true'</status>
</kw>
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:15.294988" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/node-connector=openflow%3A1%3A1?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/node-connector=openflow%3A1%3A1?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01e0788wamptwp1mxdtwv38l9l10.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:15.296821" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/node-connector=openflow%3A1%3A1?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '1014'} 
 body={"opendaylight-inventory:node-connector":[{"id":"openflow:1:1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:maximum-speed":0,"flow-node-inventory:reason":"update","flow-node-inventory:configuration":"PORT-DOWN","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ca:de:10:89:22:af","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:supported":"","flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"6","received":"4"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":3,"nanosecond":720000000},"bytes":{"transmitted":"511","received":"351"},"receive-crc-error":"0"}}]} 
 </msg>
<msg time="2026-05-25T01:52:15.297131" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:15.283591" elapsed="0.013608"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:15.298229" elapsed="0.000065"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:15.297438" elapsed="0.000936"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.303750" level="INFO">{"opendaylight-inventory:node-connector":[{"id":"openflow:1:1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:maximum-speed":0,"flow-node-inventory:reason":"update","flow-node-inventory:configuration":"PORT-DOWN","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ca:de:10:89:22:af","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:supported":"","flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"6","received":"4"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":3,"nanosecond":720000000},"bytes":{"transmitted":"511","received":"351"},"receive-crc-error":"0"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:15.298741" elapsed="0.005142"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:15.298435" elapsed="0.005533"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:15.297377" elapsed="0.006644"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:15.304348" elapsed="0.000430"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:15.305578" elapsed="0.004672"/>
</kw>
<var name="${i}">"link-down":true</var>
<status status="PASS" start="2026-05-25T01:52:15.305285" elapsed="0.005024"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-05-25T01:52:15.304925" elapsed="0.005429"/>
</for>
<arg>${RFC8040_NODES_API}/node=openflow%3A1/node-connector=openflow%3A1%3A1?${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>${list}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
${elements} is verified to exist in the response</doc>
<status status="PASS" start="2026-05-25T01:52:15.282744" elapsed="0.027693"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check For Elements At URI</arg>
<arg>${RFC8040_NODES_API}/node=openflow%3A1/node-connector=openflow%3A1%3A1?${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>${list}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:13.239315" elapsed="2.071194"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:15.328168" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/node-connector=openflow%3A2%3A3?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/node-connector=openflow%3A2%3A3?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01e0788wamptwp1mxdtwv38l9l10.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:15.329035" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/node-connector=openflow%3A2%3A3?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '1014'} 
 body={"opendaylight-inventory:node-connector":[{"id":"openflow:2:3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:maximum-speed":0,"flow-node-inventory:reason":"update","flow-node-inventory:configuration":"PORT-DOWN","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"92:c7:a2:53:70:de","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:supported":"","flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"6"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":3,"nanosecond":698000000},"bytes":{"transmitted":"351","received":"511"},"receive-crc-error":"0"}}]} 
 </msg>
<msg time="2026-05-25T01:52:15.329200" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:15.318371" elapsed="0.010865"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:15.329806" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:15.329411" elapsed="0.000476"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.332940" level="INFO">{"opendaylight-inventory:node-connector":[{"id":"openflow:2:3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:maximum-speed":0,"flow-node-inventory:reason":"update","flow-node-inventory:configuration":"PORT-DOWN","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"92:c7:a2:53:70:de","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:supported":"","flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"6"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":3,"nanosecond":698000000},"bytes":{"transmitted":"351","received":"511"},"receive-crc-error":"0"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:15.330120" elapsed="0.002895"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:15.329921" elapsed="0.003142"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:15.329381" elapsed="0.003733"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:15.333283" elapsed="0.000231"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:15.333937" elapsed="0.003198"/>
</kw>
<var name="${i}">"link-down":true</var>
<status status="PASS" start="2026-05-25T01:52:15.333775" elapsed="0.003418"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-05-25T01:52:15.333592" elapsed="0.003643"/>
</for>
<arg>${RFC8040_NODES_API}/node=openflow%3A2/node-connector=openflow%3A2%3A3?${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>${list}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
${elements} is verified to exist in the response</doc>
<status status="PASS" start="2026-05-25T01:52:15.317849" elapsed="0.019462"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check For Elements At URI</arg>
<arg>${RFC8040_NODES_API}/node=openflow%3A2/node-connector=openflow%3A2%3A3?${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>${list}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:15.310738" elapsed="0.026643"/>
</kw>
<doc>Take link s1-s2 down</doc>
<status status="PASS" start="2026-05-25T01:52:13.231021" elapsed="2.106541"/>
</test>
<test id="s1-s1-s1-t7" name="Link Up" line="101">
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:52:15.340114" level="INFO">link s1 s2 up</msg>
<arg>link s1 s2 up</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:52:15.338244" elapsed="0.001940"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:52:15.345111" level="INFO">mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:52:15.340334" elapsed="0.004833"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.345595" level="INFO">@{list} = [ "link-down":false ]</msg>
<var>@{list}</var>
<arg>"link-down":false</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:52:15.345310" elapsed="0.000314"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:15.361621" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/node-connector=openflow%3A1%3A1?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/node-connector=openflow%3A1%3A1?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01e0788wamptwp1mxdtwv38l9l10.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:15.362097" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/node-connector=openflow%3A1%3A1?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '609'} 
 body={"opendaylight-inventory:node-connector":[{"id":"openflow:1:1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:maximum-speed":0,"flow-node-inventory:reason":"update","flow-node-inventory:configuration":"","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ca:de:10:89:22:af","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:supported":"","flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false}}]} 
 </msg>
<msg time="2026-05-25T01:52:15.362200" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:15.352436" elapsed="0.009790"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:15.362591" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:15.362308" elapsed="0.000340"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.364849" level="INFO">{"opendaylight-inventory:node-connector":[{"id":"openflow:1:1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:maximum-speed":0,"flow-node-inventory:reason":"update","flow-node-inventory:configuration":"","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ca:de:10:89:22:af","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:supported":"","flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:15.362798" elapsed="0.002116"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:15.362672" elapsed="0.002279"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:15.362287" elapsed="0.002686"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:15.365112" elapsed="0.000168"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:15.365608" elapsed="0.002906"/>
</kw>
<var name="${i}">"link-down":false</var>
<status status="PASS" start="2026-05-25T01:52:15.365474" elapsed="0.003141"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-05-25T01:52:15.365341" elapsed="0.003323"/>
</for>
<arg>${RFC8040_NODES_API}/node=openflow%3A1/node-connector=openflow%3A1%3A1?${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>${list}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
${elements} is verified to exist in the response</doc>
<status status="PASS" start="2026-05-25T01:52:15.351932" elapsed="0.016811"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check For Elements At URI</arg>
<arg>${RFC8040_NODES_API}/node=openflow%3A1/node-connector=openflow%3A1%3A1?${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>${list}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:15.345776" elapsed="0.023061"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:15.386376" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/node-connector=openflow%3A2%3A3?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/node-connector=openflow%3A2%3A3?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01e0788wamptwp1mxdtwv38l9l10.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:15.386969" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/node-connector=openflow%3A2%3A3?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '609'} 
 body={"opendaylight-inventory:node-connector":[{"id":"openflow:2:3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:maximum-speed":0,"flow-node-inventory:reason":"update","flow-node-inventory:configuration":"","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"92:c7:a2:53:70:de","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:supported":"","flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false}}]} 
 </msg>
<msg time="2026-05-25T01:52:15.387133" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:15.377056" elapsed="0.010115"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:15.387672" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:15.387283" elapsed="0.000467"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.390814" level="INFO">{"opendaylight-inventory:node-connector":[{"id":"openflow:2:3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:maximum-speed":0,"flow-node-inventory:reason":"update","flow-node-inventory:configuration":"","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"92:c7:a2:53:70:de","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:supported":"","flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:15.387957" elapsed="0.002928"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:15.387784" elapsed="0.003154"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:15.387255" elapsed="0.003717"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:15.391167" elapsed="0.000233"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:15.391816" elapsed="0.004903"/>
</kw>
<var name="${i}">"link-down":false</var>
<status status="PASS" start="2026-05-25T01:52:15.391654" elapsed="0.005124"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-05-25T01:52:15.391477" elapsed="0.005377"/>
</for>
<arg>${RFC8040_NODES_API}/node=openflow%3A2/node-connector=openflow%3A2%3A3?${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>${list}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
${elements} is verified to exist in the response</doc>
<status status="PASS" start="2026-05-25T01:52:15.376559" elapsed="0.020377"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check For Elements At URI</arg>
<arg>${RFC8040_NODES_API}/node=openflow%3A2/node-connector=openflow%3A2%3A3?${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>${list}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:15.369056" elapsed="0.027950"/>
</kw>
<doc>Take link s1-s2 up</doc>
<status status="PASS" start="2026-05-25T01:52:15.337832" elapsed="0.059356"/>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-05-25T01:52:15.397964" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-05-25T01:52:15.397884" elapsed="0.000151"/>
</kw>
<doc>Test suite for RESTCONF inventory</doc>
<status status="PASS" start="2026-05-25T01:52:11.499484" elapsed="3.898655"/>
</suite>
<suite id="s1-s1-s2" name="020 Restconf Topology" source="/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/MD_SAL_NSF_OF10/020_restconf_topology.robot">
<kw name="Create Session" owner="RequestsLibrary" type="SETUP">
<msg time="2026-05-25T01:52:15.429322" level="INFO">Creating Session using : alias=session, url=http://10.30.170.200:8181, headers={'Content-Type': 'application/json'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7f5ace5243d0&gt;, timeout=None, proxies=None, verify=False,                     debug=0 </msg>
<arg>session</arg>
<arg>http://${ODL_SYSTEM_IP}:${RESTCONFPORT}</arg>
<arg>auth=${AUTH}</arg>
<arg>headers=${HEADERS}</arg>
<doc>Create Session: create a HTTP session to a server</doc>
<status status="PASS" start="2026-05-25T01:52:15.428973" elapsed="0.000524"/>
</kw>
<test id="s1-s1-s2-t1" name="Get RESTCONF Topology" line="20">
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:15.452099" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:15.455838" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node0xe1q6vcm1nfeayohkx01b6g1.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 24-May-2026 01:52:15 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3294'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:52:15.456247" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:15.436547" elapsed="0.019763"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:15.457221" elapsed="0.000059"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:15.456511" elapsed="0.000840"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.461999" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:15.457676" elapsed="0.004406"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:15.457407" elapsed="0.004713"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:15.456462" elapsed="0.005680"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:15.462262" elapsed="0.000165"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:15.462739" elapsed="0.002099"/>
</kw>
<var name="${i}">openflow:1</var>
<status status="PASS" start="2026-05-25T01:52:15.462622" elapsed="0.002266"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:15.465105" elapsed="0.002085"/>
</kw>
<var name="${i}">openflow:2</var>
<status status="PASS" start="2026-05-25T01:52:15.464972" elapsed="0.002259"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:15.467429" elapsed="0.002143"/>
</kw>
<var name="${i}">openflow:3</var>
<status status="PASS" start="2026-05-25T01:52:15.467312" elapsed="0.002303"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-05-25T01:52:15.462487" elapsed="0.007158"/>
</for>
<arg>${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>${node_list}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
${elements} is verified to exist in the response</doc>
<status status="PASS" start="2026-05-25T01:52:15.436131" elapsed="0.033572"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check For Elements At URI</arg>
<arg>${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>${node_list}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:15.430045" elapsed="0.039708"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:15.476249" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Cookie': 'JSESSIONID=node0xe1q6vcm1nfeayohkx01b6g1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:15.476466" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3294'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:52:15.476618" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:15.469888" elapsed="0.006757"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.479363" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:15.476792" elapsed="0.002669"/>
</kw>
<doc>Get RESTCONF Topology and validate the result.</doc>
<status status="PASS" start="2026-05-25T01:52:15.429579" elapsed="0.050038"/>
</test>
<test id="s1-s1-s2-t2" name="List all the links" line="31">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.481343" level="INFO">${body1} = {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:2'}</msg>
<var>${body1}</var>
<arg>dest-node=openflow:1</arg>
<arg>dest-tp=openflow:1:2</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:15.480667" elapsed="0.000716"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.482039" level="INFO">${body2} = {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}</msg>
<var>${body2}</var>
<arg>source-node=openflow:3</arg>
<arg>source-tp=openflow:3:3</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:15.481604" elapsed="0.000494"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.482868" level="INFO">${link2} = {'link-id': 'openflow:3:3', 'destination': {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:2'}, 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}}</msg>
<var>${link2}</var>
<arg>link-id=openflow:3:3</arg>
<arg>destination=${body1}</arg>
<arg>source=${body2}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:15.482310" elapsed="0.000596"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.483582" level="INFO">${link2} = {'link-id': 'openflow:3:3', 'destination': {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:2'}, 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}}</msg>
<arg>${link2}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:15.483144" elapsed="0.000497"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.484285" level="INFO">${body1} = {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:1'}</msg>
<var>${body1}</var>
<arg>dest-node=openflow:1</arg>
<arg>dest-tp=openflow:1:1</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:15.483841" elapsed="0.000480"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.485116" level="INFO">${body2} = {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}</msg>
<var>${body2}</var>
<arg>source-node=openflow:2</arg>
<arg>source-tp=openflow:2:3</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:15.484525" elapsed="0.000681"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.486710" level="INFO">${link1} = {'link-id': 'openflow:2:3', 'destination': {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:1'}, 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}}</msg>
<var>${link1}</var>
<arg>link-id=openflow:2:3</arg>
<arg>destination=${body1}</arg>
<arg>source=${body2}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:15.485607" elapsed="0.001167"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.487862" level="INFO">${link1} = {'link-id': 'openflow:2:3', 'destination': {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:1'}, 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}}</msg>
<arg>${link1}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:15.487157" elapsed="0.000823"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.489168" level="INFO">${body1} = {'dest-node': 'openflow:3', 'dest-tp': 'openflow:3:3'}</msg>
<var>${body1}</var>
<arg>dest-node=openflow:3</arg>
<arg>dest-tp=openflow:3:3</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:15.488383" elapsed="0.000845"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.490112" level="INFO">${body2} = {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}</msg>
<var>${body2}</var>
<arg>source-node=openflow:1</arg>
<arg>source-tp=openflow:1:2</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:15.489601" elapsed="0.000554"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.490970" level="INFO">${link4} = {'link-id': 'openflow:1:2', 'destination': {'dest-node': 'openflow:3', 'dest-tp': 'openflow:3:3'}, 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}}</msg>
<var>${link4}</var>
<arg>link-id=openflow:1:2</arg>
<arg>destination=${body1}</arg>
<arg>source=${body2}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:15.490379" elapsed="0.000631"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.491743" level="INFO">${link4} = {'link-id': 'openflow:1:2', 'destination': {'dest-node': 'openflow:3', 'dest-tp': 'openflow:3:3'}, 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}}</msg>
<arg>${link4}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:15.491279" elapsed="0.000527"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.492531" level="INFO">${body1} = {'dest-node': 'openflow:2', 'dest-tp': 'openflow:2:3'}</msg>
<var>${body1}</var>
<arg>dest-node=openflow:2</arg>
<arg>dest-tp=openflow:2:3</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:15.492017" elapsed="0.000555"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.493336" level="INFO">${body2} = {'source-node': 'openflow:1', 'source-tp': 'openflow:1:1'}</msg>
<var>${body2}</var>
<arg>source-node=openflow:1</arg>
<arg>source-tp=openflow:1:1</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:15.492792" elapsed="0.000585"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.494246" level="INFO">${link3} = {'link-id': 'openflow:1:1', 'destination': {'dest-node': 'openflow:2', 'dest-tp': 'openflow:2:3'}, 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:1'}}</msg>
<var>${link3}</var>
<arg>link-id=openflow:1:1</arg>
<arg>destination=${body1}</arg>
<arg>source=${body2}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:15.493605" elapsed="0.000685"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.494983" level="INFO">${link3} = {'link-id': 'openflow:1:1', 'destination': {'dest-node': 'openflow:2', 'dest-tp': 'openflow:2:3'}, 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:1'}}</msg>
<arg>${link3}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:15.494519" elapsed="0.000527"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.495865" level="INFO">${links} = [{'link-id': 'openflow:2:3', 'destination': {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:1'}, 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}}, {'link-id': 'openflow:3:3', '...</msg>
<var>${links}</var>
<arg>${link1}</arg>
<arg>${link2}</arg>
<arg>${link3}</arg>
<arg>${link4}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:52:15.495274" elapsed="0.000636"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Verify Links">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:15.508141" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology/topology=flow%3A1?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology/topology=flow%3A1?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Cookie': 'JSESSIONID=node0xe1q6vcm1nfeayohkx01b6g1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:15.511279" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology/topology=flow%3A1?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3128'} 
 body={"network-topology:topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]}]} 
 </msg>
<msg time="2026-05-25T01:52:15.511576" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_FLOW1_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:15.497883" elapsed="0.013751"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.517173" level="INFO">{"network-topology:topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:15.512031" elapsed="0.005302"/>
</kw>
<kw name="Json Parse From String" owner="Utils">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.520371" level="INFO">${json_data} = {'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connecto...</msg>
<var>${json_data}</var>
<arg>json.loads('''${plain_string_with_json}''')</arg>
<arg>json</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:52:15.519861" elapsed="0.000539"/>
</kw>
<return>
<value>${json_data}</value>
<status status="PASS" start="2026-05-25T01:52:15.520461" elapsed="0.000049"/>
</return>
<msg time="2026-05-25T01:52:15.520686" level="INFO">${result} = {'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connecto...</msg>
<var>${result}</var>
<arg>${resp.text}</arg>
<doc>Parse given plain string into json (dictionary)</doc>
<status status="PASS" start="2026-05-25T01:52:15.517774" elapsed="0.002939"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.521190" level="INFO">{'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"}, {'tp-id': 'openflow:2:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"}, {'tp-id': 'openflow:2:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"}, {'tp-id': 'openflow:2:3', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']"}, {'node-id': 'openflow:3', 'termination-point': [{'tp-id': 'openflow:3:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}, {'tp-id': 'openflow:3:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"}, {'tp-id': 'openflow:3:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"}, {'tp-id': 'openflow:3:3', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']"}, {'node-id': 'openflow:1', 'termination-point': [{'tp-id': 'openflow:1:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"}, {'tp-id': 'openflow:1:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"}, {'tp-id': 'openflow:1:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']"}], 'link': [{'link-id': 'openflow:2:3', 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}, 'destination': {'dest-tp': 'openflow:1:1', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:3:3', 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}, 'destination': {'dest-tp': 'openflow:1:2', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:1:1', 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:1'}, 'destination': {'dest-tp': 'openflow:2:3', 'dest-node': 'openflow:2'}}, {'link-id': 'openflow:1:2', 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}, 'destination': {'dest-tp': 'openflow:3:3', 'dest-node': 'openflow:3'}}]}]}</msg>
<arg>${result}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:15.520849" elapsed="0.000418"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:52:15.521680" level="INFO">${content} = [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-invento...</msg>
<var>${content}</var>
<arg>${result}</arg>
<arg>network-topology:topology</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:52:15.521445" elapsed="0.000264"/>
</kw>
<kw name="Get From List" owner="Collections">
<msg time="2026-05-25T01:52:15.522100" level="INFO">${topology} = {'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventor...</msg>
<var>${topology}</var>
<arg>${content}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="PASS" start="2026-05-25T01:52:15.521851" elapsed="0.000278"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:52:15.522466" level="INFO">${links} = [{'link-id': 'openflow:2:3', 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}, 'destination': {'dest-tp': 'openflow:1:1', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:3:3', '...</msg>
<var>${links}</var>
<arg>${topology}</arg>
<arg>link</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:52:15.522270" elapsed="0.000223"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${links}</arg>
<arg>${expected_link}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:15.522830" elapsed="0.000347"/>
</kw>
<var name="${expected_link}">{'link-id': 'openflow:2:3', 'destination': {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:1'}, 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}}</var>
<status status="PASS" start="2026-05-25T01:52:15.522713" elapsed="0.000504"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${links}</arg>
<arg>${expected_link}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:15.523427" elapsed="0.000311"/>
</kw>
<var name="${expected_link}">{'link-id': 'openflow:3:3', 'destination': {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:2'}, 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}}</var>
<status status="PASS" start="2026-05-25T01:52:15.523311" elapsed="0.000466"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${links}</arg>
<arg>${expected_link}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:15.523979" elapsed="0.000326"/>
</kw>
<var name="${expected_link}">{'link-id': 'openflow:1:1', 'destination': {'dest-node': 'openflow:2', 'dest-tp': 'openflow:2:3'}, 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:1'}}</var>
<status status="PASS" start="2026-05-25T01:52:15.523865" elapsed="0.000479"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${links}</arg>
<arg>${expected_link}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:15.524545" elapsed="0.000305"/>
</kw>
<var name="${expected_link}">{'link-id': 'openflow:1:2', 'destination': {'dest-node': 'openflow:3', 'dest-tp': 'openflow:3:3'}, 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}}</var>
<status status="PASS" start="2026-05-25T01:52:15.524432" elapsed="0.000456"/>
</iter>
<var>${expected_link}</var>
<value>@{expected_links}</value>
<status status="PASS" start="2026-05-25T01:52:15.522557" elapsed="0.002361"/>
</for>
<arg>${links}</arg>
<status status="PASS" start="2026-05-25T01:52:15.497411" elapsed="0.027597"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Verify Links</arg>
<arg>${links}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:15.496171" elapsed="0.028884"/>
</kw>
<doc>List all the links in the topology.</doc>
<status status="PASS" start="2026-05-25T01:52:15.480017" elapsed="0.045180"/>
</test>
<test id="s1-s1-s2-t3" name="Link Down" line="52">
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:52:15.527325" level="INFO">link s1 s2 down</msg>
<arg>link s1 s2 down</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:52:15.525875" elapsed="0.001506"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:52:15.534311" level="INFO">mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:52:15.527520" elapsed="0.006847"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.534959" level="INFO">${links} = [{'link-id': 'openflow:3:3', 'destination': {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:2'}, 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}}, {'link-id': 'openflow:1:2', '...</msg>
<var>${links}</var>
<arg>${link2}</arg>
<arg>${link4}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:52:15.534533" elapsed="0.000463"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Verify Links">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:15.544765" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology/topology=flow%3A1?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology/topology=flow%3A1?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Cookie': 'JSESSIONID=node0xe1q6vcm1nfeayohkx01b6g1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:15.545000" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology/topology=flow%3A1?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3128'} 
 body={"network-topology:topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]}]} 
 </msg>
<msg time="2026-05-25T01:52:15.545197" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_FLOW1_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:15.536196" elapsed="0.009030"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.548448" level="INFO">{"network-topology:topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:15.545374" elapsed="0.003170"/>
</kw>
<kw name="Json Parse From String" owner="Utils">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.552463" level="INFO">${json_data} = {'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connecto...</msg>
<var>${json_data}</var>
<arg>json.loads('''${plain_string_with_json}''')</arg>
<arg>json</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:52:15.551789" elapsed="0.000715"/>
</kw>
<return>
<value>${json_data}</value>
<status status="PASS" start="2026-05-25T01:52:15.552576" elapsed="0.000043"/>
</return>
<msg time="2026-05-25T01:52:15.552851" level="INFO">${result} = {'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connecto...</msg>
<var>${result}</var>
<arg>${resp.text}</arg>
<doc>Parse given plain string into json (dictionary)</doc>
<status status="PASS" start="2026-05-25T01:52:15.548806" elapsed="0.004083"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.553537" level="INFO">{'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"}, {'tp-id': 'openflow:2:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"}, {'tp-id': 'openflow:2:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"}, {'tp-id': 'openflow:2:3', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']"}, {'node-id': 'openflow:3', 'termination-point': [{'tp-id': 'openflow:3:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}, {'tp-id': 'openflow:3:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"}, {'tp-id': 'openflow:3:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"}, {'tp-id': 'openflow:3:3', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']"}, {'node-id': 'openflow:1', 'termination-point': [{'tp-id': 'openflow:1:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"}, {'tp-id': 'openflow:1:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"}, {'tp-id': 'openflow:1:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']"}], 'link': [{'link-id': 'openflow:2:3', 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}, 'destination': {'dest-tp': 'openflow:1:1', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:3:3', 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}, 'destination': {'dest-tp': 'openflow:1:2', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:1:1', 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:1'}, 'destination': {'dest-tp': 'openflow:2:3', 'dest-node': 'openflow:2'}}, {'link-id': 'openflow:1:2', 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}, 'destination': {'dest-tp': 'openflow:3:3', 'dest-node': 'openflow:3'}}]}]}</msg>
<arg>${result}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:15.553131" elapsed="0.000546"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:52:15.554056" level="INFO">${content} = [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-invento...</msg>
<var>${content}</var>
<arg>${result}</arg>
<arg>network-topology:topology</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:52:15.553836" elapsed="0.000262"/>
</kw>
<kw name="Get From List" owner="Collections">
<msg time="2026-05-25T01:52:15.554458" level="INFO">${topology} = {'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventor...</msg>
<var>${topology}</var>
<arg>${content}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="PASS" start="2026-05-25T01:52:15.554238" elapsed="0.000247"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:52:15.554811" level="INFO">${links} = [{'link-id': 'openflow:2:3', 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}, 'destination': {'dest-tp': 'openflow:1:1', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:3:3', '...</msg>
<var>${links}</var>
<arg>${topology}</arg>
<arg>link</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:52:15.554622" elapsed="0.000215"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${links}</arg>
<arg>${expected_link}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:15.555160" elapsed="0.000320"/>
</kw>
<var name="${expected_link}">{'link-id': 'openflow:3:3', 'destination': {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:2'}, 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}}</var>
<status status="PASS" start="2026-05-25T01:52:15.555031" elapsed="0.000488"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${links}</arg>
<arg>${expected_link}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:15.555723" elapsed="0.000309"/>
</kw>
<var name="${expected_link}">{'link-id': 'openflow:1:2', 'destination': {'dest-node': 'openflow:3', 'dest-tp': 'openflow:3:3'}, 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}}</var>
<status status="PASS" start="2026-05-25T01:52:15.555608" elapsed="0.000478"/>
</iter>
<var>${expected_link}</var>
<value>@{expected_links}</value>
<status status="PASS" start="2026-05-25T01:52:15.554891" elapsed="0.001227"/>
</for>
<arg>${links}</arg>
<status status="PASS" start="2026-05-25T01:52:15.535831" elapsed="0.020340"/>
</kw>
<arg>60s</arg>
<arg>2s</arg>
<arg>Verify Links</arg>
<arg>${links}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:15.535213" elapsed="0.020999"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:52:15.557846" level="INFO">sh ovs-vsctl find Interface name="s1-eth1"</msg>
<arg>sh ovs-vsctl find Interface name="s1-eth1"</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:52:15.556344" elapsed="0.001558"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:52:15.580790" level="INFO">_uuid               : a55af319-1f61-404f-9545-70ccd45d72be
admin_state         : down
bfd                 : {}
bfd_status          : {}
cfm_fault           : []
cfm_fault_status    : []
cfm_flap_count      : []
cfm_health          : []
cfm_mpid            : []
cfm_remote_mpids    : []
cfm_remote_opstate  : []
duplex              : full
error               : []
external_ids        : {}
ifindex             : 4
ingress_policing_burst: 0
ingress_policing_kpkts_burst: 0
ingress_policing_kpkts_rate: 0
ingress_policing_rate: 0
lacp_current        : []
link_resets         : 5
link_speed          : 10000000000
link_state          : down
lldp                : {}
mac                 : []
mac_in_use          : "ca:de:10:89:22:af"
mtu                 : 1500
mtu_request         : []
name                : s1-eth1
ofport              : 1
ofport_request      : 1
options             : {}
other_config        : {}
statistics          : {collisions=0, rx_bytes=90, rx_crc_err=0, rx_dropped=0, rx_errors=0, rx_frame_err=0, rx_missed_errors=0, rx_multicast_packets=0, rx_over_err=0, rx_packets=1, tx_bytes=90, tx_dropped=0, tx_errors=0, tx_packets=1}
status              : {driver_name=veth, driver_version="1.0", firmware_version=""}
type                : ""
mininet&gt;</msg>
<msg time="2026-05-25T01:52:15.580896" level="INFO">${output} = _uuid               : a55af319-1f61-404f-9545-70ccd45d72be
admin_state         : down
bfd                 : {}
bfd_status          : {}
cfm_fault           : []
cfm_fault_status    : []
cfm_flap...</msg>
<var>${output}</var>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:52:15.558042" elapsed="0.022881"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.581376" level="INFO">_uuid               : a55af319-1f61-404f-9545-70ccd45d72be
admin_state         : down
bfd                 : {}
bfd_status          : {}
cfm_fault           : []
cfm_fault_status    : []
cfm_flap_count      : []
cfm_health          : []
cfm_mpid            : []
cfm_remote_mpids    : []
cfm_remote_opstate  : []
duplex              : full
error               : []
external_ids        : {}
ifindex             : 4
ingress_policing_burst: 0
ingress_policing_kpkts_burst: 0
ingress_policing_kpkts_rate: 0
ingress_policing_rate: 0
lacp_current        : []
link_resets         : 5
link_speed          : 10000000000
link_state          : down
lldp                : {}
mac                 : []
mac_in_use          : "ca:de:10:89:22:af"
mtu                 : 1500
mtu_request         : []
name                : s1-eth1
ofport              : 1
ofport_request      : 1
options             : {}
other_config        : {}
statistics          : {collisions=0, rx_bytes=90, rx_crc_err=0, rx_dropped=0, rx_errors=0, rx_frame_err=0, rx_missed_errors=0, rx_multicast_packets=0, rx_over_err=0, rx_packets=1, tx_bytes=90, tx_dropped=0, tx_errors=0, tx_packets=1}
status              : {driver_name=veth, driver_version="1.0", firmware_version=""}
type                : ""
mininet&gt;</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:15.581102" elapsed="0.000333"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:52:15.583185" level="INFO">sh ovs-vsctl find Interface name="s1-eth2"</msg>
<arg>sh ovs-vsctl find Interface name="s1-eth2"</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:52:15.581567" elapsed="0.001672"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:52:15.607492" level="INFO">_uuid               : 6c0be102-eb1e-4c2b-8087-24d04eb4ba8d
admin_state         : up
bfd                 : {}
bfd_status          : {}
cfm_fault           : []
cfm_fault_status    : []
cfm_flap_count      : []
cfm_health          : []
cfm_mpid            : []
cfm_remote_mpids    : []
cfm_remote_opstate  : []
duplex              : full
error               : []
external_ids        : {}
ifindex             : 6
ingress_policing_burst: 0
ingress_policing_kpkts_burst: 0
ingress_policing_kpkts_rate: 0
ingress_policing_rate: 0
lacp_current        : []
link_resets         : 0
link_speed          : 10000000000
link_state          : up
lldp                : {}
mac                 : []
mac_in_use          : "96:65:17:8b:f9:14"
mtu                 : 1500
mtu_request         : []
name                : s1-eth2
ofport              : 2
ofport_request      : 2
options             : {}
other_config        : {}
statistics          : {collisions=0, rx_bytes=90, rx_crc_err=0, rx_dropped=0, rx_errors=0, rx_frame_err=0, rx_missed_errors=0, rx_multicast_packets=0, rx_over_err=0, rx_packets=1, tx_bytes=90, tx_dropped=0, tx_errors=0, tx_packets=1}
status              : {driver_name=veth, driver_version="1.0", firmware_version=""}
type                : ""
mininet&gt;</msg>
<msg time="2026-05-25T01:52:15.607628" level="INFO">${output} = _uuid               : 6c0be102-eb1e-4c2b-8087-24d04eb4ba8d
admin_state         : up
bfd                 : {}
bfd_status          : {}
cfm_fault           : []
cfm_fault_status    : []
cfm_flap_c...</msg>
<var>${output}</var>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:52:15.583378" elapsed="0.024279"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.608044" level="INFO">_uuid               : 6c0be102-eb1e-4c2b-8087-24d04eb4ba8d
admin_state         : up
bfd                 : {}
bfd_status          : {}
cfm_fault           : []
cfm_fault_status    : []
cfm_flap_count      : []
cfm_health          : []
cfm_mpid            : []
cfm_remote_mpids    : []
cfm_remote_opstate  : []
duplex              : full
error               : []
external_ids        : {}
ifindex             : 6
ingress_policing_burst: 0
ingress_policing_kpkts_burst: 0
ingress_policing_kpkts_rate: 0
ingress_policing_rate: 0
lacp_current        : []
link_resets         : 0
link_speed          : 10000000000
link_state          : up
lldp                : {}
mac                 : []
mac_in_use          : "96:65:17:8b:f9:14"
mtu                 : 1500
mtu_request         : []
name                : s1-eth2
ofport              : 2
ofport_request      : 2
options             : {}
other_config        : {}
statistics          : {collisions=0, rx_bytes=90, rx_crc_err=0, rx_dropped=0, rx_errors=0, rx_frame_err=0, rx_missed_errors=0, rx_multicast_packets=0, rx_over_err=0, rx_packets=1, tx_bytes=90, tx_dropped=0, tx_errors=0, tx_packets=1}
status              : {driver_name=veth, driver_version="1.0", firmware_version=""}
type                : ""
mininet&gt;</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:15.607797" elapsed="0.000325"/>
</kw>
<doc>Take link s1-s2 down</doc>
<status status="PASS" start="2026-05-25T01:52:15.525487" elapsed="0.082743"/>
</test>
<test id="s1-s1-s2-t4" name="Link Up" line="69">
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:52:15.610141" level="INFO">link s1 s2 up</msg>
<arg>link s1 s2 up</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:52:15.608852" elapsed="0.001346"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:52:15.622309" level="INFO">mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:52:15.610335" elapsed="0.012032"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.622905" level="INFO">${links} = [{'link-id': 'openflow:2:3', 'destination': {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:1'}, 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}}, {'link-id': 'openflow:3:3', '...</msg>
<var>${links}</var>
<arg>${link1}</arg>
<arg>${link2}</arg>
<arg>${link3}</arg>
<arg>${link4}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:52:15.622508" elapsed="0.000424"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Verify Links">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:15.630795" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology/topology=flow%3A1?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology/topology=flow%3A1?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Cookie': 'JSESSIONID=node0xe1q6vcm1nfeayohkx01b6g1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:15.632296" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology/topology=flow%3A1?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '2812'} 
 body={"network-topology:topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]}]} 
 </msg>
<msg time="2026-05-25T01:52:15.632438" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_FLOW1_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:15.623885" elapsed="0.008583"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.635449" level="INFO">{"network-topology:topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:15.632633" elapsed="0.002959"/>
</kw>
<kw name="Json Parse From String" owner="Utils">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.639407" level="INFO">${json_data} = {'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connecto...</msg>
<var>${json_data}</var>
<arg>json.loads('''${plain_string_with_json}''')</arg>
<arg>json</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:52:15.638756" elapsed="0.000691"/>
</kw>
<return>
<value>${json_data}</value>
<status status="PASS" start="2026-05-25T01:52:15.639518" elapsed="0.000044"/>
</return>
<msg time="2026-05-25T01:52:15.639786" level="INFO">${result} = {'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connecto...</msg>
<var>${result}</var>
<arg>${resp.text}</arg>
<doc>Parse given plain string into json (dictionary)</doc>
<status status="PASS" start="2026-05-25T01:52:15.635859" elapsed="0.003964"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.640423" level="INFO">{'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"}, {'tp-id': 'openflow:2:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"}, {'tp-id': 'openflow:2:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"}, {'tp-id': 'openflow:2:3', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']"}, {'node-id': 'openflow:3', 'termination-point': [{'tp-id': 'openflow:3:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}, {'tp-id': 'openflow:3:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"}, {'tp-id': 'openflow:3:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"}, {'tp-id': 'openflow:3:3', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']"}, {'node-id': 'openflow:1', 'termination-point': [{'tp-id': 'openflow:1:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"}, {'tp-id': 'openflow:1:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"}, {'tp-id': 'openflow:1:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']"}], 'link': [{'link-id': 'openflow:3:3', 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}, 'destination': {'dest-tp': 'openflow:1:2', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:1:2', 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}, 'destination': {'dest-tp': 'openflow:3:3', 'dest-node': 'openflow:3'}}]}]}</msg>
<arg>${result}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:15.640012" elapsed="0.000501"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:52:15.640993" level="INFO">${content} = [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-invento...</msg>
<var>${content}</var>
<arg>${result}</arg>
<arg>network-topology:topology</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:52:15.640702" elapsed="0.000329"/>
</kw>
<kw name="Get From List" owner="Collections">
<msg time="2026-05-25T01:52:15.641580" level="INFO">${topology} = {'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventor...</msg>
<var>${topology}</var>
<arg>${content}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="PASS" start="2026-05-25T01:52:15.641276" elapsed="0.000349"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:52:15.641988" level="INFO">${links} = [{'link-id': 'openflow:3:3', 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}, 'destination': {'dest-tp': 'openflow:1:2', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:1:2', '...</msg>
<var>${links}</var>
<arg>${topology}</arg>
<arg>link</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:52:15.641808" elapsed="0.000207"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-05-25T01:52:15.642730" level="FAIL">'[{'link-id': 'openflow:3:3', 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}, 'destination': {'dest-tp': 'openflow:1:2', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:1:2', 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}, 'destination': {'dest-tp': 'openflow:3:3', 'dest-node': 'openflow:3'}}]' does not contain '{'link-id': 'openflow:2:3', 'destination': {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:1'}, 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}}'</msg>
<arg>${links}</arg>
<arg>${expected_link}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="FAIL" start="2026-05-25T01:52:15.642342" elapsed="0.000484">'[{'link-id': 'openflow:3:3', 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}, 'destination': {'dest-tp': 'openflow:1:2', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:1:2', 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}, 'destination': {'dest-tp': 'openflow:3:3', 'dest-node': 'openflow:3'}}]' does not contain '{'link-id': 'openflow:2:3', 'destination': {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:1'}, 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}}'</status>
</kw>
<var name="${expected_link}">{'link-id': 'openflow:2:3', 'destination': {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:1'}, 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}}</var>
<status status="FAIL" start="2026-05-25T01:52:15.642227" elapsed="0.000677">'[{'link-id': 'openflow:3:3', 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}, 'destination': {'dest-tp': 'openflow:1:2', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:1:2', 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}, 'destination': {'dest-tp': 'openflow:3:3', 'dest-node': 'openflow:3'}}]' does not contain '{'link-id': 'openflow:2:3', 'destination': {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:1'}, 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}}'</status>
</iter>
<var>${expected_link}</var>
<value>@{expected_links}</value>
<status status="FAIL" start="2026-05-25T01:52:15.642083" elapsed="0.000914">'[{'link-id': 'openflow:3:3', 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}, 'destination': {'dest-tp': 'openflow:1:2', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:1:2', 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}, 'destination': {'dest-tp': 'openflow:3:3', 'dest-node': 'openflow:3'}}]' does not contain '{'link-id': 'openflow:2:3', 'destination': {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:1'}, 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}}'</status>
</for>
<arg>${links}</arg>
<status status="FAIL" start="2026-05-25T01:52:15.623590" elapsed="0.019531">'[{'link-id': 'openflow:3:3', 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}, 'destination': {'dest-tp': 'openflow:1:2', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:1:2', 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}, 'destination': {'dest-tp': 'openflow:3:3', 'dest-node': 'openflow:3'}}]' does not contain '{'link-id': 'openflow:2:3', 'destination': {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:1'}, 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}}'</status>
</kw>
<kw name="Verify Links">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:17.654631" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology/topology=flow%3A1?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology/topology=flow%3A1?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Cookie': 'JSESSIONID=node0xe1q6vcm1nfeayohkx01b6g1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:17.655003" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology/topology=flow%3A1?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3128'} 
 body={"network-topology:topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]}]} 
 </msg>
<msg time="2026-05-25T01:52:17.655230" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_FLOW1_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:17.644980" elapsed="0.010290"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:17.658513" level="INFO">{"network-topology:topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:17.655528" elapsed="0.003147"/>
</kw>
<kw name="Json Parse From String" owner="Utils">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:52:17.662653" level="INFO">${json_data} = {'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connecto...</msg>
<var>${json_data}</var>
<arg>json.loads('''${plain_string_with_json}''')</arg>
<arg>json</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:52:17.661934" elapsed="0.000760"/>
</kw>
<return>
<value>${json_data}</value>
<status status="PASS" start="2026-05-25T01:52:17.662772" elapsed="0.000055"/>
</return>
<msg time="2026-05-25T01:52:17.663148" level="INFO">${result} = {'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connecto...</msg>
<var>${result}</var>
<arg>${resp.text}</arg>
<doc>Parse given plain string into json (dictionary)</doc>
<status status="PASS" start="2026-05-25T01:52:17.658958" elapsed="0.004237"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:17.663803" level="INFO">{'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"}, {'tp-id': 'openflow:2:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"}, {'tp-id': 'openflow:2:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"}, {'tp-id': 'openflow:2:3', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']"}, {'node-id': 'openflow:3', 'termination-point': [{'tp-id': 'openflow:3:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}, {'tp-id': 'openflow:3:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"}, {'tp-id': 'openflow:3:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"}, {'tp-id': 'openflow:3:3', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']"}, {'node-id': 'openflow:1', 'termination-point': [{'tp-id': 'openflow:1:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"}, {'tp-id': 'openflow:1:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"}, {'tp-id': 'openflow:1:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']"}], 'link': [{'link-id': 'openflow:2:3', 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}, 'destination': {'dest-tp': 'openflow:1:1', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:3:3', 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}, 'destination': {'dest-tp': 'openflow:1:2', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:1:1', 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:1'}, 'destination': {'dest-tp': 'openflow:2:3', 'dest-node': 'openflow:2'}}, {'link-id': 'openflow:1:2', 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}, 'destination': {'dest-tp': 'openflow:3:3', 'dest-node': 'openflow:3'}}]}]}</msg>
<arg>${result}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:17.663395" elapsed="0.000503"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:52:17.664426" level="INFO">${content} = [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-invento...</msg>
<var>${content}</var>
<arg>${result}</arg>
<arg>network-topology:topology</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:52:17.664113" elapsed="0.000351"/>
</kw>
<kw name="Get From List" owner="Collections">
<msg time="2026-05-25T01:52:17.664990" level="INFO">${topology} = {'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventor...</msg>
<var>${topology}</var>
<arg>${content}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="PASS" start="2026-05-25T01:52:17.664661" elapsed="0.000367"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:52:17.665516" level="INFO">${links} = [{'link-id': 'openflow:2:3', 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}, 'destination': {'dest-tp': 'openflow:1:1', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:3:3', '...</msg>
<var>${links}</var>
<arg>${topology}</arg>
<arg>link</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:52:17.665246" elapsed="0.000308"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${links}</arg>
<arg>${expected_link}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:17.666019" elapsed="0.000510"/>
</kw>
<var name="${expected_link}">{'link-id': 'openflow:2:3', 'destination': {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:1'}, 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}}</var>
<status status="PASS" start="2026-05-25T01:52:17.665852" elapsed="0.000735"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${links}</arg>
<arg>${expected_link}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:17.666884" elapsed="0.000533"/>
</kw>
<var name="${expected_link}">{'link-id': 'openflow:3:3', 'destination': {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:2'}, 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}}</var>
<status status="PASS" start="2026-05-25T01:52:17.666719" elapsed="0.000756"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${links}</arg>
<arg>${expected_link}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:17.667794" elapsed="0.000341"/>
</kw>
<var name="${expected_link}">{'link-id': 'openflow:1:1', 'destination': {'dest-node': 'openflow:2', 'dest-tp': 'openflow:2:3'}, 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:1'}}</var>
<status status="PASS" start="2026-05-25T01:52:17.667613" elapsed="0.000563"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${links}</arg>
<arg>${expected_link}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:17.668420" elapsed="0.000322"/>
</kw>
<var name="${expected_link}">{'link-id': 'openflow:1:2', 'destination': {'dest-node': 'openflow:3', 'dest-tp': 'openflow:3:3'}, 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}}</var>
<status status="PASS" start="2026-05-25T01:52:17.668301" elapsed="0.000482"/>
</iter>
<var>${expected_link}</var>
<value>@{expected_links}</value>
<status status="PASS" start="2026-05-25T01:52:17.665640" elapsed="0.003174"/>
</for>
<arg>${links}</arg>
<status status="PASS" start="2026-05-25T01:52:17.644002" elapsed="0.024869"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Verify Links</arg>
<arg>${links}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:15.623106" elapsed="2.045812"/>
</kw>
<doc>Take link s1-s2 up</doc>
<status status="PASS" start="2026-05-25T01:52:15.608483" elapsed="2.060565"/>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-05-25T01:52:17.669726" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-05-25T01:52:17.669633" elapsed="0.000170"/>
</kw>
<doc>Test suite for RESTCONF Topology</doc>
<status status="PASS" start="2026-05-25T01:52:15.398906" elapsed="2.270931"/>
</suite>
<suite id="s1-s1-s3" name="030 Restconf Statistics" source="/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/MD_SAL_NSF_OF10/030_restconf_statistics.robot">
<kw name="Create Session" owner="RequestsLibrary" type="SETUP">
<msg time="2026-05-25T01:52:17.701469" level="INFO">Creating Session using : alias=session, url=http://10.30.170.200:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7f5ace95dbd0&gt;, timeout=None, proxies=None, verify=False,                     debug=0 </msg>
<arg>session</arg>
<arg>http://${ODL_SYSTEM_IP}:${RESTCONFPORT}</arg>
<arg>auth=${AUTH}</arg>
<arg>headers=${HEADERS_XML}</arg>
<doc>Create Session: create a HTTP session to a server</doc>
<status status="PASS" start="2026-05-25T01:52:17.701125" elapsed="0.000516"/>
</kw>
<test id="s1-s1-s3-t1" name="Get Stats for all nodes" line="20">
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:17.731254" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:17.734837" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node0z59538vn07gm7ueabx7bmwjz2.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 24-May-2026 01:52:17 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":44994,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-3","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"10","byte-count":"835","duration":{"second":2,"nanosecond":965000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"16","active-flows":1,"packets-matched":"10"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"i... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:17.735409" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:17.708750" elapsed="0.026722"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:17.736446" elapsed="0.000061"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:17.735692" elapsed="0.000889"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:17.740902" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":44994,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-3","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"10","byte-count":"835","duration":{"second":2,"nanosecond":965000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"16","active-flows":1,"packets-matched":"10"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s3","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:52:15.101Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"86:6b:7e:aa:d8:45","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"7","received":"7"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":3,"nanosecond":734000000},"bytes":{"transmitted":"601","received":"601"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"da:1d:b1:57:7a:e9","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"7","received":"6"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":3,"nanosecond":734000000},"bytes":{"transmitted":"601","received":"516"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"0a:2b:56:c8:58:06","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"7","received":"6"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":3,"nanosecond":734000000},"bytes":{"transmitted":"601","received":"516"},"receive-crc-error":"0"}},{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"7a:d5:cc:c3:a5:4b","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":3,"nanosecond":720000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:52:15.206Z"}},{"id":"openflow:1","flow-node-inventory:port-number":44982,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-2","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"7","byte-count":"596","duration":{"second":2,"nanosecond":959000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"9","active-flows":1,"packets-matched":"7"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s1","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:52:15.103Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:maximum-speed":0,"flow-node-inventory:reason":"update","flow-node-inventory:configuration":"","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ca:de:10:89:22:af","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:supported":"","flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"b6:47:67:c4:b9:4f","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":3,"nanosecond":707000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"96:65:17:8b:f9:14","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"7","received":"7"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":3,"nanosecond":721000000},"bytes":{"transmitted":"601","received":"601"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:52:15.189Z"}},{"id":"openflow:2","flow-node-inventory:port-number":44998,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-1","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"11","byte-count":"921","duration":{"second":3,"nanosecond":25000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"14","active-flows":1,"packets-matched":"11"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s2","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:52:15.103Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:maximum-speed":0,"flow-node-inventory:reason":"update","flow-node-inventory:configuration":"","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"92:c7:a2:53:70:de","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:supported":"","flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"36:78:85:37:b2:45","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":3,"nanosecond":690000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"42:fe:c9:be:4b:45","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"7","received":"6"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":3,"nanosecond":695000000},"bytes":{"transmitted":"601","received":"516"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"52:4e:9b:23:8b:73","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"7","received":"6"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":3,"nanosecond":694000000},"bytes":{"transmitted":"601","received":"516"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:52:15.202Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:17.736925" elapsed="0.004977"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:17.736638" elapsed="0.005302"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:17.735636" elapsed="0.006327"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:17.742103" elapsed="0.000178"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:17.742621" elapsed="0.002402"/>
</kw>
<var name="${i}">openflow:1</var>
<status status="PASS" start="2026-05-25T01:52:17.742492" elapsed="0.002587"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:17.745284" elapsed="0.002351"/>
</kw>
<var name="${i}">openflow:2</var>
<status status="PASS" start="2026-05-25T01:52:17.745167" elapsed="0.002509"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:17.747875" elapsed="0.002307"/>
</kw>
<var name="${i}">openflow:3</var>
<status status="PASS" start="2026-05-25T01:52:17.747758" elapsed="0.002465"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-05-25T01:52:17.742347" elapsed="0.007905"/>
</for>
<arg>${RFC8040_OPERATIONAL_NODES_API}</arg>
<arg>${node_list}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
${elements} is verified to exist in the response</doc>
<status status="PASS" start="2026-05-25T01:52:17.708322" elapsed="0.041991"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check For Elements At URI</arg>
<arg>${RFC8040_OPERATIONAL_NODES_API}</arg>
<arg>${node_list}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:17.702170" elapsed="0.048197"/>
</kw>
<doc>Get the stats for all nodes</doc>
<status status="PASS" start="2026-05-25T01:52:17.701715" elapsed="0.048782"/>
</test>
<test id="s1-s1-s3-t2" name="Get Stats for node 1" line="29">
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Nodes Stats" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:17.768467" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0z59538vn07gm7ueabx7bmwjz2.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:17.771939" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":44982,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-2","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"7","byte-count":"596","duration":{"second":2,"nanosecond":959000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"9","active-flows":1,"packets-matched":"7"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opend... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:17.772264" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${RFC8040_NODES_API}/node=${node}</arg>
<arg>params=${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:17.754612" elapsed="0.017691"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>flow-capable-node-connector-statistics</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:17.772529" elapsed="0.003173"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>flow-table-statistics</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:17.775903" elapsed="0.003132"/>
</kw>
<arg>openflow%3A1</arg>
<doc>A GET on the /node/${node} API is made and specific flow stat
strings are checked for existence.</doc>
<status status="PASS" start="2026-05-25T01:52:17.754268" elapsed="0.024905"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check Nodes Stats</arg>
<arg>openflow%3A1</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:17.751230" elapsed="0.028012"/>
</kw>
<doc>Get the stats for a node</doc>
<status status="PASS" start="2026-05-25T01:52:17.750774" elapsed="0.028619"/>
</test>
<test id="s1-s1-s3-t3" name="Get Stats for node 2" line="33">
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Nodes Stats" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:17.798773" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A2?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0z59538vn07gm7ueabx7bmwjz2.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:17.802301" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:node":[{"id":"openflow:2","flow-node-inventory:port-number":44998,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-1","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"11","byte-count":"921","duration":{"second":3,"nanosecond":25000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"14","active-flows":1,"packets-matched":"11"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"ope... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:17.802788" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${RFC8040_NODES_API}/node=${node}</arg>
<arg>params=${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:17.784976" elapsed="0.017871"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>flow-capable-node-connector-statistics</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:17.803332" elapsed="0.003331"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>flow-table-statistics</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:17.806866" elapsed="0.003107"/>
</kw>
<arg>openflow%3A2</arg>
<doc>A GET on the /node/${node} API is made and specific flow stat
strings are checked for existence.</doc>
<status status="PASS" start="2026-05-25T01:52:17.784666" elapsed="0.025396"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check Nodes Stats</arg>
<arg>openflow%3A2</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:17.780291" elapsed="0.029862"/>
</kw>
<doc>Get the stats for a node</doc>
<status status="PASS" start="2026-05-25T01:52:17.779718" elapsed="0.030587"/>
</test>
<test id="s1-s1-s3-t4" name="Get Stats for node 3" line="37">
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Nodes Stats" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:17.828341" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A3?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0z59538vn07gm7ueabx7bmwjz2.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:17.831404" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:node":[{"id":"openflow:3","flow-node-inventory:port-number":44994,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-3","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"10","byte-count":"835","duration":{"second":2,"nanosecond":965000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"16","active-flows":1,"packets-matched":"10"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"op... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:17.831857" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${RFC8040_NODES_API}/node=${node}</arg>
<arg>params=${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:17.815909" elapsed="0.016008"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>flow-capable-node-connector-statistics</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:17.832282" elapsed="0.005154"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>flow-table-statistics</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:17.837755" elapsed="0.003382"/>
</kw>
<arg>openflow%3A3</arg>
<doc>A GET on the /node/${node} API is made and specific flow stat
strings are checked for existence.</doc>
<status status="PASS" start="2026-05-25T01:52:17.815494" elapsed="0.025707"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check Nodes Stats</arg>
<arg>openflow%3A3</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:17.811243" elapsed="0.030005"/>
</kw>
<doc>Get the stats for a node</doc>
<status status="PASS" start="2026-05-25T01:52:17.810638" elapsed="0.030716"/>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-05-25T01:52:17.841903" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-05-25T01:52:17.841824" elapsed="0.000152"/>
</kw>
<doc>Test suite for RESTCONF statistics</doc>
<status status="PASS" start="2026-05-25T01:52:17.670615" elapsed="0.171393"/>
</suite>
<suite id="s1-s1-s4" name="040 Restconf Frm" source="/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/MD_SAL_NSF_OF10/040_restconf_frm.robot">
<kw name="Create Session" owner="RequestsLibrary" type="SETUP">
<msg time="2026-05-25T01:52:17.873022" level="INFO">Creating Session using : alias=session, url=http://10.30.170.200:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7f5ace526f10&gt;, timeout=None, proxies=None, verify=False,                     debug=0 </msg>
<arg>session</arg>
<arg>http://${ODL_SYSTEM_IP}:${RESTCONFPORT}</arg>
<arg>auth=${AUTH}</arg>
<arg>headers=${HEADERS_XML}</arg>
<doc>Create Session: create a HTTP session to a server</doc>
<status status="PASS" start="2026-05-25T01:52:17.872699" elapsed="0.000500"/>
</kw>
<test id="s1-s1-s4-t1" name="Add a flow - Output to physical port#" line="21">
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:17.904659" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=152 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=152 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Content-Length': '506', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;flow-name&gt;Foo&lt;/flow-name&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.20.1/32&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;id&gt;152&lt;/id&gt;&lt;table_id&gt;0&lt;/table_id&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;openflow:1:1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:17.904794" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=152 
 status=201, reason=Created 
 headers={'Set-Cookie': 'JSESSIONID=node015pxr7ewyf8pw1e6ssllnhsbm83.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 24-May-2026 01:52:17 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:17.905305" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A1/flow-node-inventory:table=0/flow=152</arg>
<arg>headers=${HEADERS_XML}</arg>
<arg>data=${BODY2}</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:17.873646" elapsed="0.031722"/>
</kw>
<doc>Push a flow through REST-API</doc>
<status status="PASS" start="2026-05-25T01:52:17.873270" elapsed="0.032357"/>
</test>
<test id="s1-s1-s4-t2" name="Verify after adding flow config - Output to physical port#" line="29">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:17.919161" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node015pxr7ewyf8pw1e6ssllnhsbm83.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:17.919898" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '342'} 
 body={"flow-node-inventory:table":[{"id":0,"flow":[{"id":"152","flow-name":"Foo","match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"table_id":0,"priority":2,"instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"output-node-connector":"openflow:1:1"}}]}}]}}]}]} 
 </msg>
<msg time="2026-05-25T01:52:17.920153" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A1/flow-node-inventory:table=0?content=config</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:17.907336" elapsed="0.012878"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>152</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:17.920543" elapsed="0.004241"/>
</kw>
<doc>Verify the flow</doc>
<status status="PASS" start="2026-05-25T01:52:17.906292" elapsed="0.018658"/>
</test>
<test id="s1-s1-s4-t3" name="Verify after adding flow operational - Output to physical port#" line="37">
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:52:17.926401" level="INFO">${elements} = ['10.0.20.1']</msg>
<var>${elements}</var>
<arg>10.0.20.1</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:52:17.925989" elapsed="0.000449"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:17.941403" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=152?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=152?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node015pxr7ewyf8pw1e6ssllnhsbm83.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:17.941695" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=152?content=nonconfig 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/yang-data+json', 'Content-Length': '242'} 
 body={
  "errors": {
    "error": [
      {
        "error-tag": "data-missing",
        "error-message": "Request could not be completed because the relevant data model content does not exist",
        "error-type": "protocol"
      }
    ]
  }
} 
 </msg>
<msg time="2026-05-25T01:52:17.941790" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:17.931856" elapsed="0.009960"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:17.942231" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:17.941908" elapsed="0.000381"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:17.944385" level="INFO">{
  "errors": {
    "error": [
      {
        "error-tag": "data-missing",
        "error-message": "Request could not be completed because the relevant data model content does not exist",
        "error-type": "protocol"
      }
    ]
  }
}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:17.942438" elapsed="0.001995"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:17.942316" elapsed="0.002152"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:17.941883" elapsed="0.002608"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:17.944836" level="FAIL">Url: http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=152?content=nonconfig Expected status: 409 != 200</msg>
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="FAIL" start="2026-05-25T01:52:17.944612" elapsed="0.001024">Url: http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=152?content=nonconfig Expected status: 409 != 200</status>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:17.945901" elapsed="0.000022"/>
</kw>
<var name="${i}"/>
<status status="NOT RUN" start="2026-05-25T01:52:17.945780" elapsed="0.000178"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="NOT RUN" start="2026-05-25T01:52:17.945713" elapsed="0.000272"/>
</for>
<arg>${RFC8040_NODES_API}/node=openflow%3A1/flow-node-inventory:table=0/flow=152?content=nonconfig</arg>
<arg>${elements}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
['10.0.20.1'] is verified to exist in the response</doc>
<status status="FAIL" start="2026-05-25T01:52:17.930998" elapsed="0.015104">Url: http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=152?content=nonconfig Expected status: 409 != 200</status>
</kw>
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:19.965845" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=152?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=152?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node015pxr7ewyf8pw1e6ssllnhsbm83.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:19.966041" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=152?content=nonconfig 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/yang-data+json', 'Content-Length': '242'} 
 body={
  "errors": {
    "error": [
      {
        "error-tag": "data-missing",
        "error-message": "Request could not be completed because the relevant data model content does not exist",
        "error-type": "protocol"
      }
    ]
  }
} 
 </msg>
<msg time="2026-05-25T01:52:19.966228" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:19.954485" elapsed="0.011781"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:19.966827" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:19.966399" elapsed="0.000508"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:19.969944" level="INFO">{
  "errors": {
    "error": [
      {
        "error-tag": "data-missing",
        "error-message": "Request could not be completed because the relevant data model content does not exist",
        "error-type": "protocol"
      }
    ]
  }
}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:19.967135" elapsed="0.002878"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:19.966943" elapsed="0.003121"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:19.966366" elapsed="0.003752"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:19.970589" level="FAIL">Url: http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=152?content=nonconfig Expected status: 409 != 200</msg>
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="FAIL" start="2026-05-25T01:52:19.970285" elapsed="0.000953">Url: http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=152?content=nonconfig Expected status: 409 != 200</status>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:19.971624" elapsed="0.000030"/>
</kw>
<var name="${i}"/>
<status status="NOT RUN" start="2026-05-25T01:52:19.971441" elapsed="0.000263"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="NOT RUN" start="2026-05-25T01:52:19.971342" elapsed="0.000400"/>
</for>
<arg>${RFC8040_NODES_API}/node=openflow%3A1/flow-node-inventory:table=0/flow=152?content=nonconfig</arg>
<arg>${elements}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
['10.0.20.1'] is verified to exist in the response</doc>
<status status="FAIL" start="2026-05-25T01:52:19.953649" elapsed="0.018231">Url: http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=152?content=nonconfig Expected status: 409 != 200</status>
</kw>
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:21.992136" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=152?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=152?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node015pxr7ewyf8pw1e6ssllnhsbm83.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:21.992704" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=152?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '517'} 
 body={"flow-node-inventory:flow":[{"id":"152","table_id":0,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":323000000}},"flags":""}]} 
 </msg>
<msg time="2026-05-25T01:52:21.992818" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:21.980279" elapsed="0.012566"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:21.993305" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:21.992949" elapsed="0.000423"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:21.995644" level="INFO">{"flow-node-inventory:flow":[{"id":"152","table_id":0,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":323000000}},"flags":""}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:21.993548" elapsed="0.002168"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:21.993403" elapsed="0.002366"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:21.992923" elapsed="0.002884"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:21.996224" elapsed="0.000428"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:21.997424" elapsed="0.004626"/>
</kw>
<var name="${i}">10.0.20.1</var>
<status status="PASS" start="2026-05-25T01:52:21.997141" elapsed="0.005037"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-05-25T01:52:21.996797" elapsed="0.005450"/>
</for>
<arg>${RFC8040_NODES_API}/node=openflow%3A1/flow-node-inventory:table=0/flow=152?content=nonconfig</arg>
<arg>${elements}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
['10.0.20.1'] is verified to exist in the response</doc>
<status status="PASS" start="2026-05-25T01:52:21.979010" elapsed="0.023364"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check For Elements At URI</arg>
<arg>${RFC8040_NODES_API}/node=openflow%3A1/flow-node-inventory:table=0/flow=152?content=nonconfig</arg>
<arg>${elements}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:17.926654" elapsed="4.075833"/>
</kw>
<doc>Verify the flow</doc>
<status status="PASS" start="2026-05-25T01:52:17.925320" elapsed="4.077439"/>
</test>
<test id="s1-s1-s4-t4" name="Remove a flow - Output to physical port#" line="47">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:22.021827" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=152 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=152 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node015pxr7ewyf8pw1e6ssllnhsbm83.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:22.021929" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=152 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:22.022174" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A1/flow-node-inventory:table=0/flow=152</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:22.004364" elapsed="0.017884"/>
</kw>
<doc>Remove a flow</doc>
<status status="PASS" start="2026-05-25T01:52:22.003376" elapsed="0.019164"/>
</test>
<test id="s1-s1-s4-t5" name="Verify after deleting flow config - Output to physical port#" line="54">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:22.032567" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node015pxr7ewyf8pw1e6ssllnhsbm83.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:22.032763" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '40'} 
 body={"flow-node-inventory:table":[{"id":0}]} 
 </msg>
<msg time="2026-05-25T01:52:22.032896" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A1/flow-node-inventory:table=0?content=config</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:22.024408" elapsed="0.008524"/>
</kw>
<kw name="Should Not Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>152</arg>
<doc>Fails if ``container`` contains ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:22.033175" elapsed="0.002746"/>
</kw>
<doc>Verify the flow</doc>
<status status="PASS" start="2026-05-25T01:52:22.023196" elapsed="0.012901"/>
</test>
<test id="s1-s1-s4-t6" name="Verify after deleting flow operational - Output to physical port#" line="63">
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:52:22.037484" level="INFO">${elements} = ['10.0.20.1']</msg>
<var>${elements}</var>
<arg>10.0.20.1</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:52:22.037109" elapsed="0.000412"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check For Elements Not At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:22.052900" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node015pxr7ewyf8pw1e6ssllnhsbm83.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:22.055779" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '1097'} 
 body={"flow-node-inventory:table":[{"id":0,"flow":[{"id":"#UF$TABLE*0-2","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"20","byte-count":"1702","duration":{"second":9,"nanosecond":129000000}},"flags":"SEND_FLOW_REM"},{"id":"152","table_id":0,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":323000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":2,"packets-matched":"20"}}]} 
 </msg>
<msg time="2026-05-25T01:52:22.055901" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:22.047678" elapsed="0.008250"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:22.056321" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:22.056012" elapsed="0.000366"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:22.058597" level="INFO">{"flow-node-inventory:table":[{"id":0,"flow":[{"id":"#UF$TABLE*0-2","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"20","byte-count":"1702","duration":{"second":9,"nanosecond":129000000}},"flags":"SEND_FLOW_REM"},{"id":"152","table_id":0,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":323000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":2,"packets-matched":"20"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:22.056522" elapsed="0.002129"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:22.056403" elapsed="0.002283"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:22.055990" elapsed="0.002718"/>
</if>
<if>
<branch type="IF" condition="&quot;${check_for_null}&quot; == &quot;True&quot;">
<if>
<branch type="IF" condition="${resp.status_code} == 404 or ${resp.status_code} == 409">
<return>
<status status="NOT RUN" start="2026-05-25T01:52:22.058945" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:22.058902" elapsed="0.000088"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:52:22.058888" elapsed="0.000123"/>
</if>
<status status="NOT RUN" start="2026-05-25T01:52:22.058766" elapsed="0.000266"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:22.058749" elapsed="0.000303"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:22.059186" elapsed="0.000192"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-05-25T01:52:22.062928" level="FAIL">'{"flow-node-inventory:table":[{"id":0,"flow":[{"id":"#UF$TABLE*0-2","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"20","byte-count":"1702","duration":{"second":9,"nanosecond":129000000}},"flags":"SEND_FLOW_REM"},{"id":"152","table_id":0,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":323000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":2,"packets-matched":"20"}}]}' contains '10.0.20.1'</msg>
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` contains ``item`` one or more times.</doc>
<status status="FAIL" start="2026-05-25T01:52:22.059737" elapsed="0.003321">'{"flow-node-inventory:table":[{"id":0,"flow":[{"id":"#UF$TABLE*0-2","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"20","byte-count":"1702","duration":{"second":9,"nanosecond":129000000}},"flags":"SEND_FLOW_REM"},{"id":"152","table_id":0,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":323000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":2,"packets-matched":"20"}}]}' contains '10.0.20.1'</status>
</kw>
<var name="${i}">10.0.20.1</var>
<status status="FAIL" start="2026-05-25T01:52:22.059576" elapsed="0.003615">'{"flow-node-inventory:table":[{"id":0,"flow":[{"id":"#UF$TABLE*0-2","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"20","byte-count":"1702","duration":{"second":9,"nanosecond":129000000}},"flags":"SEND_FLOW_REM"},{"id":"152","table_id":0,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":323000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":2,"packets-matched":"20"}}]}' contains '10.0.20.1'</status>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="FAIL" start="2026-05-25T01:52:22.059435" elapsed="0.003898">'{"flow-node-inventory:table":[{"id":0,"flow":[{"id":"#UF$TABLE*0-2","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"20","byte-count":"1702","duration":{"second":9,"nanosecond":129000000}},"flags":"SEND_FLOW_REM"},{"id":"152","table_id":0,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":323000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":2,"packets-matched":"20"}}]}' contains '10.0.20.1'</status>
</for>
<arg>${RFC8040_NODES_API}/node=openflow%3A1/flow-node-inventory:table=0?content=nonconfig</arg>
<arg>${elements}</arg>
<doc>A GET is made at the supplied ${uri} and every item in the list of
['10.0.20.1'] is verified to NOT exist in the response. If ${check_for_null} is True
return of 404 is treated as empty list. From Neon onwards, an empty list is always
returned as null, giving 404 on rest call.</doc>
<status status="FAIL" start="2026-05-25T01:52:22.046973" elapsed="0.016514">'{"flow-node-inventory:table":[{"id":0,"flow":[{"id":"#UF$TABLE*0-2","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"20","byte-count":"1702","duration":{"second":9,"nanosecond":129000000}},"flags":"SEND_FLOW_REM"},{"id":"152","table_id":0,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":323000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":2,"packets-matched":"20"}}]}' contains '10.0.20.1'</status>
</kw>
<kw name="Check For Elements Not At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:24.084007" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node015pxr7ewyf8pw1e6ssllnhsbm83.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:24.084334" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '1097'} 
 body={"flow-node-inventory:table":[{"id":0,"flow":[{"id":"#UF$TABLE*0-2","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"20","byte-count":"1702","duration":{"second":9,"nanosecond":129000000}},"flags":"SEND_FLOW_REM"},{"id":"152","table_id":0,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":323000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":2,"packets-matched":"20"}}]} 
 </msg>
<msg time="2026-05-25T01:52:24.084450" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:24.074528" elapsed="0.009949"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:24.084889" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:24.084580" elapsed="0.000367"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:24.087235" level="INFO">{"flow-node-inventory:table":[{"id":0,"flow":[{"id":"#UF$TABLE*0-2","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"20","byte-count":"1702","duration":{"second":9,"nanosecond":129000000}},"flags":"SEND_FLOW_REM"},{"id":"152","table_id":0,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":323000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":2,"packets-matched":"20"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:24.085112" elapsed="0.002180"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:24.084973" elapsed="0.002354"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:24.084554" elapsed="0.002796"/>
</if>
<if>
<branch type="IF" condition="&quot;${check_for_null}&quot; == &quot;True&quot;">
<if>
<branch type="IF" condition="${resp.status_code} == 404 or ${resp.status_code} == 409">
<return>
<status status="NOT RUN" start="2026-05-25T01:52:24.087579" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:24.087539" elapsed="0.000081"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:52:24.087524" elapsed="0.000118"/>
</if>
<status status="NOT RUN" start="2026-05-25T01:52:24.087407" elapsed="0.000257"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:24.087390" elapsed="0.000294"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:24.087803" elapsed="0.000282"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-05-25T01:52:24.091839" level="FAIL">'{"flow-node-inventory:table":[{"id":0,"flow":[{"id":"#UF$TABLE*0-2","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"20","byte-count":"1702","duration":{"second":9,"nanosecond":129000000}},"flags":"SEND_FLOW_REM"},{"id":"152","table_id":0,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":323000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":2,"packets-matched":"20"}}]}' contains '10.0.20.1'</msg>
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` contains ``item`` one or more times.</doc>
<status status="FAIL" start="2026-05-25T01:52:24.088539" elapsed="0.003449">'{"flow-node-inventory:table":[{"id":0,"flow":[{"id":"#UF$TABLE*0-2","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"20","byte-count":"1702","duration":{"second":9,"nanosecond":129000000}},"flags":"SEND_FLOW_REM"},{"id":"152","table_id":0,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":323000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":2,"packets-matched":"20"}}]}' contains '10.0.20.1'</status>
</kw>
<var name="${i}">10.0.20.1</var>
<status status="FAIL" start="2026-05-25T01:52:24.088359" elapsed="0.003761">'{"flow-node-inventory:table":[{"id":0,"flow":[{"id":"#UF$TABLE*0-2","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"20","byte-count":"1702","duration":{"second":9,"nanosecond":129000000}},"flags":"SEND_FLOW_REM"},{"id":"152","table_id":0,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":323000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":2,"packets-matched":"20"}}]}' contains '10.0.20.1'</status>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="FAIL" start="2026-05-25T01:52:24.088169" elapsed="0.004045">'{"flow-node-inventory:table":[{"id":0,"flow":[{"id":"#UF$TABLE*0-2","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"20","byte-count":"1702","duration":{"second":9,"nanosecond":129000000}},"flags":"SEND_FLOW_REM"},{"id":"152","table_id":0,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":323000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":2,"packets-matched":"20"}}]}' contains '10.0.20.1'</status>
</for>
<arg>${RFC8040_NODES_API}/node=openflow%3A1/flow-node-inventory:table=0?content=nonconfig</arg>
<arg>${elements}</arg>
<doc>A GET is made at the supplied ${uri} and every item in the list of
['10.0.20.1'] is verified to NOT exist in the response. If ${check_for_null} is True
return of 404 is treated as empty list. From Neon onwards, an empty list is always
returned as null, giving 404 on rest call.</doc>
<status status="FAIL" start="2026-05-25T01:52:24.073683" elapsed="0.018679">'{"flow-node-inventory:table":[{"id":0,"flow":[{"id":"#UF$TABLE*0-2","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"20","byte-count":"1702","duration":{"second":9,"nanosecond":129000000}},"flags":"SEND_FLOW_REM"},{"id":"152","table_id":0,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":323000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":2,"packets-matched":"20"}}]}' contains '10.0.20.1'</status>
</kw>
<kw name="Check For Elements Not At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:26.115117" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node015pxr7ewyf8pw1e6ssllnhsbm83.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:26.116321" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '611'} 
 body={"flow-node-inventory:table":[{"id":0,"flow":[{"id":"#UF$TABLE*0-2","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"23","byte-count":"1942","duration":{"second":12,"nanosecond":164000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"25","active-flows":1,"packets-matched":"23"}}]} 
 </msg>
<msg time="2026-05-25T01:52:26.116488" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:26.106636" elapsed="0.009880"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:26.116928" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:26.116612" elapsed="0.000374"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:26.119245" level="INFO">{"flow-node-inventory:table":[{"id":0,"flow":[{"id":"#UF$TABLE*0-2","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"23","byte-count":"1942","duration":{"second":12,"nanosecond":164000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"25","active-flows":1,"packets-matched":"23"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:26.117151" elapsed="0.002147"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:26.117012" elapsed="0.002321"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:26.116588" elapsed="0.002768"/>
</if>
<if>
<branch type="IF" condition="&quot;${check_for_null}&quot; == &quot;True&quot;">
<if>
<branch type="IF" condition="${resp.status_code} == 404 or ${resp.status_code} == 409">
<return>
<status status="NOT RUN" start="2026-05-25T01:52:26.119585" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:26.119546" elapsed="0.000081"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:52:26.119531" elapsed="0.000118"/>
</if>
<status status="NOT RUN" start="2026-05-25T01:52:26.119414" elapsed="0.000257"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:26.119396" elapsed="0.000295"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:26.119809" elapsed="0.000252"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` contains ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:26.120536" elapsed="0.002957"/>
</kw>
<var name="${i}">10.0.20.1</var>
<status status="PASS" start="2026-05-25T01:52:26.120362" elapsed="0.003188"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-05-25T01:52:26.120178" elapsed="0.003416"/>
</for>
<arg>${RFC8040_NODES_API}/node=openflow%3A1/flow-node-inventory:table=0?content=nonconfig</arg>
<arg>${elements}</arg>
<doc>A GET is made at the supplied ${uri} and every item in the list of
['10.0.20.1'] is verified to NOT exist in the response. If ${check_for_null} is True
return of 404 is treated as empty list. From Neon onwards, an empty list is always
returned as null, giving 404 on rest call.</doc>
<status status="PASS" start="2026-05-25T01:52:26.105841" elapsed="0.017831"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check For Elements Not At URI</arg>
<arg>${RFC8040_NODES_API}/node=openflow%3A1/flow-node-inventory:table=0?content=nonconfig</arg>
<arg>${elements}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:22.037735" elapsed="4.086013"/>
</kw>
<doc>Verify the flow</doc>
<status status="PASS" start="2026-05-25T01:52:22.036422" elapsed="4.087496"/>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-05-25T01:52:26.124720" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-05-25T01:52:26.124608" elapsed="0.000214"/>
</kw>
<doc>Test suite for RESTCONF FRM</doc>
<status status="PASS" start="2026-05-25T01:52:17.842746" elapsed="8.282123"/>
</suite>
<kw name="Stop Mininet" owner="Utils" type="TEARDOWN">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:26.127216" level="INFO">Stop the test on the base edition</msg>
<arg>Stop the test on the base edition</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:26.126818" elapsed="0.000464"/>
</kw>
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${mininet_conn_id}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:52:26.127472" elapsed="0.000198"/>
</kw>
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:52:26.127849" elapsed="0.000254"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:52:26.173838" level="INFO">exit</msg>
<arg>exit</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:52:26.128282" elapsed="0.045674"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:52:26.482492" level="INFO">*** Stopping 1 controllers
c0 
*** Stopping 6 links
......
*** Stopping 3 switches
s1 s2 s3 
*** Stopping 4 hosts
h1 h2 h3 h4 
*** Done
completed in 15.250 seconds
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${prompt}</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:52:26.174197" elapsed="0.308372"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:52:26.482730" elapsed="0.000217"/>
</kw>
<doc>Cleanup/Shutdown work that should be done at the completion of all
tests</doc>
<status status="PASS" start="2026-05-25T01:52:26.126435" elapsed="0.356581"/>
</kw>
<doc>Test suite for MD-SAL NSF</doc>
<status status="PASS" start="2026-05-25T01:52:08.128183" elapsed="18.354869"/>
</suite>
<suite id="s1-s2" name="MD SAL NSF OF13" source="/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/MD_SAL_NSF_OF13">
<kw name="Start Mininet" owner="Utils" type="SETUP">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:26.516789" level="INFO">Start the test on the base edition</msg>
<arg>Start the test on the base edition</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:26.516549" elapsed="0.000289"/>
</kw>
<kw name="Clean Mininet System" owner="Utils">
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:26.519023" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:26.518765" elapsed="0.000331"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:26.518741" elapsed="0.000383"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:52:26.519411" level="INFO">index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:52:26.519523" level="INFO">${current_ssh_connection} = index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:52:26.519246" elapsed="0.000354"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:26.520135" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:26.519727" elapsed="0.000456"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:52:26.520685" level="INFO">${conn_id} = 6</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:52:26.520314" elapsed="0.000397"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:52:26.521512" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:52:26.521589" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:52:26.521235" elapsed="0.000379"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:26.521746" elapsed="0.000348"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:52:26.522901" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:52:26.854180" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:52:08 UTC 2026

  System load:  0.02               Processes:             111
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:52:11 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:52:26.522586" elapsed="0.331794"/>
</kw>
<msg time="2026-05-25T01:52:26.854538" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:26.522252" elapsed="0.332419"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:52:26.520900" elapsed="0.333956"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:52:26.855617" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-05-25T01:52:27.993054" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:52:27.993538" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:52:27.993648" level="INFO">${stderr} = *** Removing excess controllers/ofprotocols/ofdatapaths/pings/noxes
killall controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec iv...</msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:52:26.855216" elapsed="1.138493"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:52:27.994174" elapsed="0.000686"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:27.996047" level="INFO">*** Removing excess controllers/ofprotocols/ofdatapaths/pings/noxes
killall controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec ivs ryu-manager 2&gt; /dev/null
killall -9 controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec ivs ryu-manager 2&gt; /dev/null
pkill -9 -f "sudo mnexec"
*** Removing junk from /tmp
rm -f /tmp/vconn* /tmp/vlogs* /tmp/*.out /tmp/*.log
*** Removing old X11 tunnels
*** Removing excess kernel datapaths
ps ax | egrep -o 'dp[0-9]+' | sed 's/dp/nl:/'
***  Removing OVS datapaths
ovs-vsctl --timeout=1 list-br
ovs-vsctl --timeout=1 list-br
*** Removing all links of the pattern foo-ethX
ip link show | egrep -o '([-_.[:alnum:]]+-eth[[:digit:]]+)'
ip link show
*** Killing stale mininet node processes
pkill -9 -f mininet:
*** Shutting down stale tunnels
pkill -9 -f Tunnel=Ethernet
pkill -9 -f .ssh/mn
rm -f ~/.ssh/mn/*
*** Cleanup complete.</msg>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:27.995287" elapsed="0.000934"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:52:27.996725" elapsed="0.000042"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:27.996414" elapsed="0.000427"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:27.996357" elapsed="0.000537"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:52:27.997296" elapsed="0.000073"/>
</return>
<status status="PASS" start="2026-05-25T01:52:27.997018" elapsed="0.000428"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:27.996983" elapsed="0.000517"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:52:27.997579" elapsed="0.000031"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:28.002050" elapsed="0.000520"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:52:28.002769" elapsed="0.000265"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:52:28.003256" elapsed="0.000236"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:52:27.998332" elapsed="0.005239"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:52:26.518276" elapsed="1.485428"/>
</kw>
<msg time="2026-05-25T01:52:28.003782" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:26.517685" elapsed="1.486194"/>
</kw>
<arg>${system}</arg>
<arg>sudo mn -c</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:52:26.517262" elapsed="1.486738"/>
</kw>
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:28.006735" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:28.006395" elapsed="0.000422"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:28.006362" elapsed="0.000490"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:52:28.007317" level="INFO">index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:52:28.007470" level="INFO">${current_ssh_connection} = index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:52:28.007099" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:28.008284" level="INFO">Attempting to execute command "sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:28.007683" elapsed="0.000670"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:52:28.009121" level="INFO">${conn_id} = 8</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:52:28.008573" elapsed="0.000595"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:52:28.010419" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:52:28.010526" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:52:28.009967" elapsed="0.000592"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:28.010739" elapsed="0.000519"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:52:28.012862" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:52:28.359429" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:52:08 UTC 2026

  System load:  0.02               Processes:             111
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:52:26 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:52:28.012010" elapsed="0.347582"/>
</kw>
<msg time="2026-05-25T01:52:28.359679" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:28.011455" elapsed="0.348305"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:52:28.009494" elapsed="0.350385"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:52:28.360369" level="INFO">Executing command 'sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh'.</msg>
<msg time="2026-05-25T01:52:28.393591" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-05-25T01:52:28.393864" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:52:28.393963" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:52:28.360111" elapsed="0.033906"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:52:28.394402" elapsed="0.000861"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:28.396284" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:28.395602" elapsed="0.000908"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:52:28.397065" elapsed="0.000079"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:28.396756" elapsed="0.000504"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:28.396695" elapsed="0.000633"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:52:28.397720" elapsed="0.000062"/>
</return>
<status status="PASS" start="2026-05-25T01:52:28.397462" elapsed="0.000396"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:28.397424" elapsed="0.000488"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:52:28.397987" elapsed="0.000031"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:28.402931" elapsed="0.000867"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:52:28.404029" elapsed="0.000185"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:52:28.404337" elapsed="0.000106"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:52:28.398693" elapsed="0.005805"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:52:28.005614" elapsed="0.399002"/>
</kw>
<msg time="2026-05-25T01:52:28.404679" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:28.004830" elapsed="0.399902"/>
</kw>
<arg>${system}</arg>
<arg>sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:52:28.004232" elapsed="0.400584"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:26.516988" elapsed="1.887885"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:52:28.405413" level="INFO">${mininet_conn_id} = 10</msg>
<var>${mininet_conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:52:28.405008" elapsed="0.000442"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:28.405947" level="INFO">${mininet_conn_id} = 10</msg>
<arg>${mininet_conn_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:28.405609" elapsed="0.000381"/>
</kw>
<kw name="Flexible_Mininet_Login" owner="SSHKeywords">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:52:28.407711" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:52:28.407790" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:52:28.407413" elapsed="0.000402"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:28.407947" elapsed="0.000346"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:52:28.409172" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:52:28.740094" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:52:08 UTC 2026

  System load:  0.02               Processes:             111
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:52:28 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:52:28.408827" elapsed="0.331506"/>
</kw>
<msg time="2026-05-25T01:52:28.740446" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:28.408439" elapsed="0.332115"/>
</kw>
<arg>user=${user}</arg>
<arg>password=${password}</arg>
<arg>delay=${delay}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:52:28.406940" elapsed="0.333754"/>
</kw>
<msg time="2026-05-25T01:52:28.740752" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Flexible SSH Login</arg>
<arg>user=${user}</arg>
<arg>password=${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:28.406571" elapsed="0.334229"/>
</kw>
<arg>user=${user}</arg>
<arg>password=${password}</arg>
<doc>Call Flexible SSH Login, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:52:28.406183" elapsed="0.334696"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:52:28.741336" level="INFO">Executing command 'sudo ovs-vsctl set-manager ptcp:6644'.</msg>
<msg time="2026-05-25T01:52:28.764304" level="INFO">Command exited with return code 0.</msg>
<arg>sudo ovs-vsctl set-manager ptcp:6644</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:52:28.741165" elapsed="0.023282"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:52:28.808332" level="INFO">sudo mn --controller=remote,ip=10.30.170.200 --topo tree,2 --switch ovsk,protocols=OpenFlow13</msg>
<arg>${start}</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:52:28.764768" elapsed="0.043670"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:52:29.086209" level="INFO">[?2004l*** Creating network
*** Adding controller
Connecting to remote controller at 10.30.170.200:6653
*** Adding hosts:
h1 h2 h3 h4 
*** Adding switches:
s1 s2 s3 
*** Adding links:
(s1, s2) (s1, s3) (s2, h1) (s2, h2) (s3, h3) (s3, h4) 
*** Configuring hosts
h1 h2 h3 h4 
*** Starting controller
c0 
*** Starting 3 switches
s1 s2 s3 ...
*** Starting CLI:
mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:52:28.808616" elapsed="0.277782"/>
</kw>
<doc>Basic setup/cleanup work that can be done safely before any system
is run.</doc>
<status status="PASS" start="2026-05-25T01:52:26.516131" elapsed="2.570387"/>
</kw>
<suite id="s1-s2-s1" name="010 Restconf Inventory" source="/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/MD_SAL_NSF_OF13/010_restconf_inventory.robot">
<kw name="Create Session" owner="RequestsLibrary" type="SETUP">
<msg time="2026-05-25T01:52:29.122315" level="INFO">Creating Session using : alias=session, url=http://10.30.170.200:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7f5ace4f9ed0&gt;, timeout=None, proxies=None, verify=False,                     debug=0 </msg>
<arg>session</arg>
<arg>http://${ODL_SYSTEM_IP}:${RESTCONFPORT}</arg>
<arg>auth=${AUTH}</arg>
<arg>headers=${HEADERS_XML}</arg>
<doc>Create Session: create a HTTP session to a server</doc>
<status status="PASS" start="2026-05-25T01:52:29.121891" elapsed="0.000639"/>
</kw>
<test id="s1-s2-s1-t1" name="Get list of nodes" line="30">
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:29.137577" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:29.137737" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 status=409, reason=Conflict 
 headers={'Set-Cookie': 'JSESSIONID=node0qtnq13tjcp6kmshzb2yvi3bf4.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 24-May-2026 01:52:29 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Content-Type': 'application/yang-data+json', 'Content-Length': '242'} 
 body={
  "errors": {
    "error": [
      {
        "error-tag": "data-missing",
        "error-message": "Request could not be completed because the relevant data model content does not exist",
        "error-type": "protocol"
      }
    ]
  }
} 
 </msg>
<msg time="2026-05-25T01:52:29.137942" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:29.129719" elapsed="0.008253"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:29.138461" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:29.138100" elapsed="0.000421"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:29.140714" level="INFO">{
  "errors": {
    "error": [
      {
        "error-tag": "data-missing",
        "error-message": "Request could not be completed because the relevant data model content does not exist",
        "error-type": "protocol"
      }
    ]
  }
}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:29.138724" elapsed="0.002039"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:29.138548" elapsed="0.002251"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:29.138043" elapsed="0.002779"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:29.141225" level="FAIL">Url: http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig Expected status: 409 != 200</msg>
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="FAIL" start="2026-05-25T01:52:29.140945" elapsed="0.000715">Url: http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig Expected status: 409 != 200</status>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:29.141939" elapsed="0.000029"/>
</kw>
<var name="${i}"/>
<status status="NOT RUN" start="2026-05-25T01:52:29.141806" elapsed="0.000213"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="NOT RUN" start="2026-05-25T01:52:29.141739" elapsed="0.000313"/>
</for>
<arg>${RFC8040_OPERATIONAL_NODES_API}</arg>
<arg>${node_list}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
${elements} is verified to exist in the response</doc>
<status status="FAIL" start="2026-05-25T01:52:29.129308" elapsed="0.012898">Url: http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig Expected status: 409 != 200</status>
</kw>
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:31.179477" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0qtnq13tjcp6kmshzb2yvi3bf4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:31.183888" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":41426,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-6","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"1","byte-count":"85","duration":{"second":0,"nanosecond":2000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"1","active-flows":1,"packets-matched":"1"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:31.184336" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:31.154275" elapsed="0.030102"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:31.184978" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:31.184520" elapsed="0.000563"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.189002" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":41426,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-6","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"1","byte-count":"85","duration":{"second":0,"nanosecond":2000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"1","active-flows":1,"packets-matched":"1"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s3","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:52:29.324Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"4a:69:0c:89:b4:e6","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":311000000},"bytes":{"transmitted":"351","received":"175"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"0e:6a:89:eb:22:9c","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"2","received":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":310000000},"bytes":{"transmitted":"175","received":"90"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"d6:19:d1:aa:3e:ae","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"2","received":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":311000000},"bytes":{"transmitted":"175","received":"90"},"receive-crc-error":"0"}},{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ee:69:e9:37:a9:40","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":291000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:52:29.366Z"}},{"id":"openflow:1","flow-node-inventory:port-number":41420,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-7","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"2","byte-count":"170","duration":{"second":0,"nanosecond":12000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"3","active-flows":1,"packets-matched":"2"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s1","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:52:29.314Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"12:d1:93:30:74:35","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"3","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":311000000},"bytes":{"transmitted":"265","received":"175"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ce:33:6d:71:65:40","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":303000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"de:e7:a0:f9:6b:41","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"2","received":"4"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":312000000},"bytes":{"transmitted":"175","received":"351"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:52:29.363Z"}},{"id":"openflow:2","flow-node-inventory:port-number":41430,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-5","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":11000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"2","active-flows":1,"packets-matched":"1"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s2","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:52:29.313Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"4a:6c:77:39:fe:2f","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"2","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":282000000},"bytes":{"transmitted":"175","received":"265"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"c2:57:59:6b:04:40","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":273000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"6a:41:02:fb:a3:a6","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"2","received":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":282000000},"bytes":{"transmitted":"175","received":"90"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ae:c7:d1:65:49:a9","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"2","received":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":282000000},"bytes":{"transmitted":"175","received":"90"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:52:29.359Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:31.185308" elapsed="0.005114"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:31.185124" elapsed="0.005353"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:31.184485" elapsed="0.006024"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:31.190683" elapsed="0.000245"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.191440" elapsed="0.003439"/>
</kw>
<var name="${i}">openflow:1</var>
<status status="PASS" start="2026-05-25T01:52:31.191231" elapsed="0.003707"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.195246" elapsed="0.002644"/>
</kw>
<var name="${i}">openflow:2</var>
<status status="PASS" start="2026-05-25T01:52:31.195057" elapsed="0.002875"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.198154" elapsed="0.002363"/>
</kw>
<var name="${i}">openflow:3</var>
<status status="PASS" start="2026-05-25T01:52:31.198015" elapsed="0.002544"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-05-25T01:52:31.191013" elapsed="0.009576"/>
</for>
<arg>${RFC8040_OPERATIONAL_NODES_API}</arg>
<arg>${node_list}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
${elements} is verified to exist in the response</doc>
<status status="PASS" start="2026-05-25T01:52:31.153560" elapsed="0.047090"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check For Elements At URI</arg>
<arg>${RFC8040_OPERATIONAL_NODES_API}</arg>
<arg>${node_list}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:29.123062" elapsed="2.077639"/>
</kw>
<doc>Get the inventory</doc>
<status status="PASS" start="2026-05-25T01:52:29.122605" elapsed="2.078229"/>
</test>
<test id="s1-s2-s1-t2" name="Check No Link Down" line="39">
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check For Specific Number Of Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:31.229298" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0qtnq13tjcp6kmshzb2yvi3bf4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:31.230372" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":41426,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-6","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"1","byte-count":"85","duration":{"second":0,"nanosecond":2000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"1","active-flows":1,"packets-matched":"1"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:31.230829" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:31.211153" elapsed="0.019735"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.236504" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":41426,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-6","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"1","byte-count":"85","duration":{"second":0,"nanosecond":2000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"1","active-flows":1,"packets-matched":"1"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s3","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:52:29.324Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"4a:69:0c:89:b4:e6","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":311000000},"bytes":{"transmitted":"351","received":"175"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"0e:6a:89:eb:22:9c","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"2","received":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":310000000},"bytes":{"transmitted":"175","received":"90"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"d6:19:d1:aa:3e:ae","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"2","received":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":311000000},"bytes":{"transmitted":"175","received":"90"},"receive-crc-error":"0"}},{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ee:69:e9:37:a9:40","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":291000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:52:29.366Z"}},{"id":"openflow:1","flow-node-inventory:port-number":41420,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-7","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"2","byte-count":"170","duration":{"second":0,"nanosecond":12000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"3","active-flows":1,"packets-matched":"2"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s1","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:52:29.314Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"12:d1:93:30:74:35","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"3","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":311000000},"bytes":{"transmitted":"265","received":"175"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ce:33:6d:71:65:40","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":303000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"de:e7:a0:f9:6b:41","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"2","received":"4"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":312000000},"bytes":{"transmitted":"175","received":"351"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:52:29.363Z"}},{"id":"openflow:2","flow-node-inventory:port-number":41430,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-5","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":11000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"2","active-flows":1,"packets-matched":"1"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s2","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:52:29.313Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"4a:6c:77:39:fe:2f","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"2","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":282000000},"bytes":{"transmitted":"175","received":"265"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"c2:57:59:6b:04:40","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":273000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"6a:41:02:fb:a3:a6","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"2","received":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":282000000},"bytes":{"transmitted":"175","received":"90"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ae:c7:d1:65:49:a9","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"2","received":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":282000000},"bytes":{"transmitted":"175","received":"90"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:52:29.359Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:31.231263" elapsed="0.007614"/>
</kw>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:31.239211" elapsed="0.000427"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.242455" level="INFO">Item found from container 8 times.</msg>
<arg>${resp.text}</arg>
<arg>${element}</arg>
<arg>${expected_count}</arg>
<doc>Fails if ``container`` does not contain ``item`` ``count`` times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.239957" elapsed="0.003015"/>
</kw>
<arg>${RFC8040_OPERATIONAL_NODES_API}</arg>
<arg>"link-down":false</arg>
<arg>8</arg>
<doc>A GET is made to the specified ${URI} and the specific count of a
given element is done (as supplied by ${element} and ${expected_count})</doc>
<status status="PASS" start="2026-05-25T01:52:31.210748" elapsed="0.032291"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check For Specific Number Of Elements At URI</arg>
<arg>${RFC8040_OPERATIONAL_NODES_API}</arg>
<arg>"link-down":false</arg>
<arg>8</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:31.201663" elapsed="0.041446"/>
</kw>
<doc>Check there is no link down. We have 8 ports in total: s1=2, s2=3, s3=3.</doc>
<status status="PASS" start="2026-05-25T01:52:31.201167" elapsed="0.042063"/>
</test>
<test id="s1-s2-s1-t3" name="Get node 1 inventory" line="49">
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.244355" level="INFO">${list} = ['"flow-node-inventory:flow-feature-capability-flow-stats"', '"flow-node-inventory:flow-feature-capability-table-stats"', '"flow-node-inventory:flow-feature-capability-port-stats"', '"flow-node-invent...</msg>
<var>${list}</var>
<arg>@{SW_CAPABILITIES}</arg>
<arg>${SW_VENDOR}</arg>
<arg>${SW_IPADDRESS}</arg>
<arg>${SW_HARDWARE}</arg>
<arg>openflow:1:1</arg>
<arg>openflow:1:2</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:52:31.243908" elapsed="0.000475"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:31.263467" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0qtnq13tjcp6kmshzb2yvi3bf4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:31.267508" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":41420,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-7","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"2","byte-count":"170","duration":{"second":0,"nanosecond":12000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"3","active-flows":1,"packets-matched":"2"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"openda... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:31.267972" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:31.251177" elapsed="0.016854"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:31.268905" elapsed="0.000055"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:31.268260" elapsed="0.000771"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.273263" level="INFO">{"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":41420,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-7","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"2","byte-count":"170","duration":{"second":0,"nanosecond":12000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"3","active-flows":1,"packets-matched":"2"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s1","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:52:29.314Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"12:d1:93:30:74:35","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"3","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":311000000},"bytes":{"transmitted":"265","received":"175"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ce:33:6d:71:65:40","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":303000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"de:e7:a0:f9:6b:41","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"2","received":"4"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":312000000},"bytes":{"transmitted":"175","received":"351"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:52:29.363Z"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:31.269400" elapsed="0.004230"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:31.269123" elapsed="0.004544"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:31.268209" elapsed="0.005480"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:31.273811" elapsed="0.000166"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.274316" elapsed="0.002358"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-flow-stats"</var>
<status status="PASS" start="2026-05-25T01:52:31.274193" elapsed="0.002523"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.276920" elapsed="0.002567"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-table-stats"</var>
<status status="PASS" start="2026-05-25T01:52:31.276800" elapsed="0.002730"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.279733" elapsed="0.002322"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-port-stats"</var>
<status status="PASS" start="2026-05-25T01:52:31.279612" elapsed="0.002500"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.282314" elapsed="0.002364"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-queue-stats"</var>
<status status="PASS" start="2026-05-25T01:52:31.282195" elapsed="0.002525"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.284921" elapsed="0.002411"/>
</kw>
<var name="${i}">"flow-node-inventory:manufacturer":"Nicira, Inc."</var>
<status status="PASS" start="2026-05-25T01:52:31.284802" elapsed="0.002572"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.287574" elapsed="0.002305"/>
</kw>
<var name="${i}">"flow-node-inventory:ip-address":"10.30.171.68"</var>
<status status="PASS" start="2026-05-25T01:52:31.287456" elapsed="0.002464"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.290136" elapsed="0.002333"/>
</kw>
<var name="${i}">"flow-node-inventory:hardware":"Open vSwitch"</var>
<status status="PASS" start="2026-05-25T01:52:31.290002" elapsed="0.002508"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.292710" elapsed="0.002317"/>
</kw>
<var name="${i}">openflow:1:1</var>
<status status="PASS" start="2026-05-25T01:52:31.292592" elapsed="0.002494"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.295310" elapsed="0.002429"/>
</kw>
<var name="${i}">openflow:1:2</var>
<status status="PASS" start="2026-05-25T01:52:31.295171" elapsed="0.002609"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-05-25T01:52:31.274039" elapsed="0.023771"/>
</for>
<arg>${RFC8040_NODES_API}/node=openflow%3A1?${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>${list}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
${elements} is verified to exist in the response</doc>
<status status="PASS" start="2026-05-25T01:52:31.250669" elapsed="0.047199"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check For Elements At URI</arg>
<arg>${RFC8040_NODES_API}/node=openflow%3A1?${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>${list}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:31.244549" elapsed="0.053371"/>
</kw>
<doc>Get the inventory for a node</doc>
<status status="PASS" start="2026-05-25T01:52:31.243498" elapsed="0.054538"/>
</test>
<test id="s1-s2-s1-t4" name="Get node 2 inventory" line="60">
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.299161" level="INFO">${list} = ['"flow-node-inventory:flow-feature-capability-flow-stats"', '"flow-node-inventory:flow-feature-capability-table-stats"', '"flow-node-inventory:flow-feature-capability-port-stats"', '"flow-node-invent...</msg>
<var>${list}</var>
<arg>@{SW_CAPABILITIES}</arg>
<arg>${SW_VENDOR}</arg>
<arg>${SW_IPADDRESS}</arg>
<arg>${SW_HARDWARE}</arg>
<arg>openflow:2:1</arg>
<arg>openflow:2:2</arg>
<arg>openflow:2:3</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:52:31.298708" elapsed="0.000481"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:31.319167" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A2?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0qtnq13tjcp6kmshzb2yvi3bf4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:31.320687" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:node":[{"id":"openflow:2","flow-node-inventory:port-number":41430,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-5","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":11000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"2","active-flows":1,"packets-matched":"1"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendayl... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:31.320914" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:31.306047" elapsed="0.014894"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:31.321350" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:31.321031" elapsed="0.000377"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.323840" level="INFO">{"opendaylight-inventory:node":[{"id":"openflow:2","flow-node-inventory:port-number":41430,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-5","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":11000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"2","active-flows":1,"packets-matched":"1"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s2","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:52:29.313Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"4a:6c:77:39:fe:2f","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"2","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":282000000},"bytes":{"transmitted":"175","received":"265"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"c2:57:59:6b:04:40","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":273000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"6a:41:02:fb:a3:a6","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"2","received":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":282000000},"bytes":{"transmitted":"175","received":"90"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ae:c7:d1:65:49:a9","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"2","received":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":282000000},"bytes":{"transmitted":"175","received":"90"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:52:29.359Z"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:31.321555" elapsed="0.002905"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:31.321433" elapsed="0.003110"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:31.321007" elapsed="0.003585"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:31.324864" elapsed="0.000403"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.325940" elapsed="0.003663"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-flow-stats"</var>
<status status="PASS" start="2026-05-25T01:52:31.325678" elapsed="0.003967"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.329847" elapsed="0.002348"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-table-stats"</var>
<status status="PASS" start="2026-05-25T01:52:31.329727" elapsed="0.002509"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.332434" elapsed="0.002306"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-port-stats"</var>
<status status="PASS" start="2026-05-25T01:52:31.332318" elapsed="0.002463"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.334980" elapsed="0.002500"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-queue-stats"</var>
<status status="PASS" start="2026-05-25T01:52:31.334862" elapsed="0.002662"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.337764" elapsed="0.002371"/>
</kw>
<var name="${i}">"flow-node-inventory:manufacturer":"Nicira, Inc."</var>
<status status="PASS" start="2026-05-25T01:52:31.337643" elapsed="0.002534"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.340374" elapsed="0.002321"/>
</kw>
<var name="${i}">"flow-node-inventory:ip-address":"10.30.171.68"</var>
<status status="PASS" start="2026-05-25T01:52:31.340258" elapsed="0.002477"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.342932" elapsed="0.002358"/>
</kw>
<var name="${i}">"flow-node-inventory:hardware":"Open vSwitch"</var>
<status status="PASS" start="2026-05-25T01:52:31.342815" elapsed="0.002516"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.345529" elapsed="0.002380"/>
</kw>
<var name="${i}">openflow:2:1</var>
<status status="PASS" start="2026-05-25T01:52:31.345412" elapsed="0.002538"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.348166" elapsed="0.002312"/>
</kw>
<var name="${i}">openflow:2:2</var>
<status status="PASS" start="2026-05-25T01:52:31.348031" elapsed="0.002489"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.350718" elapsed="0.002361"/>
</kw>
<var name="${i}">openflow:2:3</var>
<status status="PASS" start="2026-05-25T01:52:31.350600" elapsed="0.002521"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-05-25T01:52:31.325392" elapsed="0.027759"/>
</for>
<arg>${RFC8040_NODES_API}/node=openflow%3A2?${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>${list}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
${elements} is verified to exist in the response</doc>
<status status="PASS" start="2026-05-25T01:52:31.305544" elapsed="0.047666"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check For Elements At URI</arg>
<arg>${RFC8040_NODES_API}/node=openflow%3A2?${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>${list}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:31.299383" elapsed="0.053877"/>
</kw>
<doc>Get the inventory for a node</doc>
<status status="PASS" start="2026-05-25T01:52:31.298306" elapsed="0.055073"/>
</test>
<test id="s1-s2-s1-t5" name="Get node 3 inventory" line="71">
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.354439" level="INFO">${list} = ['"flow-node-inventory:flow-feature-capability-flow-stats"', '"flow-node-inventory:flow-feature-capability-table-stats"', '"flow-node-inventory:flow-feature-capability-port-stats"', '"flow-node-invent...</msg>
<var>${list}</var>
<arg>@{SW_CAPABILITIES}</arg>
<arg>${SW_VENDOR}</arg>
<arg>${SW_IPADDRESS}</arg>
<arg>${SW_HARDWARE}</arg>
<arg>openflow:3:1</arg>
<arg>openflow:3:2</arg>
<arg>openflow:3:3</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:52:31.353985" elapsed="0.000482"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:31.373971" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A3?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0qtnq13tjcp6kmshzb2yvi3bf4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:31.375610" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:node":[{"id":"openflow:3","flow-node-inventory:port-number":41426,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-6","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"1","byte-count":"85","duration":{"second":0,"nanosecond":2000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"1","active-flows":1,"packets-matched":"1"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendayl... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:31.376128" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:31.361405" elapsed="0.014788"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:31.377027" elapsed="0.000090"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:31.376382" elapsed="0.000812"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.382756" level="INFO">{"opendaylight-inventory:node":[{"id":"openflow:3","flow-node-inventory:port-number":41426,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-6","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"1","byte-count":"85","duration":{"second":0,"nanosecond":2000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"1","active-flows":1,"packets-matched":"1"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s3","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:52:29.324Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"4a:69:0c:89:b4:e6","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":311000000},"bytes":{"transmitted":"351","received":"175"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"0e:6a:89:eb:22:9c","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"2","received":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":310000000},"bytes":{"transmitted":"175","received":"90"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"d6:19:d1:aa:3e:ae","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"2","received":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":311000000},"bytes":{"transmitted":"175","received":"90"},"receive-crc-error":"0"}},{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ee:69:e9:37:a9:40","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":291000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:52:29.366Z"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:31.377550" elapsed="0.006182"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:31.377251" elapsed="0.006572"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:31.376334" elapsed="0.007540"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:31.384192" elapsed="0.000187"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.384687" elapsed="0.002513"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-flow-stats"</var>
<status status="PASS" start="2026-05-25T01:52:31.384567" elapsed="0.002682"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.387457" elapsed="0.002395"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-table-stats"</var>
<status status="PASS" start="2026-05-25T01:52:31.387339" elapsed="0.002555"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.390116" elapsed="0.002347"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-port-stats"</var>
<status status="PASS" start="2026-05-25T01:52:31.389976" elapsed="0.002529"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.392705" elapsed="0.002375"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-queue-stats"</var>
<status status="PASS" start="2026-05-25T01:52:31.392588" elapsed="0.002536"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.395379" elapsed="0.002480"/>
</kw>
<var name="${i}">"flow-node-inventory:manufacturer":"Nicira, Inc."</var>
<status status="PASS" start="2026-05-25T01:52:31.395241" elapsed="0.002661"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.398134" elapsed="0.002364"/>
</kw>
<var name="${i}">"flow-node-inventory:ip-address":"10.30.171.68"</var>
<status status="PASS" start="2026-05-25T01:52:31.397984" elapsed="0.002555"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.400736" elapsed="0.002472"/>
</kw>
<var name="${i}">"flow-node-inventory:hardware":"Open vSwitch"</var>
<status status="PASS" start="2026-05-25T01:52:31.400619" elapsed="0.002632"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.403452" elapsed="0.002391"/>
</kw>
<var name="${i}">openflow:3:1</var>
<status status="PASS" start="2026-05-25T01:52:31.403335" elapsed="0.002550"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.406102" elapsed="0.002392"/>
</kw>
<var name="${i}">openflow:3:2</var>
<status status="PASS" start="2026-05-25T01:52:31.405967" elapsed="0.002569"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.408738" elapsed="0.002391"/>
</kw>
<var name="${i}">openflow:3:3</var>
<status status="PASS" start="2026-05-25T01:52:31.408619" elapsed="0.002557"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-05-25T01:52:31.384437" elapsed="0.026770"/>
</for>
<arg>${RFC8040_NODES_API}/node=openflow%3A3?${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>${list}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
${elements} is verified to exist in the response</doc>
<status status="PASS" start="2026-05-25T01:52:31.360871" elapsed="0.050396"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check For Elements At URI</arg>
<arg>${RFC8040_NODES_API}/node=openflow%3A3?${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>${list}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:31.354635" elapsed="0.056682"/>
</kw>
<doc>Get the inventory for a node</doc>
<status status="PASS" start="2026-05-25T01:52:31.353620" elapsed="0.057818"/>
</test>
<test id="s1-s2-s1-t6" name="Link Down" line="82">
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:52:31.413958" level="INFO">link s1 s2 down</msg>
<arg>link s1 s2 down</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:52:31.411958" elapsed="0.002056"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:52:31.419051" level="INFO">mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:52:31.414178" elapsed="0.004951"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.419556" level="INFO">@{list} = [ "link-down":true ]</msg>
<var>@{list}</var>
<arg>"link-down":true</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:52:31.419269" elapsed="0.000313"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:31.439711" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/node-connector=openflow%3A1%3A1?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/node-connector=openflow%3A1%3A1?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0qtnq13tjcp6kmshzb2yvi3bf4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:31.440196" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/node-connector=openflow%3A1%3A1?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '618'} 
 body={"opendaylight-inventory:node-connector":[{"id":"openflow:1:1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:maximum-speed":0,"flow-node-inventory:reason":"update","flow-node-inventory:configuration":"PORT-DOWN","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"12:d1:93:30:74:35","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:supported":"","flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true}}]} 
 </msg>
<msg time="2026-05-25T01:52:31.440334" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:31.426354" elapsed="0.014008"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:31.440739" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:31.440445" elapsed="0.000350"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.442934" level="INFO">{"opendaylight-inventory:node-connector":[{"id":"openflow:1:1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:maximum-speed":0,"flow-node-inventory:reason":"update","flow-node-inventory:configuration":"PORT-DOWN","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"12:d1:93:30:74:35","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:supported":"","flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:31.440946" elapsed="0.002040"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:31.440820" elapsed="0.002202"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:31.440423" elapsed="0.002622"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:31.443219" elapsed="0.000170"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.443690" elapsed="0.004242"/>
</kw>
<var name="${i}">"link-down":true</var>
<status status="PASS" start="2026-05-25T01:52:31.443574" elapsed="0.004449"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-05-25T01:52:31.443447" elapsed="0.004679"/>
</for>
<arg>${RFC8040_NODES_API}/node=openflow%3A1/node-connector=openflow%3A1%3A1?${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>${list}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
${elements} is verified to exist in the response</doc>
<status status="PASS" start="2026-05-25T01:52:31.425845" elapsed="0.022408"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check For Elements At URI</arg>
<arg>${RFC8040_NODES_API}/node=openflow%3A1/node-connector=openflow%3A1%3A1?${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>${list}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:31.419732" elapsed="0.028633"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:31.465502" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/node-connector=openflow%3A2%3A3?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/node-connector=openflow%3A2%3A3?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0qtnq13tjcp6kmshzb2yvi3bf4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:31.465962" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/node-connector=openflow%3A2%3A3?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '618'} 
 body={"opendaylight-inventory:node-connector":[{"id":"openflow:2:3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:maximum-speed":0,"flow-node-inventory:reason":"update","flow-node-inventory:configuration":"PORT-DOWN","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"4a:6c:77:39:fe:2f","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:supported":"","flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true}}]} 
 </msg>
<msg time="2026-05-25T01:52:31.466100" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:31.459512" elapsed="0.006629"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:31.466642" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:31.466254" elapsed="0.000480"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.469978" level="INFO">{"opendaylight-inventory:node-connector":[{"id":"openflow:2:3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:maximum-speed":0,"flow-node-inventory:reason":"update","flow-node-inventory:configuration":"PORT-DOWN","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"4a:6c:77:39:fe:2f","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:supported":"","flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:31.466937" elapsed="0.003112"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:31.466769" elapsed="0.003350"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:31.466226" elapsed="0.003924"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:31.470318" elapsed="0.000230"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.470961" elapsed="0.002878"/>
</kw>
<var name="${i}">"link-down":true</var>
<status status="PASS" start="2026-05-25T01:52:31.470799" elapsed="0.003097"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-05-25T01:52:31.470624" elapsed="0.003314"/>
</for>
<arg>${RFC8040_NODES_API}/node=openflow%3A2/node-connector=openflow%3A2%3A3?${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>${list}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
${elements} is verified to exist in the response</doc>
<status status="PASS" start="2026-05-25T01:52:31.458984" elapsed="0.015029"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check For Elements At URI</arg>
<arg>${RFC8040_NODES_API}/node=openflow%3A2/node-connector=openflow%3A2%3A3?${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>${list}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:31.448709" elapsed="0.025396"/>
</kw>
<doc>Take link s1-s2 down</doc>
<status status="PASS" start="2026-05-25T01:52:31.411618" elapsed="0.062649"/>
</test>
<test id="s1-s2-s1-t7" name="Link Up" line="100">
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:52:31.476647" level="INFO">link s1 s2 up</msg>
<arg>link s1 s2 up</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:52:31.475197" elapsed="0.001505"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:52:31.480756" level="INFO">mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:52:31.476843" elapsed="0.003967"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.481252" level="INFO">@{list} = [ "link-down":false ]</msg>
<var>@{list}</var>
<arg>"link-down":false</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:52:31.480950" elapsed="0.000329"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:31.497746" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/node-connector=openflow%3A1%3A1?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/node-connector=openflow%3A1%3A1?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0qtnq13tjcp6kmshzb2yvi3bf4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:31.498463" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/node-connector=openflow%3A1%3A1?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '609'} 
 body={"opendaylight-inventory:node-connector":[{"id":"openflow:1:1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:maximum-speed":0,"flow-node-inventory:reason":"update","flow-node-inventory:configuration":"","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"12:d1:93:30:74:35","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:supported":"","flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false}}]} 
 </msg>
<msg time="2026-05-25T01:52:31.498682" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:31.488050" elapsed="0.010689"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:31.499646" elapsed="0.000056"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:31.498918" elapsed="0.000853"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.504649" level="INFO">{"opendaylight-inventory:node-connector":[{"id":"openflow:1:1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:maximum-speed":0,"flow-node-inventory:reason":"update","flow-node-inventory:configuration":"","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"12:d1:93:30:74:35","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:supported":"","flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:31.500121" elapsed="0.004640"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:31.499826" elapsed="0.005010"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:31.498872" elapsed="0.006012"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:31.505178" elapsed="0.000366"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.506236" elapsed="0.003181"/>
</kw>
<var name="${i}">"link-down":false</var>
<status status="PASS" start="2026-05-25T01:52:31.505944" elapsed="0.003513"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-05-25T01:52:31.505664" elapsed="0.003823"/>
</for>
<arg>${RFC8040_NODES_API}/node=openflow%3A1/node-connector=openflow%3A1%3A1?${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>${list}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
${elements} is verified to exist in the response</doc>
<status status="PASS" start="2026-05-25T01:52:31.487560" elapsed="0.021981"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check For Elements At URI</arg>
<arg>${RFC8040_NODES_API}/node=openflow%3A1/node-connector=openflow%3A1%3A1?${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>${list}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:31.481429" elapsed="0.028161"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:31.522094" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/node-connector=openflow%3A2%3A3?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/node-connector=openflow%3A2%3A3?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0qtnq13tjcp6kmshzb2yvi3bf4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:31.522541" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/node-connector=openflow%3A2%3A3?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '609'} 
 body={"opendaylight-inventory:node-connector":[{"id":"openflow:2:3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:maximum-speed":0,"flow-node-inventory:reason":"update","flow-node-inventory:configuration":"","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"4a:6c:77:39:fe:2f","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:supported":"","flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false}}]} 
 </msg>
<msg time="2026-05-25T01:52:31.522638" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:31.516352" elapsed="0.006311"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:31.523045" elapsed="0.000045"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:31.522743" elapsed="0.000414"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.525288" level="INFO">{"opendaylight-inventory:node-connector":[{"id":"openflow:2:3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:maximum-speed":0,"flow-node-inventory:reason":"update","flow-node-inventory:configuration":"","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"4a:6c:77:39:fe:2f","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:supported":"","flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:31.523306" elapsed="0.002034"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:31.523184" elapsed="0.002191"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:31.522724" elapsed="0.002673"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:31.525516" elapsed="0.000164"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.525977" elapsed="0.002387"/>
</kw>
<var name="${i}">"link-down":false</var>
<status status="PASS" start="2026-05-25T01:52:31.525861" elapsed="0.002560"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-05-25T01:52:31.525735" elapsed="0.002728"/>
</for>
<arg>${RFC8040_NODES_API}/node=openflow%3A2/node-connector=openflow%3A2%3A3?${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>${list}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
${elements} is verified to exist in the response</doc>
<status status="PASS" start="2026-05-25T01:52:31.515847" elapsed="0.012690"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check For Elements At URI</arg>
<arg>${RFC8040_NODES_API}/node=openflow%3A2/node-connector=openflow%3A2%3A3?${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>${list}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:31.509745" elapsed="0.018861"/>
</kw>
<doc>Take link s1-s2 up</doc>
<status status="PASS" start="2026-05-25T01:52:31.474660" elapsed="0.054102"/>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-05-25T01:52:31.529443" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-05-25T01:52:31.529332" elapsed="0.000202"/>
</kw>
<doc>Test suite for RESTCONF inventory</doc>
<status status="PASS" start="2026-05-25T01:52:29.086632" elapsed="2.442948"/>
</suite>
<suite id="s1-s2-s2" name="020 Restconf Topology" source="/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/MD_SAL_NSF_OF13/020_restconf_topology.robot">
<kw name="Create Session" owner="RequestsLibrary" type="SETUP">
<msg time="2026-05-25T01:52:31.563833" level="INFO">Creating Session using : alias=session, url=http://10.30.170.200:8181, headers={'Content-Type': 'application/json'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7f5accba6ed0&gt;, timeout=None, proxies=None, verify=False,                     debug=0 </msg>
<arg>session</arg>
<arg>http://${ODL_SYSTEM_IP}:${RESTCONFPORT}</arg>
<arg>auth=${AUTH}</arg>
<arg>headers=${HEADERS}</arg>
<doc>Create Session: create a HTTP session to a server</doc>
<status status="PASS" start="2026-05-25T01:52:31.563480" elapsed="0.000526"/>
</kw>
<test id="s1-s2-s2-t1" name="Get RESTCONF Topology" line="20">
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:31.581927" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:31.582343" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node01h9f3sijh2bgl12cz3bijvsy4a5.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 24-May-2026 01:52:31 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3294'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:52:31.582622" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:31.571012" elapsed="0.011650"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:31.583345" elapsed="0.000040"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:31.582817" elapsed="0.000614"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.586678" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:31.583654" elapsed="0.003127"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:31.583469" elapsed="0.003366"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:31.582777" elapsed="0.004090"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:31.587119" elapsed="0.000257"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.587852" elapsed="0.003032"/>
</kw>
<var name="${i}">openflow:1</var>
<status status="PASS" start="2026-05-25T01:52:31.587666" elapsed="0.003349"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.591350" elapsed="0.002915"/>
</kw>
<var name="${i}">openflow:2</var>
<status status="PASS" start="2026-05-25T01:52:31.591174" elapsed="0.003149"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.594599" elapsed="0.002926"/>
</kw>
<var name="${i}">openflow:3</var>
<status status="PASS" start="2026-05-25T01:52:31.594437" elapsed="0.003144"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-05-25T01:52:31.587466" elapsed="0.010157"/>
</for>
<arg>${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>${node_list}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
${elements} is verified to exist in the response</doc>
<status status="PASS" start="2026-05-25T01:52:31.570572" elapsed="0.027134"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check For Elements At URI</arg>
<arg>${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>${node_list}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:31.564601" elapsed="0.033177"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:31.606161" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Cookie': 'JSESSIONID=node01h9f3sijh2bgl12cz3bijvsy4a5.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:31.606466" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3294'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:52:31.606691" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:31.597971" elapsed="0.008758"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.609756" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:31.606957" elapsed="0.002896"/>
</kw>
<doc>Get RESTCONF Topology and validate the result.</doc>
<status status="PASS" start="2026-05-25T01:52:31.564135" elapsed="0.045881"/>
</test>
<test id="s1-s2-s2-t2" name="List all the links" line="31">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.611521" level="INFO">${body1} = {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:2'}</msg>
<var>${body1}</var>
<arg>dest-node=openflow:1</arg>
<arg>dest-tp=openflow:1:2</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:31.611037" elapsed="0.000523"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.612226" level="INFO">${body2} = {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}</msg>
<var>${body2}</var>
<arg>source-node=openflow:3</arg>
<arg>source-tp=openflow:3:3</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:31.611770" elapsed="0.000493"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.613025" level="INFO">${link2} = {'link-id': 'openflow:3:3', 'destination': {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:2'}, 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}}</msg>
<var>${link2}</var>
<arg>link-id=openflow:3:3</arg>
<arg>destination=${body1}</arg>
<arg>source=${body2}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:31.612472" elapsed="0.000594"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.613755" level="INFO">${link2} = {'link-id': 'openflow:3:3', 'destination': {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:2'}, 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}}</msg>
<arg>${link2}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:31.613309" elapsed="0.000505"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.614493" level="INFO">${body1} = {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:1'}</msg>
<var>${body1}</var>
<arg>dest-node=openflow:1</arg>
<arg>dest-tp=openflow:1:1</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:31.614015" elapsed="0.000530"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.615239" level="INFO">${body2} = {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}</msg>
<var>${body2}</var>
<arg>source-node=openflow:2</arg>
<arg>source-tp=openflow:2:3</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:31.614760" elapsed="0.000517"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.616031" level="INFO">${link1} = {'link-id': 'openflow:2:3', 'destination': {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:1'}, 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}}</msg>
<var>${link1}</var>
<arg>link-id=openflow:2:3</arg>
<arg>destination=${body1}</arg>
<arg>source=${body2}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:31.615481" elapsed="0.000606"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.616740" level="INFO">${link1} = {'link-id': 'openflow:2:3', 'destination': {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:1'}, 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}}</msg>
<arg>${link1}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:31.616307" elapsed="0.000492"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.617443" level="INFO">${body1} = {'dest-node': 'openflow:3', 'dest-tp': 'openflow:3:3'}</msg>
<var>${body1}</var>
<arg>dest-node=openflow:3</arg>
<arg>dest-tp=openflow:3:3</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:31.616995" elapsed="0.000484"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.618167" level="INFO">${body2} = {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}</msg>
<var>${body2}</var>
<arg>source-node=openflow:1</arg>
<arg>source-tp=openflow:1:2</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:31.617724" elapsed="0.000480"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.618981" level="INFO">${link4} = {'link-id': 'openflow:1:2', 'destination': {'dest-node': 'openflow:3', 'dest-tp': 'openflow:3:3'}, 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}}</msg>
<var>${link4}</var>
<arg>link-id=openflow:1:2</arg>
<arg>destination=${body1}</arg>
<arg>source=${body2}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:31.618409" elapsed="0.000611"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.619681" level="INFO">${link4} = {'link-id': 'openflow:1:2', 'destination': {'dest-node': 'openflow:3', 'dest-tp': 'openflow:3:3'}, 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}}</msg>
<arg>${link4}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:31.619257" elapsed="0.000482"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.620380" level="INFO">${body1} = {'dest-node': 'openflow:2', 'dest-tp': 'openflow:2:3'}</msg>
<var>${body1}</var>
<arg>dest-node=openflow:2</arg>
<arg>dest-tp=openflow:2:3</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:31.619936" elapsed="0.000480"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.621026" level="INFO">${body2} = {'source-node': 'openflow:1', 'source-tp': 'openflow:1:1'}</msg>
<var>${body2}</var>
<arg>source-node=openflow:1</arg>
<arg>source-tp=openflow:1:1</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:31.620617" elapsed="0.000445"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.621825" level="INFO">${link3} = {'link-id': 'openflow:1:1', 'destination': {'dest-node': 'openflow:2', 'dest-tp': 'openflow:2:3'}, 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:1'}}</msg>
<var>${link3}</var>
<arg>link-id=openflow:1:1</arg>
<arg>destination=${body1}</arg>
<arg>source=${body2}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:31.621286" elapsed="0.000575"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.622527" level="INFO">${link3} = {'link-id': 'openflow:1:1', 'destination': {'dest-node': 'openflow:2', 'dest-tp': 'openflow:2:3'}, 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:1'}}</msg>
<arg>${link3}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:31.622103" elapsed="0.000481"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.623370" level="INFO">${links} = [{'link-id': 'openflow:2:3', 'destination': {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:1'}, 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}}, {'link-id': 'openflow:3:3', '...</msg>
<var>${links}</var>
<arg>${link1}</arg>
<arg>${link2}</arg>
<arg>${link3}</arg>
<arg>${link4}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:52:31.622774" elapsed="0.000634"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Verify Links">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:31.641647" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology/topology=flow%3A1?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology/topology=flow%3A1?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Cookie': 'JSESSIONID=node01h9f3sijh2bgl12cz3bijvsy4a5.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:31.642237" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology/topology=flow%3A1?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3128'} 
 body={"network-topology:topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]}]} 
 </msg>
<msg time="2026-05-25T01:52:31.642573" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_FLOW1_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:31.626424" elapsed="0.016209"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.648009" level="INFO">{"network-topology:topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:31.643210" elapsed="0.004984"/>
</kw>
<kw name="Json Parse From String" owner="Utils">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.653443" level="INFO">${json_data} = {'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connecto...</msg>
<var>${json_data}</var>
<arg>json.loads('''${plain_string_with_json}''')</arg>
<arg>json</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:52:31.652671" elapsed="0.000813"/>
</kw>
<return>
<value>${json_data}</value>
<status status="PASS" start="2026-05-25T01:52:31.653560" elapsed="0.000061"/>
</return>
<msg time="2026-05-25T01:52:31.653862" level="INFO">${result} = {'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connecto...</msg>
<var>${result}</var>
<arg>${resp.text}</arg>
<doc>Parse given plain string into json (dictionary)</doc>
<status status="PASS" start="2026-05-25T01:52:31.648665" elapsed="0.005235"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.654518" level="INFO">{'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"}, {'tp-id': 'openflow:2:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"}, {'tp-id': 'openflow:2:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"}, {'tp-id': 'openflow:2:3', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']"}, {'node-id': 'openflow:3', 'termination-point': [{'tp-id': 'openflow:3:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}, {'tp-id': 'openflow:3:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"}, {'tp-id': 'openflow:3:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"}, {'tp-id': 'openflow:3:3', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']"}, {'node-id': 'openflow:1', 'termination-point': [{'tp-id': 'openflow:1:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"}, {'tp-id': 'openflow:1:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"}, {'tp-id': 'openflow:1:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']"}], 'link': [{'link-id': 'openflow:2:3', 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}, 'destination': {'dest-tp': 'openflow:1:1', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:3:3', 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}, 'destination': {'dest-tp': 'openflow:1:2', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:1:1', 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:1'}, 'destination': {'dest-tp': 'openflow:2:3', 'dest-node': 'openflow:2'}}, {'link-id': 'openflow:1:2', 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}, 'destination': {'dest-tp': 'openflow:3:3', 'dest-node': 'openflow:3'}}]}]}</msg>
<arg>${result}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:31.654115" elapsed="0.000497"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:52:31.655231" level="INFO">${content} = [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-invento...</msg>
<var>${content}</var>
<arg>${result}</arg>
<arg>network-topology:topology</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:52:31.654890" elapsed="0.000379"/>
</kw>
<kw name="Get From List" owner="Collections">
<msg time="2026-05-25T01:52:31.655784" level="INFO">${topology} = {'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventor...</msg>
<var>${topology}</var>
<arg>${content}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="PASS" start="2026-05-25T01:52:31.655466" elapsed="0.000355"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:52:31.656304" level="INFO">${links} = [{'link-id': 'openflow:2:3', 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}, 'destination': {'dest-tp': 'openflow:1:1', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:3:3', '...</msg>
<var>${links}</var>
<arg>${topology}</arg>
<arg>link</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:52:31.656014" elapsed="0.000327"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${links}</arg>
<arg>${expected_link}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.656807" elapsed="0.000537"/>
</kw>
<var name="${expected_link}">{'link-id': 'openflow:2:3', 'destination': {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:1'}, 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}}</var>
<status status="PASS" start="2026-05-25T01:52:31.656642" elapsed="0.000758"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${links}</arg>
<arg>${expected_link}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.657690" elapsed="0.000453"/>
</kw>
<var name="${expected_link}">{'link-id': 'openflow:3:3', 'destination': {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:2'}, 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}}</var>
<status status="PASS" start="2026-05-25T01:52:31.657529" elapsed="0.000668"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${links}</arg>
<arg>${expected_link}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.658482" elapsed="0.000444"/>
</kw>
<var name="${expected_link}">{'link-id': 'openflow:1:1', 'destination': {'dest-node': 'openflow:2', 'dest-tp': 'openflow:2:3'}, 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:1'}}</var>
<status status="PASS" start="2026-05-25T01:52:31.658323" elapsed="0.000657"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${links}</arg>
<arg>${expected_link}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.659311" elapsed="0.000429"/>
</kw>
<var name="${expected_link}">{'link-id': 'openflow:1:2', 'destination': {'dest-node': 'openflow:3', 'dest-tp': 'openflow:3:3'}, 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}}</var>
<status status="PASS" start="2026-05-25T01:52:31.659150" elapsed="0.000644"/>
</iter>
<var>${expected_link}</var>
<value>@{expected_links}</value>
<status status="PASS" start="2026-05-25T01:52:31.656429" elapsed="0.003406"/>
</for>
<arg>${links}</arg>
<status status="PASS" start="2026-05-25T01:52:31.626011" elapsed="0.033899"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Verify Links</arg>
<arg>${links}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:31.623623" elapsed="0.036348"/>
</kw>
<doc>List all the links in the topology.</doc>
<status status="PASS" start="2026-05-25T01:52:31.610422" elapsed="0.049738"/>
</test>
<test id="s1-s2-s2-t3" name="Link Down" line="52">
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:52:31.662673" level="INFO">link s1 s2 down</msg>
<arg>link s1 s2 down</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:52:31.661102" elapsed="0.001627"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:52:31.667391" level="INFO">mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:52:31.662888" elapsed="0.004557"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.667912" level="INFO">${links} = [{'link-id': 'openflow:3:3', 'destination': {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:2'}, 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}}, {'link-id': 'openflow:1:2', '...</msg>
<var>${links}</var>
<arg>${link2}</arg>
<arg>${link4}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:52:31.667585" elapsed="0.000354"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Verify Links">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:31.681055" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology/topology=flow%3A1?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology/topology=flow%3A1?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Cookie': 'JSESSIONID=node01h9f3sijh2bgl12cz3bijvsy4a5.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:31.681572" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology/topology=flow%3A1?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '2812'} 
 body={"network-topology:topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]}]} 
 </msg>
<msg time="2026-05-25T01:52:31.681897" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_FLOW1_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:31.668917" elapsed="0.013038"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.687367" level="INFO">{"network-topology:topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:31.682312" elapsed="0.005203"/>
</kw>
<kw name="Json Parse From String" owner="Utils">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.692377" level="INFO">${json_data} = {'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connecto...</msg>
<var>${json_data}</var>
<arg>json.loads('''${plain_string_with_json}''')</arg>
<arg>json</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:52:31.691891" elapsed="0.000515"/>
</kw>
<return>
<value>${json_data}</value>
<status status="PASS" start="2026-05-25T01:52:31.692457" elapsed="0.000033"/>
</return>
<msg time="2026-05-25T01:52:31.692649" level="INFO">${result} = {'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connecto...</msg>
<var>${result}</var>
<arg>${resp.text}</arg>
<doc>Parse given plain string into json (dictionary)</doc>
<status status="PASS" start="2026-05-25T01:52:31.687929" elapsed="0.004746"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.693113" level="INFO">{'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"}, {'tp-id': 'openflow:2:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"}, {'tp-id': 'openflow:2:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"}, {'tp-id': 'openflow:2:3', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']"}, {'node-id': 'openflow:3', 'termination-point': [{'tp-id': 'openflow:3:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}, {'tp-id': 'openflow:3:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"}, {'tp-id': 'openflow:3:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"}, {'tp-id': 'openflow:3:3', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']"}, {'node-id': 'openflow:1', 'termination-point': [{'tp-id': 'openflow:1:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"}, {'tp-id': 'openflow:1:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"}, {'tp-id': 'openflow:1:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']"}], 'link': [{'link-id': 'openflow:3:3', 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}, 'destination': {'dest-tp': 'openflow:1:2', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:1:2', 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}, 'destination': {'dest-tp': 'openflow:3:3', 'dest-node': 'openflow:3'}}]}]}</msg>
<arg>${result}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:31.692811" elapsed="0.000369"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:52:31.693533" level="INFO">${content} = [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-invento...</msg>
<var>${content}</var>
<arg>${result}</arg>
<arg>network-topology:topology</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:52:31.693315" elapsed="0.000247"/>
</kw>
<kw name="Get From List" owner="Collections">
<msg time="2026-05-25T01:52:31.693949" level="INFO">${topology} = {'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventor...</msg>
<var>${topology}</var>
<arg>${content}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="PASS" start="2026-05-25T01:52:31.693729" elapsed="0.000247"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:52:31.694322" level="INFO">${links} = [{'link-id': 'openflow:3:3', 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}, 'destination': {'dest-tp': 'openflow:1:2', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:1:2', '...</msg>
<var>${links}</var>
<arg>${topology}</arg>
<arg>link</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:52:31.694130" elapsed="0.000220"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${links}</arg>
<arg>${expected_link}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.694665" elapsed="0.000340"/>
</kw>
<var name="${expected_link}">{'link-id': 'openflow:3:3', 'destination': {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:2'}, 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}}</var>
<status status="PASS" start="2026-05-25T01:52:31.694551" elapsed="0.000494"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${links}</arg>
<arg>${expected_link}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.695279" elapsed="0.000315"/>
</kw>
<var name="${expected_link}">{'link-id': 'openflow:1:2', 'destination': {'dest-node': 'openflow:3', 'dest-tp': 'openflow:3:3'}, 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}}</var>
<status status="PASS" start="2026-05-25T01:52:31.695162" elapsed="0.000471"/>
</iter>
<var>${expected_link}</var>
<value>@{expected_links}</value>
<status status="PASS" start="2026-05-25T01:52:31.694406" elapsed="0.001258"/>
</for>
<arg>${links}</arg>
<status status="PASS" start="2026-05-25T01:52:31.668620" elapsed="0.027098"/>
</kw>
<arg>60s</arg>
<arg>2s</arg>
<arg>Verify Links</arg>
<arg>${links}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:31.668113" elapsed="0.027647"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:52:31.697436" level="INFO">sh ovs-vsctl find Interface name="s1-eth1"</msg>
<arg>sh ovs-vsctl find Interface name="s1-eth1"</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:52:31.695894" elapsed="0.001597"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:52:31.719718" level="INFO">_uuid               : e4d65927-fda3-41de-9be1-4282a697dbe0
admin_state         : down
bfd                 : {}
bfd_status          : {}
cfm_fault           : []
cfm_fault_status    : []
cfm_flap_count      : []
cfm_health          : []
cfm_mpid            : []
cfm_remote_mpids    : []
cfm_remote_opstate  : []
duplex              : full
error               : []
external_ids        : {}
ifindex             : 16
ingress_policing_burst: 0
ingress_policing_kpkts_burst: 0
ingress_policing_kpkts_rate: 0
ingress_policing_rate: 0
lacp_current        : []
link_resets         : 5
link_speed          : 10000000000
link_state          : down
lldp                : {}
mac                 : []
mac_in_use          : "12:d1:93:30:74:35"
mtu                 : 1500
mtu_request         : []
name                : s1-eth1
ofport              : 1
ofport_request      : 1
options             : {}
other_config        : {}
statistics          : {collisions=0, rx_bytes=511, rx_crc_err=0, rx_dropped=0, rx_errors=0, rx_frame_err=0, rx_missed_errors=0, rx_multicast_packets=0, rx_over_err=0, rx_packets=6, tx_bytes=511, tx_dropped=0, tx_errors=0, tx_packets=6}
status              : {driver_name=veth, driver_version="1.0", firmware_version=""}
type                : ""
mininet&gt;</msg>
<msg time="2026-05-25T01:52:31.719823" level="INFO">${output} = _uuid               : e4d65927-fda3-41de-9be1-4282a697dbe0
admin_state         : down
bfd                 : {}
bfd_status          : {}
cfm_fault           : []
cfm_fault_status    : []
cfm_flap...</msg>
<var>${output}</var>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:52:31.697632" elapsed="0.022218"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.720255" level="INFO">_uuid               : e4d65927-fda3-41de-9be1-4282a697dbe0
admin_state         : down
bfd                 : {}
bfd_status          : {}
cfm_fault           : []
cfm_fault_status    : []
cfm_flap_count      : []
cfm_health          : []
cfm_mpid            : []
cfm_remote_mpids    : []
cfm_remote_opstate  : []
duplex              : full
error               : []
external_ids        : {}
ifindex             : 16
ingress_policing_burst: 0
ingress_policing_kpkts_burst: 0
ingress_policing_kpkts_rate: 0
ingress_policing_rate: 0
lacp_current        : []
link_resets         : 5
link_speed          : 10000000000
link_state          : down
lldp                : {}
mac                 : []
mac_in_use          : "12:d1:93:30:74:35"
mtu                 : 1500
mtu_request         : []
name                : s1-eth1
ofport              : 1
ofport_request      : 1
options             : {}
other_config        : {}
statistics          : {collisions=0, rx_bytes=511, rx_crc_err=0, rx_dropped=0, rx_errors=0, rx_frame_err=0, rx_missed_errors=0, rx_multicast_packets=0, rx_over_err=0, rx_packets=6, tx_bytes=511, tx_dropped=0, tx_errors=0, tx_packets=6}
status              : {driver_name=veth, driver_version="1.0", firmware_version=""}
type                : ""
mininet&gt;</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:31.719989" elapsed="0.000323"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:52:31.721827" level="INFO">sh ovs-vsctl find Interface name="s1-eth2"</msg>
<arg>sh ovs-vsctl find Interface name="s1-eth2"</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:52:31.720443" elapsed="0.001438"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:52:31.740370" level="INFO">_uuid               : 6f4727fd-1518-43bc-80c8-46bbba982e0a
admin_state         : up
bfd                 : {}
bfd_status          : {}
cfm_fault           : []
cfm_fault_status    : []
cfm_flap_count      : []
cfm_health          : []
cfm_mpid            : []
cfm_remote_mpids    : []
cfm_remote_opstate  : []
duplex              : full
error               : []
external_ids        : {}
ifindex             : 18
ingress_policing_burst: 0
ingress_policing_kpkts_burst: 0
ingress_policing_kpkts_rate: 0
ingress_policing_rate: 0
lacp_current        : []
link_resets         : 0
link_speed          : 10000000000
link_state          : up
lldp                : {}
mac                 : []
mac_in_use          : "de:e7:a0:f9:6b:41"
mtu                 : 1500
mtu_request         : []
name                : s1-eth2
ofport              : 2
ofport_request      : 2
options             : {}
other_config        : {}
statistics          : {collisions=0, rx_bytes=601, rx_crc_err=0, rx_dropped=0, rx_errors=0, rx_frame_err=0, rx_missed_errors=0, rx_multicast_packets=0, rx_over_err=0, rx_packets=7, tx_bytes=511, tx_dropped=0, tx_errors=0, tx_packets=6}
status              : {driver_name=veth, driver_version="1.0", firmware_version=""}
type                : ""
mininet&gt;</msg>
<msg time="2026-05-25T01:52:31.740508" level="INFO">${output} = _uuid               : 6f4727fd-1518-43bc-80c8-46bbba982e0a
admin_state         : up
bfd                 : {}
bfd_status          : {}
cfm_fault           : []
cfm_fault_status    : []
cfm_flap_c...</msg>
<var>${output}</var>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:52:31.722020" elapsed="0.018516"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.740928" level="INFO">_uuid               : 6f4727fd-1518-43bc-80c8-46bbba982e0a
admin_state         : up
bfd                 : {}
bfd_status          : {}
cfm_fault           : []
cfm_fault_status    : []
cfm_flap_count      : []
cfm_health          : []
cfm_mpid            : []
cfm_remote_mpids    : []
cfm_remote_opstate  : []
duplex              : full
error               : []
external_ids        : {}
ifindex             : 18
ingress_policing_burst: 0
ingress_policing_kpkts_burst: 0
ingress_policing_kpkts_rate: 0
ingress_policing_rate: 0
lacp_current        : []
link_resets         : 0
link_speed          : 10000000000
link_state          : up
lldp                : {}
mac                 : []
mac_in_use          : "de:e7:a0:f9:6b:41"
mtu                 : 1500
mtu_request         : []
name                : s1-eth2
ofport              : 2
ofport_request      : 2
options             : {}
other_config        : {}
statistics          : {collisions=0, rx_bytes=601, rx_crc_err=0, rx_dropped=0, rx_errors=0, rx_frame_err=0, rx_missed_errors=0, rx_multicast_packets=0, rx_over_err=0, rx_packets=7, tx_bytes=511, tx_dropped=0, tx_errors=0, tx_packets=6}
status              : {driver_name=veth, driver_version="1.0", firmware_version=""}
type                : ""
mininet&gt;</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:31.740678" elapsed="0.000307"/>
</kw>
<doc>Take link s1-s2 down</doc>
<status status="PASS" start="2026-05-25T01:52:31.660557" elapsed="0.080559"/>
</test>
<test id="s1-s2-s2-t4" name="Link Up" line="69">
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:52:31.742941" level="INFO">link s1 s2 up</msg>
<arg>link s1 s2 up</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:52:31.741749" elapsed="0.001249"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:52:31.755783" level="INFO">mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:52:31.743155" elapsed="0.012769"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.757266" level="INFO">${links} = [{'link-id': 'openflow:2:3', 'destination': {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:1'}, 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}}, {'link-id': 'openflow:3:3', '...</msg>
<var>${links}</var>
<arg>${link1}</arg>
<arg>${link2}</arg>
<arg>${link3}</arg>
<arg>${link4}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:52:31.756298" elapsed="0.001031"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Verify Links">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:31.765384" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology/topology=flow%3A1?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology/topology=flow%3A1?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Cookie': 'JSESSIONID=node01h9f3sijh2bgl12cz3bijvsy4a5.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:31.765619" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology/topology=flow%3A1?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3128'} 
 body={"network-topology:topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]}]} 
 </msg>
<msg time="2026-05-25T01:52:31.765740" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_FLOW1_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:31.759330" elapsed="0.006435"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.768254" level="INFO">{"network-topology:topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"},{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","dest-node":"openflow:1"}},{"link-id":"openflow:3:3","source":{"source-node":"openflow:3","source-tp":"openflow:3:3"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:1:1","source":{"source-node":"openflow:1","source-tp":"openflow:1:1"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:3:3","dest-node":"openflow:3"}}]}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:31.765916" elapsed="0.002449"/>
</kw>
<kw name="Json Parse From String" owner="Utils">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.771269" level="INFO">${json_data} = {'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connecto...</msg>
<var>${json_data}</var>
<arg>json.loads('''${plain_string_with_json}''')</arg>
<arg>json</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:52:31.770678" elapsed="0.000632"/>
</kw>
<return>
<value>${json_data}</value>
<status status="PASS" start="2026-05-25T01:52:31.771383" elapsed="0.000050"/>
</return>
<msg time="2026-05-25T01:52:31.771667" level="INFO">${result} = {'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connecto...</msg>
<var>${result}</var>
<arg>${resp.text}</arg>
<doc>Parse given plain string into json (dictionary)</doc>
<status status="PASS" start="2026-05-25T01:52:31.768566" elapsed="0.003139"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.772323" level="INFO">{'network-topology:topology': [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"}, {'tp-id': 'openflow:2:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"}, {'tp-id': 'openflow:2:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"}, {'tp-id': 'openflow:2:3', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:2']"}, {'node-id': 'openflow:3', 'termination-point': [{'tp-id': 'openflow:3:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}, {'tp-id': 'openflow:3:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"}, {'tp-id': 'openflow:3:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"}, {'tp-id': 'openflow:3:3', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:3']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:3']"}, {'node-id': 'openflow:1', 'termination-point': [{'tp-id': 'openflow:1:2', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"}, {'tp-id': 'openflow:1:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"}, {'tp-id': 'openflow:1:1', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}], 'opendaylight-topology-inventory:inventory-node-ref': "/opendaylight-inventory:nodes/node[id='openflow:1']"}], 'link': [{'link-id': 'openflow:2:3', 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}, 'destination': {'dest-tp': 'openflow:1:1', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:3:3', 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}, 'destination': {'dest-tp': 'openflow:1:2', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:1:1', 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:1'}, 'destination': {'dest-tp': 'openflow:2:3', 'dest-node': 'openflow:2'}}, {'link-id': 'openflow:1:2', 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}, 'destination': {'dest-tp': 'openflow:3:3', 'dest-node': 'openflow:3'}}]}]}</msg>
<arg>${result}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:31.771894" elapsed="0.000524"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:52:31.772917" level="INFO">${content} = [{'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-invento...</msg>
<var>${content}</var>
<arg>${result}</arg>
<arg>network-topology:topology</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:52:31.772610" elapsed="0.000346"/>
</kw>
<kw name="Get From List" owner="Collections">
<msg time="2026-05-25T01:52:31.773484" level="INFO">${topology} = {'topology-id': 'flow:1', 'node': [{'node-id': 'openflow:2', 'termination-point': [{'tp-id': 'openflow:2:LOCAL', 'opendaylight-topology-inventory:inventory-node-connector-ref': "/opendaylight-inventor...</msg>
<var>${topology}</var>
<arg>${content}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="PASS" start="2026-05-25T01:52:31.773175" elapsed="0.000346"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:52:31.773976" level="INFO">${links} = [{'link-id': 'openflow:2:3', 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}, 'destination': {'dest-tp': 'openflow:1:1', 'dest-node': 'openflow:1'}}, {'link-id': 'openflow:3:3', '...</msg>
<var>${links}</var>
<arg>${topology}</arg>
<arg>link</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:52:31.773714" elapsed="0.000299"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${links}</arg>
<arg>${expected_link}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.774495" elapsed="0.000477"/>
</kw>
<var name="${expected_link}">{'link-id': 'openflow:2:3', 'destination': {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:1'}, 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}}</var>
<status status="PASS" start="2026-05-25T01:52:31.774333" elapsed="0.000694"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${links}</arg>
<arg>${expected_link}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.775347" elapsed="0.000435"/>
</kw>
<var name="${expected_link}">{'link-id': 'openflow:3:3', 'destination': {'dest-node': 'openflow:1', 'dest-tp': 'openflow:1:2'}, 'source': {'source-node': 'openflow:3', 'source-tp': 'openflow:3:3'}}</var>
<status status="PASS" start="2026-05-25T01:52:31.775186" elapsed="0.000651"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${links}</arg>
<arg>${expected_link}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.776152" elapsed="0.000435"/>
</kw>
<var name="${expected_link}">{'link-id': 'openflow:1:1', 'destination': {'dest-node': 'openflow:2', 'dest-tp': 'openflow:2:3'}, 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:1'}}</var>
<status status="PASS" start="2026-05-25T01:52:31.775963" elapsed="0.000679"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${links}</arg>
<arg>${expected_link}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.776985" elapsed="0.000459"/>
</kw>
<var name="${expected_link}">{'link-id': 'openflow:1:2', 'destination': {'dest-node': 'openflow:3', 'dest-tp': 'openflow:3:3'}, 'source': {'source-node': 'openflow:1', 'source-tp': 'openflow:1:2'}}</var>
<status status="PASS" start="2026-05-25T01:52:31.776820" elapsed="0.000680"/>
</iter>
<var>${expected_link}</var>
<value>@{expected_links}</value>
<status status="PASS" start="2026-05-25T01:52:31.774126" elapsed="0.003416"/>
</for>
<arg>${links}</arg>
<status status="PASS" start="2026-05-25T01:52:31.758894" elapsed="0.018723"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Verify Links</arg>
<arg>${links}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:31.757676" elapsed="0.020000"/>
</kw>
<doc>Take link s1-s2 up</doc>
<status status="PASS" start="2026-05-25T01:52:31.741368" elapsed="0.036649"/>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-05-25T01:52:31.778822" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-05-25T01:52:31.778710" elapsed="0.000203"/>
</kw>
<doc>Test suite for RESTCONF Topology</doc>
<status status="PASS" start="2026-05-25T01:52:31.530493" elapsed="0.248466"/>
</suite>
<suite id="s1-s2-s3" name="030 Restconf Statistics" source="/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/MD_SAL_NSF_OF13/030_restconf_statistics.robot">
<kw name="Create Session" owner="RequestsLibrary" type="SETUP">
<msg time="2026-05-25T01:52:31.811369" level="INFO">Creating Session using : alias=session, url=http://10.30.170.200:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7f5ace4d2f50&gt;, timeout=None, proxies=None, verify=False,                     debug=0 </msg>
<arg>session</arg>
<arg>http://${ODL_SYSTEM_IP}:${RESTCONFPORT}</arg>
<arg>auth=${AUTH}</arg>
<arg>headers=${HEADERS_XML}</arg>
<doc>Create Session: create a HTTP session to a server</doc>
<status status="PASS" start="2026-05-25T01:52:31.811019" elapsed="0.000522"/>
</kw>
<test id="s1-s2-s3-t1" name="Get Stats for all nodes" line="20">
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:31.836574" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:31.839513" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node01bv4d41zmsb2l1g1h0mx6y0tr26.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 24-May-2026 01:52:31 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":41426,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-6","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"1","byte-count":"85","duration":{"second":0,"nanosecond":2000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"1","active-flows":1,"packets-matched":"1"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:31.839977" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:31.818590" elapsed="0.021447"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:31.840926" elapsed="0.000056"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:31.840271" elapsed="0.000783"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:31.846574" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":41426,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-6","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"1","byte-count":"85","duration":{"second":0,"nanosecond":2000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"1","active-flows":1,"packets-matched":"1"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s3","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:52:29.324Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"4a:69:0c:89:b4:e6","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"4","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":311000000},"bytes":{"transmitted":"351","received":"175"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"0e:6a:89:eb:22:9c","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"2","received":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":310000000},"bytes":{"transmitted":"175","received":"90"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"d6:19:d1:aa:3e:ae","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"2","received":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":311000000},"bytes":{"transmitted":"175","received":"90"},"receive-crc-error":"0"}},{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ee:69:e9:37:a9:40","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":291000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:52:29.366Z"}},{"id":"openflow:1","flow-node-inventory:port-number":41420,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-7","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"2","byte-count":"170","duration":{"second":0,"nanosecond":12000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"3","active-flows":1,"packets-matched":"2"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s1","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:52:29.314Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:maximum-speed":0,"flow-node-inventory:reason":"update","flow-node-inventory:configuration":"","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"12:d1:93:30:74:35","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:supported":"","flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ce:33:6d:71:65:40","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":303000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"de:e7:a0:f9:6b:41","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"2","received":"4"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":312000000},"bytes":{"transmitted":"175","received":"351"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:52:29.363Z"}},{"id":"openflow:2","flow-node-inventory:port-number":41430,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-5","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":11000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"2","active-flows":1,"packets-matched":"1"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s2","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:52:29.313Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:maximum-speed":0,"flow-node-inventory:reason":"update","flow-node-inventory:configuration":"","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"4a:6c:77:39:fe:2f","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:supported":"","flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"c2:57:59:6b:04:40","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":273000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"6a:41:02:fb:a3:a6","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"2","received":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":282000000},"bytes":{"transmitted":"175","received":"90"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ae:c7:d1:65:49:a9","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"2","received":"1"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":282000000},"bytes":{"transmitted":"175","received":"90"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:52:29.359Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:31.841449" elapsed="0.006504"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:31.841144" elapsed="0.006846"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:31.840217" elapsed="0.007796"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:31.848154" elapsed="0.000171"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.848646" elapsed="0.002666"/>
</kw>
<var name="${i}">openflow:1</var>
<status status="PASS" start="2026-05-25T01:52:31.848522" elapsed="0.002833"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.851559" elapsed="0.002413"/>
</kw>
<var name="${i}">openflow:2</var>
<status status="PASS" start="2026-05-25T01:52:31.851440" elapsed="0.002573"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.854237" elapsed="0.002338"/>
</kw>
<var name="${i}">openflow:3</var>
<status status="PASS" start="2026-05-25T01:52:31.854115" elapsed="0.002502"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-05-25T01:52:31.848385" elapsed="0.008262"/>
</for>
<arg>${RFC8040_OPERATIONAL_NODES_API}</arg>
<arg>${node_list}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
${elements} is verified to exist in the response</doc>
<status status="PASS" start="2026-05-25T01:52:31.818185" elapsed="0.038537"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check For Elements At URI</arg>
<arg>${RFC8040_OPERATIONAL_NODES_API}</arg>
<arg>${node_list}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:31.812044" elapsed="0.044759"/>
</kw>
<doc>Get the stats for all nodes</doc>
<status status="PASS" start="2026-05-25T01:52:31.811613" elapsed="0.045316"/>
</test>
<test id="s1-s2-s3-t2" name="Get Stats for node 1" line="29">
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Nodes Stats" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:31.875100" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bv4d41zmsb2l1g1h0mx6y0tr26.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:31.877157" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":41420,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-7","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"2","byte-count":"170","duration":{"second":0,"nanosecond":12000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"3","active-flows":1,"packets-matched":"2"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"openda... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:31.877447" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${RFC8040_NODES_API}/node=${node}</arg>
<arg>params=${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:31.861130" elapsed="0.016355"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>flow-capable-node-connector-statistics</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.877699" elapsed="0.003213"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>flow-table-statistics</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.881142" elapsed="0.003220"/>
</kw>
<arg>openflow%3A1</arg>
<doc>A GET on the /node/${node} API is made and specific flow stat
strings are checked for existence.</doc>
<status status="PASS" start="2026-05-25T01:52:31.860813" elapsed="0.023638"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check Nodes Stats</arg>
<arg>openflow%3A1</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:31.857711" elapsed="0.026805"/>
</kw>
<doc>Get the stats for a node</doc>
<status status="PASS" start="2026-05-25T01:52:31.857339" elapsed="0.027330"/>
</test>
<test id="s1-s2-s3-t3" name="Get Stats for node 2" line="33">
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Nodes Stats" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:31.902293" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A2?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bv4d41zmsb2l1g1h0mx6y0tr26.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:31.905675" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:node":[{"id":"openflow:2","flow-node-inventory:port-number":41430,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-5","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":11000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"2","active-flows":1,"packets-matched":"1"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendayl... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:31.906164" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${RFC8040_NODES_API}/node=${node}</arg>
<arg>params=${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:31.890465" elapsed="0.015761"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>flow-capable-node-connector-statistics</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.906599" elapsed="0.004847"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>flow-table-statistics</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.911593" elapsed="0.002261"/>
</kw>
<arg>openflow%3A2</arg>
<doc>A GET on the /node/${node} API is made and specific flow stat
strings are checked for existence.</doc>
<status status="PASS" start="2026-05-25T01:52:31.890022" elapsed="0.023896"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check Nodes Stats</arg>
<arg>openflow%3A2</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:31.885505" elapsed="0.028634"/>
</kw>
<doc>Get the stats for a node</doc>
<status status="PASS" start="2026-05-25T01:52:31.884976" elapsed="0.029275"/>
</test>
<test id="s1-s2-s3-t4" name="Get Stats for node 3" line="37">
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Nodes Stats" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:31.927696" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A3?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bv4d41zmsb2l1g1h0mx6y0tr26.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:31.928121" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:node":[{"id":"openflow:3","flow-node-inventory:port-number":41426,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-6","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"1","byte-count":"85","duration":{"second":0,"nanosecond":2000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"1","active-flows":1,"packets-matched":"1"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendayl... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:31.928324" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${RFC8040_NODES_API}/node=${node}</arg>
<arg>params=${RFC8040_OPERATIONAL_CONTENT}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:31.918297" elapsed="0.010054"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>flow-capable-node-connector-statistics</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.928503" elapsed="0.002321"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>flow-table-statistics</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:31.930971" elapsed="0.005011"/>
</kw>
<arg>openflow%3A3</arg>
<doc>A GET on the /node/${node} API is made and specific flow stat
strings are checked for existence.</doc>
<status status="PASS" start="2026-05-25T01:52:31.917984" elapsed="0.018194"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check Nodes Stats</arg>
<arg>openflow%3A3</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:31.914857" elapsed="0.021430"/>
</kw>
<doc>Get the stats for a node</doc>
<status status="PASS" start="2026-05-25T01:52:31.914477" elapsed="0.022054"/>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-05-25T01:52:31.937564" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-05-25T01:52:31.937389" elapsed="0.000316"/>
</kw>
<doc>Test suite for RESTCONF statistics</doc>
<status status="PASS" start="2026-05-25T01:52:31.779985" elapsed="0.157793"/>
</suite>
<suite id="s1-s2-s4" name="040 Restconf Frm" source="/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/MD_SAL_NSF_OF13/040_restconf_frm.robot">
<kw name="Create Session" owner="RequestsLibrary" type="SETUP">
<msg time="2026-05-25T01:52:31.972269" level="INFO">Creating Session using : alias=session, url=http://10.30.170.200:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7f5ace53e350&gt;, timeout=None, proxies=None, verify=False,                     debug=0 </msg>
<arg>session</arg>
<arg>http://${ODL_SYSTEM_IP}:${RESTCONFPORT}</arg>
<arg>auth=${AUTH}</arg>
<arg>headers=${HEADERS_XML}</arg>
<doc>Create Session: create a HTTP session to a server</doc>
<status status="PASS" start="2026-05-25T01:52:31.971914" elapsed="0.000531"/>
</kw>
<test id="s1-s2-s4-t1" name="Add a flow - Sending IPv4 Dest Address and Eth type" line="23">
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:31.989578" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Content-Length': '429', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;flow-name&gt;Foo&lt;/flow-name&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.10.1/32&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:31.989721" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139 
 status=201, reason=Created 
 headers={'Set-Cookie': 'JSESSIONID=node01q0qg54yw8vgt6lpspt9e2cws7.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 24-May-2026 01:52:31 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:31.989953" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A1/flow-node-inventory:table=2/flow=139</arg>
<arg>headers=${HEADERS_XML}</arg>
<arg>data=${BODY1}</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:31.972929" elapsed="0.017082"/>
</kw>
<doc>Push a flow through REST-API</doc>
<status status="PASS" start="2026-05-25T01:52:31.972517" elapsed="0.017792"/>
</test>
<test id="s1-s2-s4-t2" name="Verify after adding flow config - Sending IPv4 Dest Address and Eth type" line="31">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:32.001358" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01q0qg54yw8vgt6lpspt9e2cws7.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:32.001775" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '301'} 
 body={"flow-node-inventory:table":[{"id":2,"flow":[{"id":"139","flow-name":"Foo","match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"table_id":2,"priority":2,"instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]}}]}]} 
 </msg>
<msg time="2026-05-25T01:52:32.001913" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A1/flow-node-inventory:table=2?content=config</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:31.992048" elapsed="0.009910"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>139</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:32.002207" elapsed="0.003364"/>
</kw>
<doc>Verify the flow</doc>
<status status="PASS" start="2026-05-25T01:52:31.990928" elapsed="0.014802"/>
</test>
<test id="s1-s2-s4-t3" name="Verify after adding flow operational - Sending IPv4 Dest Address and Eth type" line="39">
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:52:32.007163" level="INFO">${elements} = ['10.0.10.1']</msg>
<var>${elements}</var>
<arg>10.0.10.1</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:52:32.006731" elapsed="0.000481"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:32.019307" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01q0qg54yw8vgt6lpspt9e2cws7.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:32.019811" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/yang-data+json', 'Content-Length': '242'} 
 body={
  "errors": {
    "error": [
      {
        "error-tag": "data-missing",
        "error-message": "Request could not be completed because the relevant data model content does not exist",
        "error-type": "protocol"
      }
    ]
  }
} 
 </msg>
<msg time="2026-05-25T01:52:32.020318" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:32.012241" elapsed="0.008173"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:32.021655" elapsed="0.000082"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:32.020684" elapsed="0.001142"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:32.025736" level="INFO">{
  "errors": {
    "error": [
      {
        "error-tag": "data-missing",
        "error-message": "Request could not be completed because the relevant data model content does not exist",
        "error-type": "protocol"
      }
    ]
  }
}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:32.022320" elapsed="0.003465"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:32.021905" elapsed="0.003917"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:32.020606" elapsed="0.005240"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:32.026231" level="FAIL">Url: http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig Expected status: 409 != 200</msg>
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="FAIL" start="2026-05-25T01:52:32.025972" elapsed="0.000747">Url: http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig Expected status: 409 != 200</status>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:32.027013" elapsed="0.000021"/>
</kw>
<var name="${i}"/>
<status status="NOT RUN" start="2026-05-25T01:52:32.026877" elapsed="0.000213"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="NOT RUN" start="2026-05-25T01:52:32.026803" elapsed="0.000318"/>
</for>
<arg>${RFC8040_NODES_API}/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig</arg>
<arg>${elements}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
['10.0.10.1'] is verified to exist in the response</doc>
<status status="FAIL" start="2026-05-25T01:52:32.011761" elapsed="0.015475">Url: http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig Expected status: 409 != 200</status>
</kw>
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:34.046322" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01q0qg54yw8vgt6lpspt9e2cws7.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:34.046487" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/yang-data+json', 'Content-Length': '242'} 
 body={
  "errors": {
    "error": [
      {
        "error-tag": "data-missing",
        "error-message": "Request could not be completed because the relevant data model content does not exist",
        "error-type": "protocol"
      }
    ]
  }
} 
 </msg>
<msg time="2026-05-25T01:52:34.046603" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:34.036542" elapsed="0.010088"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:34.047249" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:34.046768" elapsed="0.000542"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:34.049522" level="INFO">{
  "errors": {
    "error": [
      {
        "error-tag": "data-missing",
        "error-message": "Request could not be completed because the relevant data model content does not exist",
        "error-type": "protocol"
      }
    ]
  }
}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:34.047473" elapsed="0.002102"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:34.047338" elapsed="0.002273"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:34.046732" elapsed="0.002902"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:34.050003" level="FAIL">Url: http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig Expected status: 409 != 200</msg>
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="FAIL" start="2026-05-25T01:52:34.049760" elapsed="0.000688">Url: http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig Expected status: 409 != 200</status>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:34.050771" elapsed="0.000022"/>
</kw>
<var name="${i}"/>
<status status="NOT RUN" start="2026-05-25T01:52:34.050623" elapsed="0.000205"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="NOT RUN" start="2026-05-25T01:52:34.050541" elapsed="0.000315"/>
</for>
<arg>${RFC8040_NODES_API}/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig</arg>
<arg>${elements}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
['10.0.10.1'] is verified to exist in the response</doc>
<status status="FAIL" start="2026-05-25T01:52:34.035002" elapsed="0.015967">Url: http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig Expected status: 409 != 200</status>
</kw>
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:36.068378" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01q0qg54yw8vgt6lpspt9e2cws7.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:36.069050" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '472'} 
 body={"flow-node-inventory:flow":[{"id":"139","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":382000000}},"flags":""}]} 
 </msg>
<msg time="2026-05-25T01:52:36.069237" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:36.059826" elapsed="0.009449"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:36.069841" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:36.069411" elapsed="0.000512"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:36.072961" level="INFO">{"flow-node-inventory:flow":[{"id":"139","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":382000000}},"flags":""}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:36.070157" elapsed="0.002875"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:36.069960" elapsed="0.003141"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:36.069376" elapsed="0.003758"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:36.073316" elapsed="0.000285"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:36.074094" elapsed="0.003048"/>
</kw>
<var name="${i}">10.0.10.1</var>
<status status="PASS" start="2026-05-25T01:52:36.073888" elapsed="0.003319"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-05-25T01:52:36.073694" elapsed="0.003558"/>
</for>
<arg>${RFC8040_NODES_API}/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig</arg>
<arg>${elements}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
['10.0.10.1'] is verified to exist in the response</doc>
<status status="PASS" start="2026-05-25T01:52:36.058548" elapsed="0.018790"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check For Elements At URI</arg>
<arg>${RFC8040_NODES_API}/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig</arg>
<arg>${elements}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:32.007489" elapsed="4.069922"/>
</kw>
<doc>Verify the flow</doc>
<status status="PASS" start="2026-05-25T01:52:32.006058" elapsed="4.071535"/>
</test>
<test id="s1-s2-s4-t4" name="Modify a flow - Output to physical port#" line="49">
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:36.089355" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01q0qg54yw8vgt6lpspt9e2cws7.node0', 'Content-Length': '522', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;flow-name&gt;Foo&lt;/flow-name&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.20.1/32&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:36.089444" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:36.089584" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A1/flow-node-inventory:table=2/flow=139</arg>
<arg>headers=${HEADERS_XML}</arg>
<arg>data=${BODY2}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:36.078653" elapsed="0.010968"/>
</kw>
<doc>Push a flow through REST-API</doc>
<status status="PASS" start="2026-05-25T01:52:36.077995" elapsed="0.011805"/>
</test>
<test id="s1-s2-s4-t5" name="Verify after modifying flow config - Output to physical port#" line="58">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:36.098873" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01q0qg54yw8vgt6lpspt9e2cws7.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:36.099373" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '347'} 
 body={"flow-node-inventory:table":[{"id":2,"flow":[{"id":"139","flow-name":"Foo","match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"table_id":2,"priority":2,"instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]}}]}]} 
 </msg>
<msg time="2026-05-25T01:52:36.099533" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A1/flow-node-inventory:table=2?content=config</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:36.091049" elapsed="0.008524"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>10.0.20.1</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:36.099874" elapsed="0.002928"/>
</kw>
<doc>Verify the flow</doc>
<status status="PASS" start="2026-05-25T01:52:36.090235" elapsed="0.012727"/>
</test>
<test id="s1-s2-s4-t6" name="Verify after modifying flow operational - Output to physical port#" line="66">
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:52:36.104365" level="INFO">${elements} = ['10.0.20.1']</msg>
<var>${elements}</var>
<arg>10.0.20.1</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:52:36.103959" elapsed="0.000444"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:36.115160" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01q0qg54yw8vgt6lpspt9e2cws7.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:36.115287" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '472'} 
 body={"flow-node-inventory:flow":[{"id":"139","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":382000000}},"flags":""}]} 
 </msg>
<msg time="2026-05-25T01:52:36.115414" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:36.109871" elapsed="0.005571"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:36.115850" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:36.115546" elapsed="0.000363"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:36.118062" level="INFO">{"flow-node-inventory:flow":[{"id":"139","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":382000000}},"flags":""}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:36.116096" elapsed="0.002036"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:36.115937" elapsed="0.002231"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:36.115520" elapsed="0.002675"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:36.118319" elapsed="0.000210"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-05-25T01:52:36.121253" level="FAIL">'{"flow-node-inventory:flow":[{"id":"139","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":382000000}},"flags":""}]}' does not contain '10.0.20.1'</msg>
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="FAIL" start="2026-05-25T01:52:36.118873" elapsed="0.002464">'{"flow-node-inventory:flow":[{"id":"139","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":382000000}},"flags":""}]}' does not contain '10.0.20.1'</status>
</kw>
<var name="${i}">10.0.20.1</var>
<status status="FAIL" start="2026-05-25T01:52:36.118748" elapsed="0.002666">'{"flow-node-inventory:flow":[{"id":"139","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":382000000}},"flags":""}]}' does not contain '10.0.20.1'</status>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="FAIL" start="2026-05-25T01:52:36.118603" elapsed="0.002872">'{"flow-node-inventory:flow":[{"id":"139","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":382000000}},"flags":""}]}' does not contain '10.0.20.1'</status>
</for>
<arg>${RFC8040_NODES_API}/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig</arg>
<arg>${elements}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
['10.0.20.1'] is verified to exist in the response</doc>
<status status="FAIL" start="2026-05-25T01:52:36.109159" elapsed="0.012418">'{"flow-node-inventory:flow":[{"id":"139","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":382000000}},"flags":""}]}' does not contain '10.0.20.1'</status>
</kw>
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:38.138889" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01q0qg54yw8vgt6lpspt9e2cws7.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:38.139372" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '472'} 
 body={"flow-node-inventory:flow":[{"id":"139","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":382000000}},"flags":""}]} 
 </msg>
<msg time="2026-05-25T01:52:38.139623" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:38.129736" elapsed="0.009951"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:38.140665" elapsed="0.000060"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:38.139901" elapsed="0.000931"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:38.146058" level="INFO">{"flow-node-inventory:flow":[{"id":"139","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":382000000}},"flags":""}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:38.141223" elapsed="0.004991"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:38.140892" elapsed="0.005409"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:38.139848" elapsed="0.006505"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:38.146647" elapsed="0.000400"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-05-25T01:52:38.150779" level="FAIL">'{"flow-node-inventory:flow":[{"id":"139","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":382000000}},"flags":""}]}' does not contain '10.0.20.1'</msg>
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="FAIL" start="2026-05-25T01:52:38.147861" elapsed="0.002998">'{"flow-node-inventory:flow":[{"id":"139","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":382000000}},"flags":""}]}' does not contain '10.0.20.1'</status>
</kw>
<var name="${i}">10.0.20.1</var>
<status status="FAIL" start="2026-05-25T01:52:38.147563" elapsed="0.003370">'{"flow-node-inventory:flow":[{"id":"139","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":382000000}},"flags":""}]}' does not contain '10.0.20.1'</status>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="FAIL" start="2026-05-25T01:52:38.147230" elapsed="0.003764">'{"flow-node-inventory:flow":[{"id":"139","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":382000000}},"flags":""}]}' does not contain '10.0.20.1'</status>
</for>
<arg>${RFC8040_NODES_API}/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig</arg>
<arg>${elements}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
['10.0.20.1'] is verified to exist in the response</doc>
<status status="FAIL" start="2026-05-25T01:52:38.128740" elapsed="0.022372">'{"flow-node-inventory:flow":[{"id":"139","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":382000000}},"flags":""}]}' does not contain '10.0.20.1'</status>
</kw>
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:40.168505" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01q0qg54yw8vgt6lpspt9e2cws7.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:40.169512" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '518'} 
 body={"flow-node-inventory:flow":[{"id":"139","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":308000000}},"flags":""}]} 
 </msg>
<msg time="2026-05-25T01:52:40.169747" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:40.159135" elapsed="0.010671"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:40.170707" elapsed="0.000148"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:40.170010" elapsed="0.000923"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:40.175816" level="INFO">{"flow-node-inventory:flow":[{"id":"139","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":308000000}},"flags":""}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:40.171309" elapsed="0.004624"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:40.170989" elapsed="0.005024"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:40.169960" elapsed="0.006104"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:40.176374" elapsed="0.000378"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:40.177492" elapsed="0.003873"/>
</kw>
<var name="${i}">10.0.20.1</var>
<status status="PASS" start="2026-05-25T01:52:40.177211" elapsed="0.004196"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-05-25T01:52:40.176883" elapsed="0.004556"/>
</for>
<arg>${RFC8040_NODES_API}/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig</arg>
<arg>${elements}</arg>
<doc>A GET is made at the supplied ${URI} and every item in the list of
['10.0.20.1'] is verified to exist in the response</doc>
<status status="PASS" start="2026-05-25T01:52:40.157946" elapsed="0.023549"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check For Elements At URI</arg>
<arg>${RFC8040_NODES_API}/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=nonconfig</arg>
<arg>${elements}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:36.104620" elapsed="4.076927"/>
</kw>
<doc>Verify the flow</doc>
<status status="PASS" start="2026-05-25T01:52:36.103313" elapsed="4.078361"/>
</test>
<test id="s1-s2-s4-t7" name="Remove a flow - Output to physical port#" line="76">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:40.197698" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01q0qg54yw8vgt6lpspt9e2cws7.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:40.197744" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:40.197836" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A1/flow-node-inventory:table=2/flow=139</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:40.182496" elapsed="0.015366"/>
</kw>
<doc>Remove a flow</doc>
<status status="PASS" start="2026-05-25T01:52:40.182046" elapsed="0.015931"/>
</test>
<test id="s1-s2-s4-t8" name="Verify after deleting flow config - Output to physical port#" line="83">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:40.208562" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01q0qg54yw8vgt6lpspt9e2cws7.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:40.208758" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '40'} 
 body={"flow-node-inventory:table":[{"id":2}]} 
 </msg>
<msg time="2026-05-25T01:52:40.208889" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A1/flow-node-inventory:table=2?content=config</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:40.199193" elapsed="0.009733"/>
</kw>
<kw name="Should Not Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>139</arg>
<doc>Fails if ``container`` contains ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:40.209173" elapsed="0.002786"/>
</kw>
<doc>Verify the flow</doc>
<status status="PASS" start="2026-05-25T01:52:40.198233" elapsed="0.013903"/>
</test>
<test id="s1-s2-s4-t9" name="Verify after deleting flow operational - Output to physical port#" line="91">
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:52:40.213501" level="INFO">${elements} = ['10.0.20.1']</msg>
<var>${elements}</var>
<arg>10.0.20.1</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:52:40.213125" elapsed="0.000414"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check For Elements Not At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:40.229971" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01q0qg54yw8vgt6lpspt9e2cws7.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:40.230545" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '661'} 
 body={"flow-node-inventory:table":[{"id":2,"flow":[{"id":"139","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":308000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":1,"packets-matched":"0"}}]} 
 </msg>
<msg time="2026-05-25T01:52:40.230733" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:40.222509" elapsed="0.008261"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:40.231301" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:40.230883" elapsed="0.000515"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:40.234381" level="INFO">{"flow-node-inventory:table":[{"id":2,"flow":[{"id":"139","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":308000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":1,"packets-matched":"0"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:40.231613" elapsed="0.002840"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:40.231441" elapsed="0.003062"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:40.230854" elapsed="0.003681"/>
</if>
<if>
<branch type="IF" condition="&quot;${check_for_null}&quot; == &quot;True&quot;">
<if>
<branch type="IF" condition="${resp.status_code} == 404 or ${resp.status_code} == 409">
<return>
<status status="NOT RUN" start="2026-05-25T01:52:40.234852" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:40.234796" elapsed="0.000115"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:52:40.234775" elapsed="0.000167"/>
</if>
<status status="NOT RUN" start="2026-05-25T01:52:40.234615" elapsed="0.000358"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:40.234590" elapsed="0.000411"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:40.235186" elapsed="0.000262"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-05-25T01:52:40.238785" level="FAIL">'{"flow-node-inventory:table":[{"id":2,"flow":[{"id":"139","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":308000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":1,"packets-matched":"0"}}]}' contains '10.0.20.1'</msg>
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` contains ``item`` one or more times.</doc>
<status status="FAIL" start="2026-05-25T01:52:40.235884" elapsed="0.003010">'{"flow-node-inventory:table":[{"id":2,"flow":[{"id":"139","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":308000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":1,"packets-matched":"0"}}]}' contains '10.0.20.1'</status>
</kw>
<var name="${i}">10.0.20.1</var>
<status status="FAIL" start="2026-05-25T01:52:40.235719" elapsed="0.003277">'{"flow-node-inventory:table":[{"id":2,"flow":[{"id":"139","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":308000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":1,"packets-matched":"0"}}]}' contains '10.0.20.1'</status>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="FAIL" start="2026-05-25T01:52:40.235533" elapsed="0.003568">'{"flow-node-inventory:table":[{"id":2,"flow":[{"id":"139","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":308000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":1,"packets-matched":"0"}}]}' contains '10.0.20.1'</status>
</for>
<arg>${RFC8040_NODES_API}/node=openflow%3A1/flow-node-inventory:table=2?content=nonconfig</arg>
<arg>${elements}</arg>
<doc>A GET is made at the supplied ${uri} and every item in the list of
['10.0.20.1'] is verified to NOT exist in the response. If ${check_for_null} is True
return of 404 is treated as empty list. From Neon onwards, an empty list is always
returned as null, giving 404 on rest call.</doc>
<status status="FAIL" start="2026-05-25T01:52:40.222019" elapsed="0.017225">'{"flow-node-inventory:table":[{"id":2,"flow":[{"id":"139","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.20.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":308000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":1,"packets-matched":"0"}}]}' contains '10.0.20.1'</status>
</kw>
<kw name="Check For Elements Not At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:42.259321" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01q0qg54yw8vgt6lpspt9e2cws7.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:42.259609" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '164'} 
 body={"flow-node-inventory:table":[{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}]} 
 </msg>
<msg time="2026-05-25T01:52:42.259788" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:42.252229" elapsed="0.007588"/>
</kw>
<if>
<branch type="IF" condition="&quot;${pretty_print_json}&quot; == &quot;True&quot;">
<kw name="Log Content" owner="Utils">
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:52:42.260253" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:42.259916" elapsed="0.000397"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:42.262472" level="INFO">{"flow-node-inventory:table":[{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:42.260469" elapsed="0.002054"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:42.260341" elapsed="0.002218"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:42.259892" elapsed="0.002690"/>
</if>
<if>
<branch type="IF" condition="&quot;${check_for_null}&quot; == &quot;True&quot;">
<if>
<branch type="IF" condition="${resp.status_code} == 404 or ${resp.status_code} == 409">
<return>
<status status="NOT RUN" start="2026-05-25T01:52:42.262815" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:42.262775" elapsed="0.000084"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:52:42.262760" elapsed="0.000121"/>
</if>
<status status="NOT RUN" start="2026-05-25T01:52:42.262641" elapsed="0.000262"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:42.262623" elapsed="0.000301"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<arg>200</arg>
<arg>${resp}</arg>
<doc>Fails if response status code is different than the expected.</doc>
<status status="PASS" start="2026-05-25T01:52:42.263045" elapsed="0.000195"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>${i}</arg>
<doc>Fails if ``container`` contains ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:42.263602" elapsed="0.002025"/>
</kw>
<var name="${i}">10.0.20.1</var>
<status status="PASS" start="2026-05-25T01:52:42.263464" elapsed="0.002204"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-05-25T01:52:42.263302" elapsed="0.002399"/>
</for>
<arg>${RFC8040_NODES_API}/node=openflow%3A1/flow-node-inventory:table=2?content=nonconfig</arg>
<arg>${elements}</arg>
<doc>A GET is made at the supplied ${uri} and every item in the list of
['10.0.20.1'] is verified to NOT exist in the response. If ${check_for_null} is True
return of 404 is treated as empty list. From Neon onwards, an empty list is always
returned as null, giving 404 on rest call.</doc>
<status status="PASS" start="2026-05-25T01:52:42.251404" elapsed="0.014355"/>
</kw>
<arg>10s</arg>
<arg>2s</arg>
<arg>Check For Elements Not At URI</arg>
<arg>${RFC8040_NODES_API}/node=openflow%3A1/flow-node-inventory:table=2?content=nonconfig</arg>
<arg>${elements}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:40.213758" elapsed="2.052055"/>
</kw>
<doc>Verify the flow</doc>
<status status="PASS" start="2026-05-25T01:52:40.212461" elapsed="2.053483"/>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-05-25T01:52:42.266608" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-05-25T01:52:42.266524" elapsed="0.000155"/>
</kw>
<doc>Test suite for RESTCONF FRM</doc>
<status status="PASS" start="2026-05-25T01:52:31.939312" elapsed="10.327402"/>
</suite>
<kw name="Stop Mininet" owner="Utils" type="TEARDOWN">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:42.268965" level="INFO">Stop the test on the base edition</msg>
<arg>Stop the test on the base edition</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:42.268654" elapsed="0.000376"/>
</kw>
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${mininet_conn_id}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:52:42.269247" elapsed="0.000202"/>
</kw>
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:52:42.269629" elapsed="0.000186"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:52:42.275479" level="INFO">exit</msg>
<arg>exit</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:52:42.269988" elapsed="0.005549"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:52:42.558566" level="INFO">*** Stopping 1 controllers
c0 
*** Stopping 6 links
......
*** Stopping 3 switches
s1 s2 s3 
*** Stopping 4 hosts
h1 h2 h3 h4 
*** Done
completed in 13.686 seconds
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${prompt}</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:52:42.275677" elapsed="0.282982"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:52:42.558830" elapsed="0.000193"/>
</kw>
<doc>Cleanup/Shutdown work that should be done at the completion of all
tests</doc>
<status status="PASS" start="2026-05-25T01:52:42.268279" elapsed="0.290820"/>
</kw>
<doc>Test suite for MD-SAL NSF mininet OF13</doc>
<status status="PASS" start="2026-05-25T01:52:26.484004" elapsed="16.075127"/>
</suite>
<suite id="s1-s3" name="Stat Manager extended" source="/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Flows_Additional_TCs/Stat_Manager_extended">
<kw name="Start Mininet" owner="Utils" type="SETUP">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:42.591108" level="INFO">Start the test on the base edition</msg>
<arg>Start the test on the base edition</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:42.590863" elapsed="0.000300"/>
</kw>
<kw name="Clean Mininet System" owner="Utils">
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:42.593320" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:42.593053" elapsed="0.000324"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:42.593030" elapsed="0.000371"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:52:42.593689" level="INFO">index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:52:42.593795" level="INFO">${current_ssh_connection} = index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:52:42.593529" elapsed="0.000293"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:42.594440" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:42.593945" elapsed="0.000543"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:52:42.594990" level="INFO">${conn_id} = 11</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:52:42.594620" elapsed="0.000397"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:52:42.595819" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:52:42.595896" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:52:42.595544" elapsed="0.000377"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:42.596053" elapsed="0.000344"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:52:42.597202" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:52:42.998383" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:52:08 UTC 2026

  System load:  0.02               Processes:             111
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:52:28 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:52:42.596869" elapsed="0.401645"/>
</kw>
<msg time="2026-05-25T01:52:42.998592" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:42.596539" elapsed="0.402131"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:52:42.595221" elapsed="0.403551"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:52:42.999220" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-05-25T01:52:44.166508" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:52:44.166930" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:52:44.167042" level="INFO">${stderr} = *** Removing excess controllers/ofprotocols/ofdatapaths/pings/noxes
killall controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec iv...</msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:52:42.998974" elapsed="1.168177"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:52:44.167601" elapsed="0.000702"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:44.169499" level="INFO">*** Removing excess controllers/ofprotocols/ofdatapaths/pings/noxes
killall controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec ivs ryu-manager 2&gt; /dev/null
killall -9 controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec ivs ryu-manager 2&gt; /dev/null
pkill -9 -f "sudo mnexec"
*** Removing junk from /tmp
rm -f /tmp/vconn* /tmp/vlogs* /tmp/*.out /tmp/*.log
*** Removing old X11 tunnels
*** Removing excess kernel datapaths
ps ax | egrep -o 'dp[0-9]+' | sed 's/dp/nl:/'
***  Removing OVS datapaths
ovs-vsctl --timeout=1 list-br
ovs-vsctl --timeout=1 list-br
*** Removing all links of the pattern foo-ethX
ip link show | egrep -o '([-_.[:alnum:]]+-eth[[:digit:]]+)'
ip link show
*** Killing stale mininet node processes
pkill -9 -f mininet:
*** Shutting down stale tunnels
pkill -9 -f Tunnel=Ethernet
pkill -9 -f .ssh/mn
rm -f ~/.ssh/mn/*
*** Cleanup complete.</msg>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:44.168668" elapsed="0.000965"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:52:44.170198" elapsed="0.000045"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:44.169825" elapsed="0.000498"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:44.169766" elapsed="0.000613"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:52:44.170746" elapsed="0.000070"/>
</return>
<status status="PASS" start="2026-05-25T01:52:44.170501" elapsed="0.000388"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:44.170466" elapsed="0.000476"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:52:44.171018" elapsed="0.000030"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:44.175931" elapsed="0.000761"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:52:44.177039" elapsed="0.000452"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:52:44.177774" elapsed="0.000240"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:52:44.171706" elapsed="0.006485"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:52:42.592565" elapsed="1.585874"/>
</kw>
<msg time="2026-05-25T01:52:44.178606" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:42.591995" elapsed="1.586676"/>
</kw>
<arg>${system}</arg>
<arg>sudo mn -c</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:52:42.591577" elapsed="1.587180"/>
</kw>
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:44.180685" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:44.180446" elapsed="0.000296"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:44.180427" elapsed="0.000338"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:52:44.181028" level="INFO">index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:52:44.181153" level="INFO">${current_ssh_connection} = index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:52:44.180884" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:44.181708" level="INFO">Attempting to execute command "sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:44.181303" elapsed="0.000452"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:52:44.182294" level="INFO">${conn_id} = 13</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:52:44.181884" elapsed="0.000437"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:52:44.183117" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:52:44.183196" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:52:44.182823" elapsed="0.000398"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:44.183350" elapsed="0.000315"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:52:44.184488" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:52:44.538729" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:52:08 UTC 2026

  System load:  0.02               Processes:             111
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:52:42 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:52:44.184154" elapsed="0.355853"/>
</kw>
<msg time="2026-05-25T01:52:44.540131" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:44.183805" elapsed="0.356590"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:52:44.182508" elapsed="0.358979"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:52:44.542011" level="INFO">Executing command 'sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh'.</msg>
<msg time="2026-05-25T01:52:44.574950" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-05-25T01:52:44.575153" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:52:44.575218" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:52:44.541721" elapsed="0.033530"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:52:44.575456" elapsed="0.000336"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:44.576440" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:44.576007" elapsed="0.000491"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:52:44.576811" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:44.576616" elapsed="0.000266"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:44.576581" elapsed="0.000429"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:52:44.577292" elapsed="0.000044"/>
</return>
<status status="PASS" start="2026-05-25T01:52:44.577114" elapsed="0.000270"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:44.577089" elapsed="0.000329"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:52:44.577467" elapsed="0.000019"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:44.580428" elapsed="0.000445"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:52:44.581064" elapsed="0.000277"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:52:44.581515" elapsed="0.000134"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:52:44.577873" elapsed="0.003848"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:52:44.179942" elapsed="0.401904"/>
</kw>
<msg time="2026-05-25T01:52:44.581923" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:44.179397" elapsed="0.402596"/>
</kw>
<arg>${system}</arg>
<arg>sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:52:44.178907" elapsed="0.403219"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:42.591316" elapsed="1.990890"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:52:44.582898" level="INFO">${mininet_conn_id} = 15</msg>
<var>${mininet_conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:52:44.582388" elapsed="0.000548"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:44.583612" level="INFO">${mininet_conn_id} = 15</msg>
<arg>${mininet_conn_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:44.583167" elapsed="0.000503"/>
</kw>
<kw name="Flexible_Mininet_Login" owner="SSHKeywords">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:52:44.585916" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:52:44.586023" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:52:44.585540" elapsed="0.000517"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:44.586258" elapsed="0.000440"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:52:44.587818" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:52:44.928881" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:52:08 UTC 2026

  System load:  0.02               Processes:             111
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:52:44 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:52:44.587375" elapsed="0.341720"/>
</kw>
<msg time="2026-05-25T01:52:44.929191" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:44.586892" elapsed="0.342389"/>
</kw>
<arg>user=${user}</arg>
<arg>password=${password}</arg>
<arg>delay=${delay}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:52:44.584939" elapsed="0.344468"/>
</kw>
<msg time="2026-05-25T01:52:44.929465" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Flexible SSH Login</arg>
<arg>user=${user}</arg>
<arg>password=${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:52:44.584442" elapsed="0.345073"/>
</kw>
<arg>user=${user}</arg>
<arg>password=${password}</arg>
<doc>Call Flexible SSH Login, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:52:44.583904" elapsed="0.345692"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:52:44.930019" level="INFO">Executing command 'sudo ovs-vsctl set-manager ptcp:6644'.</msg>
<msg time="2026-05-25T01:52:44.952917" level="INFO">Command exited with return code 0.</msg>
<arg>sudo ovs-vsctl set-manager ptcp:6644</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:52:44.929857" elapsed="0.023271"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:52:44.992448" level="INFO">sudo mn --controller=remote,ip=10.30.170.200 --topo tree,1 --switch ovsk,protocols=OpenFlow13</msg>
<arg>${start}</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:52:44.953454" elapsed="0.039158"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:52:45.188121" level="INFO">[?2004l*** Creating network
*** Adding controller
Connecting to remote controller at 10.30.170.200:6653
*** Adding hosts:
h1 h2 
*** Adding switches:
s1 
*** Adding links:
(s1, h1) (s1, h2) 
*** Configuring hosts
h1 h2 
*** Starting controller
c0 
*** Starting 1 switches
s1 ...
*** Starting CLI:
mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:52:44.992772" elapsed="0.195485"/>
</kw>
<doc>Basic setup/cleanup work that can be done safely before any system
is run.</doc>
<status status="PASS" start="2026-05-25T01:52:42.590457" elapsed="2.597901"/>
</kw>
<suite id="s1-s3-s1" name="010 SM add upd del flows" source="/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Flows_Additional_TCs/Stat_Manager_extended/010_SM_add_upd_del_flows.robot">
<kw name="Initialization Phase" type="SETUP">
<kw name="Create Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:45.375331" level="INFO">Creating Session using : alias=session, url=http://10.30.170.200:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7f5accb9ff10&gt;, timeout=None, proxies=None, verify=False,                     debug=0 </msg>
<arg>session</arg>
<arg>http://${ODL_SYSTEM_IP}:${RESTCONFPORT}</arg>
<arg>auth=${AUTH}</arg>
<arg>headers=${HEADERS_XML}</arg>
<doc>Create Session: create a HTTP session to a server</doc>
<status status="PASS" start="2026-05-25T01:52:45.374947" elapsed="0.000574"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Switches In Inventory" owner="FlowLib">
<for flavor="IN RANGE">
<iter>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:45.400545" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:45.404382" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 24-May-2026 01:52:45 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '5570'} 
 body={"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":55842,"flow-node-inventory:table":[{"id":62},{"id":28},{"id":2},{"id":224},{"id":181},{"id":147},{"id":106},{"id":61},{"id":27},{"id":1},{"id":223},{"id":182},{"id":148},{"id":105},{"id":60},{"id":30},{"id":0},{"id":226},{"id":179},{"id":149},{"id":104},{"id":59},{"id":29},{"id":225},{"id":180},{"id":150},{"id":103},{"id":66},{"id":32},{"id":220},{"id":185},{"id":151},{"id":102},{"id":65},{"id":31},{"id":253},{"id":219},{"id":186},{"id":152},{"id":101},{"id":64},{"id":34},{"id":252},{"id":222},{"id":183},{"id":153},{"id":100},{"id":63},{"id":33},{"id":251},{"id":221},{"id":184},{"id":154},{"id":99},{"id":54},{"id":20},{"id":250},{"id":216},{"id":189},{"id":155},{"id":129},{"id":114},{"id":53},{"id":19},{"id":249},{"id":215},{"id":190},{"id":156},{"id":130},{"id":113},{"id":52},{"id":22},{"id":248},{"id":218},{"id":187},{"id":157},{"id":112},{"id":51},{"id":21},{"id":247},{"id":217},{"id":188},{"id":158},{"id":128},{"id":111},{"id":58},{"id":24},{"id":246},{"id":212},{"id":193},{"id":159},{"id":110},{"id":57},{"id":23},{"id":245},{"id":211},{"id":194},{"id":160},{"id":109},{"id":56},{"id":26},{"id":244},{"id":214},{"id":191},{"id":161},{"id":108},{"id":55},{"id":25},{"id":243},{"id":213},{"id":192},{"id":162},{"id":107},{"id":77},{"id":43},{"id":17},{"id":239},{"id":198},{"id":164},{"id":138},{"id":119},{"id":89},{"id":78},{"id":44},{"id":18},{"id":240},{"id":197},{"id":163},{"id":137},{"id":120},{"id":90},{"id":75},{"id":45},{"id":15},{"id":241},{"id":196},{"id":166},{"id":136},{"id":121},{"id":87},{"id":76},{"id":46},{"id":16},{"id":242},{"id":195},{"id":165},{"id":135},{"id":122},{"id":88},{"id":81},{"id":47},{"id":13},{"id":235},{"id":202},{"id":168},{"id":134},{"id":115},{"id":85},{"id":82},{"id":48},{"id":14},{"id":236},{"id":201},{"id":167},{"id":133},{"id":116},{"id":86},{"id":79},{"id":49},{"id":11},{"id":237},{"id":200},{"id":170},{"id":132},{"id":117},{"id":83},{"id":80},{"id":50},{"id":12},{"id":238},{"id":199},{"id":169},{"id":131},{"id":118},{"id":84},{"id":69},{"id":35},{"id":9},{"id":231},{"id":206},{"id":172},{"id":146},{"id":127},{"id":97},{"id":70},{"id":36},{"id":10},{"id":232},{"id":205},{"id":171},{"id":145},{"id":98},{"id":67},{"id":37},{"id":7},{"id":233},{"id":204},{"id":174},{"id":144},{"id":95},{"id":68},{"id":38},{"id":8},{"id":234},{"id":203},{"id":173},{"id":143},{"id":96},{"id":73},{"id":39},{"id":5},{"id":227},{"id":210},{"id":176},{"id":142},{"id":123},{"id":93},{"id":74},{"id":40},{"id":6},{"id":228},{"id":209},{"id":175},{"id":141},{"id":124},{"id":94},{"id":71},{"id":41},{"id":3},{"id":229},{"id":208},{"id":178},{"id":140},{"id":125},{"id":91},{"id":72},{"id":42},{"id":4},{"id":230},{"id":207},{"id":177},{"id":139},{"id":126},{"id":92}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s1","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:52:45.369Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"f2:4c:58:8c:b0:53","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":""},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"a6:28:87:84:d1:49","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN"},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"8a:d2:eb:04:fb:42","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":""}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None"}]} 
 </msg>
<msg time="2026-05-25T01:52:45.405036" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:45.379924" elapsed="0.025232"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:45.410730" level="INFO">{"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":55842,"flow-node-inventory:table":[{"id":62},{"id":28},{"id":2},{"id":224},{"id":181},{"id":147},{"id":106},{"id":61},{"id":27},{"id":1},{"id":223},{"id":182},{"id":148},{"id":105},{"id":60},{"id":30},{"id":0},{"id":226},{"id":179},{"id":149},{"id":104},{"id":59},{"id":29},{"id":225},{"id":180},{"id":150},{"id":103},{"id":66},{"id":32},{"id":220},{"id":185},{"id":151},{"id":102},{"id":65},{"id":31},{"id":253},{"id":219},{"id":186},{"id":152},{"id":101},{"id":64},{"id":34},{"id":252},{"id":222},{"id":183},{"id":153},{"id":100},{"id":63},{"id":33},{"id":251},{"id":221},{"id":184},{"id":154},{"id":99},{"id":54},{"id":20},{"id":250},{"id":216},{"id":189},{"id":155},{"id":129},{"id":114},{"id":53},{"id":19},{"id":249},{"id":215},{"id":190},{"id":156},{"id":130},{"id":113},{"id":52},{"id":22},{"id":248},{"id":218},{"id":187},{"id":157},{"id":112},{"id":51},{"id":21},{"id":247},{"id":217},{"id":188},{"id":158},{"id":128},{"id":111},{"id":58},{"id":24},{"id":246},{"id":212},{"id":193},{"id":159},{"id":110},{"id":57},{"id":23},{"id":245},{"id":211},{"id":194},{"id":160},{"id":109},{"id":56},{"id":26},{"id":244},{"id":214},{"id":191},{"id":161},{"id":108},{"id":55},{"id":25},{"id":243},{"id":213},{"id":192},{"id":162},{"id":107},{"id":77},{"id":43},{"id":17},{"id":239},{"id":198},{"id":164},{"id":138},{"id":119},{"id":89},{"id":78},{"id":44},{"id":18},{"id":240},{"id":197},{"id":163},{"id":137},{"id":120},{"id":90},{"id":75},{"id":45},{"id":15},{"id":241},{"id":196},{"id":166},{"id":136},{"id":121},{"id":87},{"id":76},{"id":46},{"id":16},{"id":242},{"id":195},{"id":165},{"id":135},{"id":122},{"id":88},{"id":81},{"id":47},{"id":13},{"id":235},{"id":202},{"id":168},{"id":134},{"id":115},{"id":85},{"id":82},{"id":48},{"id":14},{"id":236},{"id":201},{"id":167},{"id":133},{"id":116},{"id":86},{"id":79},{"id":49},{"id":11},{"id":237},{"id":200},{"id":170},{"id":132},{"id":117},{"id":83},{"id":80},{"id":50},{"id":12},{"id":238},{"id":199},{"id":169},{"id":131},{"id":118},{"id":84},{"id":69},{"id":35},{"id":9},{"id":231},{"id":206},{"id":172},{"id":146},{"id":127},{"id":97},{"id":70},{"id":36},{"id":10},{"id":232},{"id":205},{"id":171},{"id":145},{"id":98},{"id":67},{"id":37},{"id":7},{"id":233},{"id":204},{"id":174},{"id":144},{"id":95},{"id":68},{"id":38},{"id":8},{"id":234},{"id":203},{"id":173},{"id":143},{"id":96},{"id":73},{"id":39},{"id":5},{"id":227},{"id":210},{"id":176},{"id":142},{"id":123},{"id":93},{"id":74},{"id":40},{"id":6},{"id":228},{"id":209},{"id":175},{"id":141},{"id":124},{"id":94},{"id":71},{"id":41},{"id":3},{"id":229},{"id":208},{"id":178},{"id":140},{"id":125},{"id":91},{"id":72},{"id":42},{"id":4},{"id":230},{"id":207},{"id":177},{"id":139},{"id":126},{"id":92}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s1","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:52:45.369Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"f2:4c:58:8c:b0:53","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":""},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"a6:28:87:84:d1:49","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN"},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"8a:d2:eb:04:fb:42","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":""}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None"}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:45.405526" elapsed="0.005399"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-05-25T01:52:45.414917" level="FAIL">'{"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":55842,"flow-node-inventory:table":[{"id":62},{"id":28},{"id":2},{"id":224},{"id":181},{"id":147},{"id":106},{"id":61},{"id":27},{"id":1},{"id":223},{"id":182},{"id":148},{"id":105},{"id":60},{"id":30},{"id":0},{"id":226},{"id":179},{"id":149},{"id":104},{"id":59},{"id":29},{"id":225},{"id":180},{"id":150},{"id":103},{"id":66},{"id":32},{"id":220},{"id":185},{"id":151},{"id":102},{"id":65},{"id":31},{"id":253},{"id":219},{"id":186},{"id":152},{"id":101},{"id":64},{"id":34},{"id":252},{"id":222},{"id":183},{"id":153},{"id":100},{"id":63},{"id":33},{"id":251},{"id":221},{"id":184},{"id":154},{"id":99},{"id":54},{"id":20},{"id":250},{"id":216},{"id":189},{"id":155},{"id":129},{"id":114},{"id":53},{"id":19},{"id":249},{"id":215},{"id":190},{"id":156},{"id":130},{"id":113},{"id":52},{"id":22},{"id":248},{"id":218},{"id":187},{"id":157},{"id":112},{"id":51},{"id":21},{"id":247},{"id":217},{"id":188},{"id":158},{"id":128},{"id":111},{"id":58},{"id":24},{"id":246},{"id":212},{"id":193},{"id":159},{"id":110},{"id":57},{"id":23},{"id":245},{"id":211},{"id":194},{"id":160},{"id":109},{"id":56},{"id":26},{"id":244},{"id":214},{"id":191},{"id":161},{"id":108},{"id":55},{"id":25},{"id":243},{"id":213},{"id":192},{"id":162},{"id":107},{"id":77},{"id":43},{"id":17},{"id":239},{"id":198},{"id":164},{"id":138},{"id":119},{"id":89},{"id":78},{"id":44},{"id":18},{"id":240},{"id":197},{"id":163},{"id":137},{"id":120},{"id":90},{"id":75},{"id":45},{"id":15},{"id":241},{"id":196},{"id":166},{"id":136},{"id":121},{"id":87},{"id":76},{"id":46},{"id":16},{"id":242},{"id":195},{"id":165},{"id":135},{"id":122},{"id":88},{"id":81},{"id":47},{"id":13},{"id":235},{"id":202},{"id":168},{"id":134},{"id":115},{"id":85},{"id":82},{"id":48},{"id":14},{"id":236},{"id":201},{"id":167},{"id":133},{"id":116},{"id":86},{"id":79},{"id":49},{"id":11},{"id":237},{"id":200},{"id":170},{"id":132},{"id":117},{"id":83},{"id":80},{"id":50},{"id":12},{"id":238},{"id":199},{"id":169},{"id":131},{"id":118},{"id":84},{"id":69},{"id":35},{"id":9},{"id":231},{"id":206},{"id":172},{"id":146},{"id":127},{"id":97},{"id":70},{"id":36},{"id":10},{"id":232},{"id":205},{"id":171},{"id":145},{"id":98},{"id":67},{"id":37},{"id":7},{"id":233},{"id":204},{"id":174},{"id":144},{"id":95},{"id":68},{"id":38},{"id":8},{"id":234},{"id":203},{"id":173},{"id":143},{"id":96},{"id":73},{"id":39},{"id":5},{"id":227},{"id":210},{"id":176},{"id":142},{"id":123},{"id":93},{"id":74},{"id":40},{"id":6},{"id":228},{"id":209},{"id":175},{"id":141},{"id":124},{"id":94},{"id":71},{"id":41},{"id":3},{"id":229},{"id":208},{"id":178},{"id":140},{"id":125},{"id":91},{"id":72},{"id":42},{"id":4},{"id":230},{"id":207},{"id":177},{"id":139},{"id":126},{"id":92}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s1","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:52:45.369Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"f2:4c:58:8c:b0:53","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":""},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"a6:28:87:84:d1:49","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN"},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"8a:d2:eb:04:fb:42","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":""}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None"}]}' does not contain 'flow-capable-node-connector-statistics'</msg>
<arg>${resp.text}</arg>
<arg>flow-capable-node-connector-statistics</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="FAIL" start="2026-05-25T01:52:45.411298" elapsed="0.003827">'{"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":55842,"flow-node-inventory:table":[{"id":62},{"id":28},{"id":2},{"id":224},{"id":181},{"id":147},{"id":106},{"id":61},{"id":27},{"id":1},{"id":223},{"id":182},{"id":148},{"id":105},{"id":60},{"id":30},{"id":0},{"id":226},{"id":179},{"id":149},{"id":104},{"id":59},{"id":29},{"id":225},{"id":180},{"id":150},{"id":103},{"id":66},{"id":32},{"id":220},{"id":185},{"id":151},{"id":102},{"id":65},{"id":31},{"id":253},{"id":219},{"id":186},{"id":152},{"id":101},{"id":64},{"id":34},{"id":252},{"id":222},{"id":183},{"id":153},{"id":100},{"id":63},{"id":33},{"id":251},{"id":221},{"id":184},{"id":154},{"id":99},{"id":54},{"id":20},{"id":250},{"id":216},{"id":189},{"id":155},{"id":129},{"id":114},{"id":53},{"id":19},{"id":249},{"id":215},{"id":190},{"id":156},{"id":130},{"id":113},{"id":52},{"id":22},{"id":248},{"id":218},{"id":187},{"id":157},{"id":112},{"id":51},{"id":21},{"id":247},{"id":217},{"id":188},{"id":158},{"id":128},{"id":111},{"id":58},{"id":24},{"id":246},{"id":212},{"id":193},{"id":159},{"id":110},{"id":57},{"id":23},{"id":245},{"id":211},{"id":194},{"id":160},{"id":109},{"id":56},{"id":26},{"id":244},{"id":214},{"id":191},{"id":161},{"id":108},{"id":55},{"id":25},{"id":243},{"id":213},{"id":192},{"id":162},{"id":107},{"id":77},{"id":43},{"id":17},{"id":239},{"id":198},{"id":164},{"id":138},{"id":119},{"id":89},{"id":78},{"id":44},{"id":18},{"id":240},{"id":197},{"id":163},{"id":137},{"id":120},{"id":90},{"id":75},{"id":45},{"id":15},{"id":241},{...
    [ Message content over the limit has been removed. ]
...y:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":""},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"a6:28:87:84:d1:49","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN"},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"8a:d2:eb:04:fb:42","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":""}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None"}]}' does not contain 'flow-capable-node-connector-statistics'</status>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>flow-table-statistics</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:45.415314" elapsed="0.000023"/>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-05-25T01:52:45.379805" elapsed="0.035608">'{"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":55842,"flow-node-inventory:table":[{"id":62},{"id":28},{"id":2},{"id":224},{"id":181},{"id":147},{"id":106},{"id":61},{"id":27},{"id":1},{"id":223},{"id":182},{"id":148},{"id":105},{"id":60},{"id":30},{"id":0},{"id":226},{"id":179},{"id":149},{"id":104},{"id":59},{"id":29},{"id":225},{"id":180},{"id":150},{"id":103},{"id":66},{"id":32},{"id":220},{"id":185},{"id":151},{"id":102},{"id":65},{"id":31},{"id":253},{"id":219},{"id":186},{"id":152},{"id":101},{"id":64},{"id":34},{"id":252},{"id":222},{"id":183},{"id":153},{"id":100},{"id":63},{"id":33},{"id":251},{"id":221},{"id":184},{"id":154},{"id":99},{"id":54},{"id":20},{"id":250},{"id":216},{"id":189},{"id":155},{"id":129},{"id":114},{"id":53},{"id":19},{"id":249},{"id":215},{"id":190},{"id":156},{"id":130},{"id":113},{"id":52},{"id":22},{"id":248},{"id":218},{"id":187},{"id":157},{"id":112},{"id":51},{"id":21},{"id":247},{"id":217},{"id":188},{"id":158},{"id":128},{"id":111},{"id":58},{"id":24},{"id":246},{"id":212},{"id":193},{"id":159},{"id":110},{"id":57},{"id":23},{"id":245},{"id":211},{"id":194},{"id":160},{"id":109},{"id":56},{"id":26},{"id":244},{"id":214},{"id":191},{"id":161},{"id":108},{"id":55},{"id":25},{"id":243},{"id":213},{"id":192},{"id":162},{"id":107},{"id":77},{"id":43},{"id":17},{"id":239},{"id":198},{"id":164},{"id":138},{"id":119},{"id":89},{"id":78},{"id":44},{"id":18},{"id":240},{"id":197},{"id":163},{"id":137},{"id":120},{"id":90},{"id":75},{"id":45},{"id":15},{"id":241},{...
    [ Message content over the limit has been removed. ]
...y:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":""},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"a6:28:87:84:d1:49","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN"},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"8a:d2:eb:04:fb:42","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":""}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None"}]}' does not contain 'flow-capable-node-connector-statistics'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-05-25T01:52:45.377967" elapsed="0.037543">'{"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":55842,"flow-node-inventory:table":[{"id":62},{"id":28},{"id":2},{"id":224},{"id":181},{"id":147},{"id":106},{"id":61},{"id":27},{"id":1},{"id":223},{"id":182},{"id":148},{"id":105},{"id":60},{"id":30},{"id":0},{"id":226},{"id":179},{"id":149},{"id":104},{"id":59},{"id":29},{"id":225},{"id":180},{"id":150},{"id":103},{"id":66},{"id":32},{"id":220},{"id":185},{"id":151},{"id":102},{"id":65},{"id":31},{"id":253},{"id":219},{"id":186},{"id":152},{"id":101},{"id":64},{"id":34},{"id":252},{"id":222},{"id":183},{"id":153},{"id":100},{"id":63},{"id":33},{"id":251},{"id":221},{"id":184},{"id":154},{"id":99},{"id":54},{"id":20},{"id":250},{"id":216},{"id":189},{"id":155},{"id":129},{"id":114},{"id":53},{"id":19},{"id":249},{"id":215},{"id":190},{"id":156},{"id":130},{"id":113},{"id":52},{"id":22},{"id":248},{"id":218},{"id":187},{"id":157},{"id":112},{"id":51},{"id":21},{"id":247},{"id":217},{"id":188},{"id":158},{"id":128},{"id":111},{"id":58},{"id":24},{"id":246},{"id":212},{"id":193},{"id":159},{"id":110},{"id":57},{"id":23},{"id":245},{"id":211},{"id":194},{"id":160},{"id":109},{"id":56},{"id":26},{"id":244},{"id":214},{"id":191},{"id":161},{"id":108},{"id":55},{"id":25},{"id":243},{"id":213},{"id":192},{"id":162},{"id":107},{"id":77},{"id":43},{"id":17},{"id":239},{"id":198},{"id":164},{"id":138},{"id":119},{"id":89},{"id":78},{"id":44},{"id":18},{"id":240},{"id":197},{"id":163},{"id":137},{"id":120},{"id":90},{"id":75},{"id":45},{"id":15},{"id":241},{...
    [ Message content over the limit has been removed. ]
...y:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":""},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"a6:28:87:84:d1:49","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN"},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"8a:d2:eb:04:fb:42","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":""}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None"}]}' does not contain 'flow-capable-node-connector-statistics'</status>
</for>
<arg>${1}</arg>
<doc>Check all switches and stats in operational inventory</doc>
<status status="FAIL" start="2026-05-25T01:52:45.376591" elapsed="0.039092">'{"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":55842,"flow-node-inventory:table":[{"id":62},{"id":28},{"id":2},{"id":224},{"id":181},{"id":147},{"id":106},{"id":61},{"id":27},{"id":1},{"id":223},{"id":182},{"id":148},{"id":105},{"id":60},{"id":30},{"id":0},{"id":226},{"id":179},{"id":149},{"id":104},{"id":59},{"id":29},{"id":225},{"id":180},{"id":150},{"id":103},{"id":66},{"id":32},{"id":220},{"id":185},{"id":151},{"id":102},{"id":65},{"id":31},{"id":253},{"id":219},{"id":186},{"id":152},{"id":101},{"id":64},{"id":34},{"id":252},{"id":222},{"id":183},{"id":153},{"id":100},{"id":63},{"id":33},{"id":251},{"id":221},{"id":184},{"id":154},{"id":99},{"id":54},{"id":20},{"id":250},{"id":216},{"id":189},{"id":155},{"id":129},{"id":114},{"id":53},{"id":19},{"id":249},{"id":215},{"id":190},{"id":156},{"id":130},{"id":113},{"id":52},{"id":22},{"id":248},{"id":218},{"id":187},{"id":157},{"id":112},{"id":51},{"id":21},{"id":247},{"id":217},{"id":188},{"id":158},{"id":128},{"id":111},{"id":58},{"id":24},{"id":246},{"id":212},{"id":193},{"id":159},{"id":110},{"id":57},{"id":23},{"id":245},{"id":211},{"id":194},{"id":160},{"id":109},{"id":56},{"id":26},{"id":244},{"id":214},{"id":191},{"id":161},{"id":108},{"id":55},{"id":25},{"id":243},{"id":213},{"id":192},{"id":162},{"id":107},{"id":77},{"id":43},{"id":17},{"id":239},{"id":198},{"id":164},{"id":138},{"id":119},{"id":89},{"id":78},{"id":44},{"id":18},{"id":240},{"id":197},{"id":163},{"id":137},{"id":120},{"id":90},{"id":75},{"id":45},{"id":15},{"id":241},{...
    [ Message content over the limit has been removed. ]
...y:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":""},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"a6:28:87:84:d1:49","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN"},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"8a:d2:eb:04:fb:42","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":""}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None"}]}' does not contain 'flow-capable-node-connector-statistics'</status>
</kw>
<kw name="Check Switches In Inventory" owner="FlowLib">
<for flavor="IN RANGE">
<iter>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:46.442560" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:46.446396" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":55842,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-9","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":3000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"2","active-flows":1,"packets-matched":"0"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendayli... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:46.447024" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:46.423495" elapsed="0.023643"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.453555" level="INFO">{"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":55842,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-9","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":3000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"2","active-flows":1,"packets-matched":"0"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s1","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:52:45.369Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"f2:4c:58:8c:b0:53","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"2","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":230000000},"bytes":{"transmitted":"175","received":"176"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"a6:28:87:84:d1:49","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":223000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"8a:d2:eb:04:fb:42","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"2","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":231000000},"bytes":{"transmitted":"175","received":"176"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:52:45.403Z"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.447680" elapsed="0.006278"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>flow-capable-node-connector-statistics</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:46.454179" elapsed="0.002549"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>flow-table-statistics</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:52:46.456891" elapsed="0.002379"/>
</kw>
<var name="${switch}">1</var>
<status status="PASS" start="2026-05-25T01:52:46.423309" elapsed="0.036004"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-05-25T01:52:46.420183" elapsed="0.039173"/>
</for>
<arg>${1}</arg>
<doc>Check all switches and stats in operational inventory</doc>
<status status="PASS" start="2026-05-25T01:52:46.416665" elapsed="0.042778"/>
</kw>
<arg>10x</arg>
<arg>1s</arg>
<arg>FlowLib.Check Switches In Inventory</arg>
<arg>${1}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:45.375691" elapsed="1.083807"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:52:46.463261" level="INFO">dpctl dump-flows -O OpenFlow13</msg>
<arg>dpctl dump-flows -O OpenFlow13</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:52:46.459656" elapsed="0.003743"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:52:46.493151" level="INFO">*** s1 ------------------------------------------------------------------------
 cookie=0xa, duration=1.092s, table=0, n_packets=6, n_bytes=500, send_flow_rem priority=0 actions=CONTROLLER:65535
mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:52:46.463626" elapsed="0.029588"/>
</kw>
<doc>Initiate tcp connection with controller</doc>
<status status="PASS" start="2026-05-25T01:52:45.374235" elapsed="1.119046"/>
</kw>
<test id="s1-s3-s1-t1" name="Test Add Flows Group 0" line="37">
<for flavor="IN">
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.494569" level="INFO">f1.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.494300" elapsed="0.000315"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:46.498293" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f1.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f1.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:46.498523" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:46.498133" elapsed="0.000420"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:46.499277" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4ba110&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:46.498708" elapsed="0.000597"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.499760" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.499466" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.500235" level="INFO">${flow_id} = 124</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.499940" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.500727" level="INFO">${flow_priority} = 1</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.500412" elapsed="0.000340"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:46.503035" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:46.500904" elapsed="0.002178"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.503605" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.503261" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.504133" level="INFO">${flow_id} = 124</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.503805" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.504675" level="INFO">${flow_priority} = 1</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.504331" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.505211" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.504871" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.505767" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.505443" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.506301" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4ba110&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.505969" elapsed="0.000375"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:46.497751" elapsed="0.008650"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.513758" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;124&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;1&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf1&lt;/flow-name&gt;
    &lt;priority&gt;1&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.513506" elapsed="0.000311"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:46.546762" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '877', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;124&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;1&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf1&lt;/flow-name&gt;
    &lt;priority&gt;1&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:46.546905" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=124', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:46.547179" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:46.513949" elapsed="0.033291"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.552367" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.547639" elapsed="0.004882"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:46.513104" elapsed="0.039560"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:46.506557" elapsed="0.046222"/>
</kw>
<var name="${flowfile}">f1.xml</var>
<status status="PASS" start="2026-05-25T01:52:46.494165" elapsed="0.058697"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.553977" level="INFO">f2.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.553417" elapsed="0.000688"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:46.559555" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f2.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f2.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:46.559701" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:46.559411" elapsed="0.000319"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:46.560299" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4c2480&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:46.559883" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.560776" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.560495" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.561262" level="INFO">${flow_id} = 125</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.560955" elapsed="0.000333"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.561730" level="INFO">${flow_priority} = 2</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.561441" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:46.562629" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:46.561950" elapsed="0.000711"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.563159" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.562824" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.563756" level="INFO">${flow_id} = 125</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.563394" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.564289" level="INFO">${flow_priority} = 2</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.563953" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.564811" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.564503" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.565386" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.565052" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.565908" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4c2480&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.565598" elapsed="0.000351"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:46.559059" elapsed="0.006945"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.573592" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;125&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;
    &lt;/match&gt;
    &lt;cookie&gt;2&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf2&lt;/flow-name&gt;
    &lt;priority&gt;2&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.573340" elapsed="0.000309"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:46.586225" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '869', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;125&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;
    &lt;/match&gt;
    &lt;cookie&gt;2&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf2&lt;/flow-name&gt;
    &lt;priority&gt;2&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:46.586363" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=125', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:46.586565" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:46.573777" elapsed="0.012843"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.591683" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.586973" elapsed="0.004808"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:46.572916" elapsed="0.018995"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:46.566178" elapsed="0.025849"/>
</kw>
<var name="${flowfile}">f2.xml</var>
<status status="PASS" start="2026-05-25T01:52:46.553122" elapsed="0.039025"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.593284" level="INFO">f3.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.592692" elapsed="0.000691"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:46.599231" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f3.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f3.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:46.599396" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:46.599092" elapsed="0.000339"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:46.599979" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4be8e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:46.599587" elapsed="0.000421"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.600507" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.600182" elapsed="0.000353"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.600968" level="INFO">${flow_id} = 126</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.600690" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.601463" level="INFO">${flow_priority} = 3</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.601171" elapsed="0.000318"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:46.602257" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:46.601645" elapsed="0.000643"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.602768" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.602446" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.603298" level="INFO">${flow_id} = 126</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.602967" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.603813" level="INFO">${flow_priority} = 3</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.603499" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.604329" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.604009" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.604868" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.604556" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.605458" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4be8e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.605081" elapsed="0.000419"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:46.598741" elapsed="0.006813"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.612752" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;126&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:00:01&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;3&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf3&lt;/flow-name&gt;
    &lt;priority&gt;3&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.612499" elapsed="0.000311"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:46.631622" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '845', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;126&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:00:01&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;3&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf3&lt;/flow-name&gt;
    &lt;priority&gt;3&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:46.631826" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=126', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:46.632158" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:46.612940" elapsed="0.019280"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.637568" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.632635" elapsed="0.004994"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:46.612080" elapsed="0.025629"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:46.605704" elapsed="0.032076"/>
</kw>
<var name="${flowfile}">f3.xml</var>
<status status="PASS" start="2026-05-25T01:52:46.592373" elapsed="0.045458"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.638583" level="INFO">f4.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.638223" elapsed="0.000422"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:46.643463" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f4.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f4.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:46.643667" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:46.643272" elapsed="0.000436"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:46.644511" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bf6f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:46.643917" elapsed="0.000637"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.645172" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.644765" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.645797" level="INFO">${flow_id} = 127</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.645420" elapsed="0.000412"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.646437" level="INFO">${flow_priority} = 4</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.646041" elapsed="0.000431"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:46.647567" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:46.646680" elapsed="0.000929"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.648287" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.647827" elapsed="0.000518"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.649042" level="INFO">${flow_id} = 127</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.648609" elapsed="0.000512"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.649680" level="INFO">${flow_priority} = 4</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.649335" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.650189" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.649872" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.650692" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.650386" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.651209" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bf6f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.650887" elapsed="0.000363"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:46.642781" elapsed="0.008524"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.658604" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;127&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;4&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf4&lt;/flow-name&gt;
    &lt;priority&gt;4&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.658329" elapsed="0.000392"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:46.677316" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1061', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;127&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;4&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf4&lt;/flow-name&gt;
    &lt;priority&gt;4&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:46.677465" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=127', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:46.677679" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:46.658860" elapsed="0.018875"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.682965" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.678127" elapsed="0.004970"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:46.657866" elapsed="0.025372"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:46.651458" elapsed="0.031898"/>
</kw>
<var name="${flowfile}">f4.xml</var>
<status status="PASS" start="2026-05-25T01:52:46.638020" elapsed="0.045420"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.684638" level="INFO">f5.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.683967" elapsed="0.000773"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:46.692574" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f5.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f5.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:46.692928" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:46.692155" elapsed="0.000838"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:46.693857" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bbc90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:46.693375" elapsed="0.000510"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.694333" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.694037" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.694775" level="INFO">${flow_id} = 128</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.694509" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.695231" level="INFO">${flow_priority} = 5</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.694948" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:46.696118" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:46.695405" elapsed="0.000745"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.696658" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.696313" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.697175" level="INFO">${flow_id} = 128</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.696853" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.697677" level="INFO">${flow_priority} = 5</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.697369" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.698184" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.697869" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.698747" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.698432" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.699269" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bbc90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.698943" elapsed="0.000368"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:46.691377" elapsed="0.007990"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.708782" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;128&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;5&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;5&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.708389" elapsed="0.000479"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:46.723609" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1171', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;128&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;5&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;5&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:46.723754" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=128', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:46.723955" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:46.709048" elapsed="0.014963"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.729149" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.724426" elapsed="0.004825"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:46.707817" elapsed="0.021598"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:46.699514" elapsed="0.030018"/>
</kw>
<var name="${flowfile}">f5.xml</var>
<status status="PASS" start="2026-05-25T01:52:46.683678" elapsed="0.045934"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.730743" level="INFO">f6.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.730152" elapsed="0.000691"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:46.736693" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f6.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f6.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:46.736909" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:46.736495" elapsed="0.000454"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:46.737792" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4d84a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:46.737224" elapsed="0.000608"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.738457" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.738046" elapsed="0.000447"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.739103" level="INFO">${flow_id} = 129</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.738706" elapsed="0.000435"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.739727" level="INFO">${flow_priority} = 6</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.739353" elapsed="0.000410"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:46.740895" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:46.739971" elapsed="0.000966"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.741616" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.741176" elapsed="0.000497"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.742340" level="INFO">${flow_id} = 129</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.741889" elapsed="0.000508"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.743043" level="INFO">${flow_priority} = 6</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.742609" elapsed="0.000520"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.743761" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.743344" elapsed="0.000478"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.744552" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.744033" elapsed="0.000593"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.745291" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4d84a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.744840" elapsed="0.000509"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:46.735954" elapsed="0.009471"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.752651" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;129&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;6&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;6&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.752357" elapsed="0.000355"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:46.768588" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1131', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;129&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;6&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;6&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:46.768801" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=129', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:46.769010" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:46.752840" elapsed="0.016259"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.775272" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.769457" elapsed="0.005878"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:46.751936" elapsed="0.023481"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:46.745584" elapsed="0.029902"/>
</kw>
<var name="${flowfile}">f6.xml</var>
<status status="PASS" start="2026-05-25T01:52:46.729833" elapsed="0.045704"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.776224" level="INFO">f7.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.775854" elapsed="0.000432"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:46.781083" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f7.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f7.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:46.781284" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:46.780871" elapsed="0.000454"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:46.782143" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4db420&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:46.781539" elapsed="0.000645"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.782784" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.782400" elapsed="0.000420"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.783427" level="INFO">${flow_id} = 130</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.783031" elapsed="0.000436"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.784050" level="INFO">${flow_priority} = 7</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.783678" elapsed="0.000428"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:46.785371" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:46.784315" elapsed="0.001099"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.785907" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.785589" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.786430" level="INFO">${flow_id} = 130</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.786118" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.786939" level="INFO">${flow_priority} = 7</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.786627" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.787452" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.787148" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.787953" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.787648" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.788498" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4db420&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.788164" elapsed="0.000377"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:46.780400" elapsed="0.008197"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.795710" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;130&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;15&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;7&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf7&lt;/flow-name&gt;
    &lt;priority&gt;7&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.795463" elapsed="0.000343"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:46.810409" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1316', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;130&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;15&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;7&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf7&lt;/flow-name&gt;
    &lt;priority&gt;7&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:46.810562" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=130', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:46.810764" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:46.795938" elapsed="0.014883"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.815861" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.811205" elapsed="0.004753"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:46.795054" elapsed="0.021065"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:46.788746" elapsed="0.027493"/>
</kw>
<var name="${flowfile}">f7.xml</var>
<status status="PASS" start="2026-05-25T01:52:46.775674" elapsed="0.040649"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.817549" level="INFO">f8.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.817002" elapsed="0.000610"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:46.822417" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f8.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f8.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:46.822617" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:46.822222" elapsed="0.000436"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:46.823486" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4dba10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:46.822870" elapsed="0.000655"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.824143" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.823738" elapsed="0.000442"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.824808" level="INFO">${flow_id} = 131</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.824427" elapsed="0.000417"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.825453" level="INFO">${flow_priority} = 8</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.825053" elapsed="0.000434"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:46.826756" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:46.825695" elapsed="0.001103"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.827478" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.827015" elapsed="0.000521"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.828200" level="INFO">${flow_id} = 131</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.827750" elapsed="0.000508"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.828947" level="INFO">${flow_priority} = 8</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.828506" elapsed="0.000497"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.829719" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.829292" elapsed="0.000490"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.830456" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.829994" elapsed="0.000527"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.831184" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4dba10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.830732" elapsed="0.000511"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:46.821735" elapsed="0.009586"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.840312" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;131&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:00&lt;/address&gt;
                &lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;8&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf8&lt;/flow-name&gt;
    &lt;priority&gt;8&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.840045" elapsed="0.000354"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:46.858126" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1470', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;131&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:00&lt;/address&gt;
                &lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;8&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf8&lt;/flow-name&gt;
    &lt;priority&gt;8&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:46.858229" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=131', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:46.858344" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:46.840540" elapsed="0.017831"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.860892" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.858585" elapsed="0.002351"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:46.839649" elapsed="0.021356"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:46.831529" elapsed="0.029572"/>
</kw>
<var name="${flowfile}">f8.xml</var>
<status status="PASS" start="2026-05-25T01:52:46.816698" elapsed="0.044460"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.861879" level="INFO">f9.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.861542" elapsed="0.000399"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:46.866716" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f9.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f9.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:46.866913" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:46.866538" elapsed="0.000412"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:46.867738" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4ba250&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:46.867171" elapsed="0.000604"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.868408" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.867977" elapsed="0.000476"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.869009" level="INFO">${flow_id} = 132</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.868659" elapsed="0.000384"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.869641" level="INFO">${flow_priority} = 9</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.869267" elapsed="0.000409"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:46.870971" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:46.869886" elapsed="0.001126"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.871683" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.871245" elapsed="0.000496"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.872427" level="INFO">${flow_id} = 132</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.871955" elapsed="0.000529"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.873145" level="INFO">${flow_priority} = 9</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.872695" elapsed="0.000497"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.873662" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.873353" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.874192" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.873864" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.874707" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4ba250&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.874392" elapsed="0.000356"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:46.866059" elapsed="0.008749"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.882194" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;132&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;9&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf9&lt;/flow-name&gt;
    &lt;priority&gt;9&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.881924" elapsed="0.000335"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:46.894850" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1426', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;132&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;9&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf9&lt;/flow-name&gt;
    &lt;priority&gt;9&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:46.895016" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=132', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:46.895194" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:46.882391" elapsed="0.012839"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.899091" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.895453" elapsed="0.003741"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:46.881517" elapsed="0.017807"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:46.874962" elapsed="0.024477"/>
</kw>
<var name="${flowfile}">f9.xml</var>
<status status="PASS" start="2026-05-25T01:52:46.861362" elapsed="0.038161"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.900660" level="INFO">f10.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.900037" elapsed="0.000723"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:46.908673" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f10.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f10.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:46.909146" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:46.908296" elapsed="0.000920"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:46.909946" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bfe70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:46.909512" elapsed="0.000463"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.910425" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.910144" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.910874" level="INFO">${flow_id} = 133</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.910604" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.911336" level="INFO">${flow_priority} = 10</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.911049" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:46.912263" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:46.911510" elapsed="0.000784"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.912810" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.912487" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.913336" level="INFO">${flow_id} = 133</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.913010" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.913838" level="INFO">${flow_priority} = 10</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.913527" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.914344" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.914029" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.914857" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.914539" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.915380" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bfe70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.915054" elapsed="0.000367"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:46.907514" elapsed="0.007968"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.922705" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;133&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;10&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf10&lt;/flow-name&gt;
    &lt;priority&gt;10&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.922452" elapsed="0.000355"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:46.939996" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1430', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;133&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;10&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf10&lt;/flow-name&gt;
    &lt;priority&gt;10&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:46.940086" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=133', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:46.940182" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:46.922938" elapsed="0.017270"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.943756" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.940395" elapsed="0.003456"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:46.922031" elapsed="0.021948"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:46.915632" elapsed="0.028493"/>
</kw>
<var name="${flowfile}">f10.xml</var>
<status status="PASS" start="2026-05-25T01:52:46.899750" elapsed="0.044463"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.945329" level="INFO">f11.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.944744" elapsed="0.000688"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:46.951126" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f11.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f11.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:46.951262" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:46.950975" elapsed="0.000316"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:46.951861" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4ba8e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:46.951441" elapsed="0.000448"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.952348" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.952043" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.952798" level="INFO">${flow_id} = 134</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.952528" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.953291" level="INFO">${flow_priority} = 11</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.952973" elapsed="0.000349"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:46.954226" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:46.953480" elapsed="0.000777"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.954729" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.954413" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.955246" level="INFO">${flow_id} = 134</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.954924" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.955748" level="INFO">${flow_priority} = 11</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.955438" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.956299" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.955977" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.956825" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.956516" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.957399" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4ba8e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.957020" elapsed="0.000423"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:46.950643" elapsed="0.006856"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.964742" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;134&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;1&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;27&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv4-match&gt;
            &lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;
            &lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;
        &lt;/icmpv4-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;11&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf11&lt;/flow-name&gt;
    &lt;priority&gt;11&lt;/priority&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.964492" elapsed="0.000314"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:46.981713" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1421', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;134&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;1&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;27&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv4-match&gt;
            &lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;
            &lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;
        &lt;/icmpv4-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;11&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf11&lt;/flow-name&gt;
    &lt;priority&gt;11&lt;/priority&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:46.981865" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=134', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:46.982105" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:46.964934" elapsed="0.017233"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.987305" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.982524" elapsed="0.004880"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:46.964039" elapsed="0.023493"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:46.957649" elapsed="0.029996"/>
</kw>
<var name="${flowfile}">f11.xml</var>
<status status="PASS" start="2026-05-25T01:52:46.944455" elapsed="0.043274"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.989142" level="INFO">f14.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:46.988456" elapsed="0.000790"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:46.995049" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f14.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f14.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:46.995199" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:46.994915" elapsed="0.000312"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:46.995796" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4dba60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:46.995378" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.996271" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.995976" elapsed="0.000365"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.996804" level="INFO">${flow_id} = 137</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.996523" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:46.997275" level="INFO">${flow_priority} = 14</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:46.996982" elapsed="0.000319"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:46.998195" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:46.997456" elapsed="0.000769"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.998701" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.998384" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.999217" level="INFO">${flow_id} = 137</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.998895" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:46.999718" level="INFO">${flow_priority} = 14</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.999409" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.000222" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:46.999908" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.000741" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.000433" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.001256" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4dba60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.000934" elapsed="0.000363"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:46.994581" elapsed="0.006771"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.008512" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;137&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x806&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;arp-op&gt;1&lt;/arp-op&gt;
        &lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;
        &lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;
        &lt;arp-source-hardware-address&gt;
            &lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;
        &lt;/arp-source-hardware-address&gt;
        &lt;arp-target-hardware-address&gt;
            &lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;
        &lt;/arp-target-hardware-address&gt;
    &lt;/match&gt;
    &lt;cookie&gt;14&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf14&lt;/flow-name&gt;
    &lt;priority&gt;14&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.008253" elapsed="0.000326"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:47.027056" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1650', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;137&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x806&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;arp-op&gt;1&lt;/arp-op&gt;
        &lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;
        &lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;
        &lt;arp-source-hardware-address&gt;
            &lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;
        &lt;/arp-source-hardware-address&gt;
        &lt;arp-target-hardware-address&gt;
            &lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;
        &lt;/arp-target-hardware-address&gt;
    &lt;/match&gt;
    &lt;cookie&gt;14&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf14&lt;/flow-name&gt;
    &lt;priority&gt;14&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:47.027257" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=137', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:47.027462" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:47.008743" elapsed="0.018774"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.032576" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.027870" elapsed="0.004803"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:47.007845" elapsed="0.024956"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:47.001498" elapsed="0.031416"/>
</kw>
<var name="${flowfile}">f14.xml</var>
<status status="PASS" start="2026-05-25T01:52:46.988120" elapsed="0.044876"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.033857" level="INFO">f15.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.033510" elapsed="0.000408"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:47.038664" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f15.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f15.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:47.038845" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:47.038478" elapsed="0.000408"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:47.039679" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e5bc0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:47.039118" elapsed="0.000600"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.040373" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.039931" elapsed="0.000479"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.041009" level="INFO">${flow_id} = 138</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.040631" elapsed="0.000413"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.041657" level="INFO">${flow_priority} = 15</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.041278" elapsed="0.000415"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:47.042837" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:47.041902" elapsed="0.000977"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.043572" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.043124" elapsed="0.000506"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.044336" level="INFO">${flow_id} = 138</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.043841" elapsed="0.000570"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.045139" level="INFO">${flow_priority} = 15</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.044628" elapsed="0.000571"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.045739" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.045418" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.046259" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.045936" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.046760" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e5bc0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.046455" elapsed="0.000347"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:47.037989" elapsed="0.008867"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.054146" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;138&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;15&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf15&lt;/flow-name&gt;
    &lt;priority&gt;15&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.053882" elapsed="0.000326"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:47.063989" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1213', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;138&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;15&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf15&lt;/flow-name&gt;
    &lt;priority&gt;15&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:47.064055" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=138', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:47.064169" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:47.054336" elapsed="0.009858"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.067682" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.064386" elapsed="0.003391"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:47.053481" elapsed="0.014423"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:47.047013" elapsed="0.021004"/>
</kw>
<var name="${flowfile}">f15.xml</var>
<status status="PASS" start="2026-05-25T01:52:47.033244" elapsed="0.034888"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.069251" level="INFO">f16.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.068665" elapsed="0.000684"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:47.077233" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f16.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f16.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:47.077490" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:47.076826" elapsed="0.000693"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:47.078086" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e6ca0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:47.077670" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.078543" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.078267" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.078994" level="INFO">${flow_id} = 139</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.078720" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.079457" level="INFO">${flow_priority} = 16</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.079185" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:47.080317" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:47.079633" elapsed="0.000716"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.080830" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.080515" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.081350" level="INFO">${flow_id} = 139</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.081026" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.081854" level="INFO">${flow_priority} = 16</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.081544" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.082360" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.082046" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.082864" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.082561" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.083411" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e6ca0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.083092" elapsed="0.000360"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:47.075975" elapsed="0.007532"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.090740" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    &lt;priority&gt;16&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.090480" elapsed="0.000322"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:47.105025" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1216', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    &lt;priority&gt;16&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:47.105193" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:47.105324" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:47.090930" elapsed="0.014430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.110407" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.105659" elapsed="0.004845"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:47.090053" elapsed="0.020578"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:47.083656" elapsed="0.027086"/>
</kw>
<var name="${flowfile}">f16.xml</var>
<status status="PASS" start="2026-05-25T01:52:47.068374" elapsed="0.042450"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.111920" level="INFO">f17.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.111362" elapsed="0.000655"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:47.117989" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f17.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f17.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:47.118137" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:47.117856" elapsed="0.000310"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:47.118720" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e7f10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:47.118321" elapsed="0.000427"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.119190" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.118898" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.119635" level="INFO">${flow_id} = 140</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.119367" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.120093" level="INFO">${flow_priority} = 17</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.119810" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:47.120935" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:47.120289" elapsed="0.000676"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.121503" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.121182" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.122051" level="INFO">${flow_id} = 140</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.121699" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.122575" level="INFO">${flow_priority} = 17</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.122264" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.123080" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.122766" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.123586" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.123277" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.124101" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e7f10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.123780" elapsed="0.000363"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:47.117522" elapsed="0.006675"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.131371" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    &lt;priority&gt;17&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;protocol-match-fields&gt;
            &lt;mpls-label&gt;567&lt;/mpls-label&gt;
            &lt;mpls-tc&gt;3&lt;/mpls-tc&gt;
            &lt;mpls-bos&gt;1&lt;/mpls-bos&gt;
        &lt;/protocol-match-fields&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.131117" elapsed="0.000353"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:47.147382" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1176', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    &lt;priority&gt;17&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;protocol-match-fields&gt;
            &lt;mpls-label&gt;567&lt;/mpls-label&gt;
            &lt;mpls-tc&gt;3&lt;/mpls-tc&gt;
            &lt;mpls-bos&gt;1&lt;/mpls-bos&gt;
        &lt;/protocol-match-fields&gt;
    &lt;/match&gt;
&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:47.147527" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=140', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:47.147729" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:47.131601" elapsed="0.016183"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.152820" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.148167" elapsed="0.004750"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:47.130707" elapsed="0.022344"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:47.124391" elapsed="0.028809"/>
</kw>
<var name="${flowfile}">f17.xml</var>
<status status="PASS" start="2026-05-25T01:52:47.111040" elapsed="0.042243"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.154365" level="INFO">f18.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.153784" elapsed="0.000680"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:47.159997" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f18.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f18.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:47.160199" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:47.159813" elapsed="0.000428"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:47.161006" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc306f20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:47.160471" elapsed="0.000573"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.161660" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.161279" elapsed="0.000417"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.162299" level="INFO">${flow_id} = 141</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.161905" elapsed="0.000430"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.162923" level="INFO">${flow_priority} = 18</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.162543" elapsed="0.000420"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:47.163971" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:47.163190" elapsed="0.000823"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.164719" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.164267" elapsed="0.000510"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.165450" level="INFO">${flow_id} = 141</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.164992" elapsed="0.000519"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.166183" level="INFO">${flow_priority} = 18</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.165724" elapsed="0.000518"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.166879" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.166459" elapsed="0.000536"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.167668" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.167235" elapsed="0.000497"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.168448" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc306f20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.167948" elapsed="0.000554"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:47.159347" elapsed="0.009211"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.175700" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;18&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;18&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.175454" elapsed="0.000304"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:47.191833" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '931', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;18&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;18&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:47.191975" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=141', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:47.192223" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:47.175885" elapsed="0.016418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.196998" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.192659" elapsed="0.004399"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:47.175043" elapsed="0.022118"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:47.168708" elapsed="0.028524"/>
</kw>
<var name="${flowfile}">f18.xml</var>
<status status="PASS" start="2026-05-25T01:52:47.153500" elapsed="0.043783"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.197947" level="INFO">f19.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.197602" elapsed="0.000406"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:47.202768" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f19.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f19.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:47.202954" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:47.202585" elapsed="0.000409"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:47.203756" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc306de0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:47.203224" elapsed="0.000570"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.204499" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.204050" elapsed="0.000486"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.205153" level="INFO">${flow_id} = 142</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.204748" elapsed="0.000441"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.205775" level="INFO">${flow_priority} = 19</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.205398" elapsed="0.000412"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:47.206780" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:47.206019" elapsed="0.000803"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.207507" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.207043" elapsed="0.000521"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.208258" level="INFO">${flow_id} = 142</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.207780" elapsed="0.000540"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.208836" level="INFO">${flow_priority} = 19</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.208523" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.209346" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.209028" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.209853" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.209548" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.210381" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc306de0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.210059" elapsed="0.000363"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:47.202121" elapsed="0.008355"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.217645" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;19&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;19&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.217398" elapsed="0.000305"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:47.233717" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '901', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;19&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;19&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:47.233854" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=142', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:47.234051" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:47.217829" elapsed="0.016319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.239403" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.234575" elapsed="0.004927"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:47.216987" elapsed="0.022643"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:47.210624" elapsed="0.029120"/>
</kw>
<var name="${flowfile}">f19.xml</var>
<status status="PASS" start="2026-05-25T01:52:47.197418" elapsed="0.042408"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.240809" level="INFO">f20.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.240402" elapsed="0.000451"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:47.244246" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f20.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f20.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:47.244384" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:47.244097" elapsed="0.000325"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:47.244949" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc307150&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:47.244571" elapsed="0.000405"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.245419" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.245144" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.245862" level="INFO">${flow_id} = 143</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.245595" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.246322" level="INFO">${flow_priority} = 20</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.246037" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:47.247035" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:47.246499" elapsed="0.000580"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.247556" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.247242" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.248053" level="INFO">${flow_id} = 143</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.247749" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.248596" level="INFO">${flow_priority} = 20</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.248283" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.249099" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.248787" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.249599" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.249295" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.250114" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc307150&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.249792" elapsed="0.000364"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:47.243750" elapsed="0.006461"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.257410" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;20&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;20&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xf0ff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.257161" elapsed="0.000339"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:47.267736" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '897', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;20&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;20&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xf0ff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:47.267822" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=143', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:47.267948" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:47.257630" elapsed="0.010352"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.272328" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.268256" elapsed="0.004132"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:47.256748" elapsed="0.015733"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:47.250358" elapsed="0.022210"/>
</kw>
<var name="${flowfile}">f20.xml</var>
<status status="PASS" start="2026-05-25T01:52:47.240041" elapsed="0.032590"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.273345" level="INFO">f21.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.272955" elapsed="0.000453"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:47.278262" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:47.278449" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:47.278056" elapsed="0.000434"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:47.279286" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc305530&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:47.278698" elapsed="0.000626"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.279917" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.279534" elapsed="0.000419"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.280583" level="INFO">${flow_id} = 144</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.280185" elapsed="0.000434"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.281224" level="INFO">${flow_priority} = 21</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.280829" elapsed="0.000431"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:47.282437" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:47.281466" elapsed="0.001018"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.283155" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.282697" elapsed="0.000517"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.283856" level="INFO">${flow_id} = 144</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.283425" elapsed="0.000488"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.284674" level="INFO">${flow_priority} = 21</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.284144" elapsed="0.000592"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.285393" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.284948" elapsed="0.000508"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.286184" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.285731" elapsed="0.000518"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.286891" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc305530&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.286460" elapsed="0.000489"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:47.277591" elapsed="0.009434"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.294621" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.294369" elapsed="0.000314"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:47.311022" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1266', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:47.311212" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:47.311418" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:47.294809" elapsed="0.016665"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.316539" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.311826" elapsed="0.004773"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:47.293950" elapsed="0.022728"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:47.287253" elapsed="0.029497"/>
</kw>
<var name="${flowfile}">f21.xml</var>
<status status="PASS" start="2026-05-25T01:52:47.272780" elapsed="0.044021"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.317483" level="INFO">f22.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.317136" elapsed="0.000408"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:47.322303" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f22.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f22.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:47.322504" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:47.322103" elapsed="0.000484"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:47.323413" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3052b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:47.322803" elapsed="0.000649"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.324049" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.323664" elapsed="0.000442"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.324708" level="INFO">${flow_id} = 145</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.324333" elapsed="0.000410"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.325358" level="INFO">${flow_priority} = 22</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.324951" elapsed="0.000442"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:47.326553" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:47.325599" elapsed="0.000996"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.327274" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.326811" elapsed="0.000522"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.327977" level="INFO">${flow_id} = 145</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.327548" elapsed="0.000485"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.328824" level="INFO">${flow_priority} = 22</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.328296" elapsed="0.000570"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.329345" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.329019" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.329845" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.329541" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.330369" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3052b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.330039" elapsed="0.000371"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:47.321625" elapsed="0.008839"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.337635" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;22&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;22&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.337389" elapsed="0.000308"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:47.354034" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1264', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;22&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;22&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:47.354296" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=145', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:47.354506" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:47.337825" elapsed="0.016738"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.358426" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.354913" elapsed="0.003573"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:47.336973" elapsed="0.021592"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:47.330611" elapsed="0.028024"/>
</kw>
<var name="${flowfile}">f22.xml</var>
<status status="PASS" start="2026-05-25T01:52:47.316938" elapsed="0.041748"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.359366" level="INFO">f23.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.358996" elapsed="0.000431"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:47.364223" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f23.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f23.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:47.364426" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:47.363993" elapsed="0.000474"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:47.365300" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc306fc0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:47.364690" elapsed="0.000649"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.365937" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.365553" elapsed="0.000420"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.366592" level="INFO">${flow_id} = 146</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.366212" elapsed="0.000415"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.367239" level="INFO">${flow_priority} = 23</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.366834" elapsed="0.000441"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:47.368551" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:47.367482" elapsed="0.001112"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.369097" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.368766" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.369629" level="INFO">${flow_id} = 146</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.369307" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.370145" level="INFO">${flow_priority} = 23</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.369820" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.370637" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.370336" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.371153" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.370831" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.371658" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc306fc0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.371351" elapsed="0.000348"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:47.363531" elapsed="0.008222"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.378903" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;23&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;23&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.378656" elapsed="0.000344"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:47.393999" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1349', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;23&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;23&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:47.394198" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=146', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:47.394402" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:47.379145" elapsed="0.015315"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.398399" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.394812" elapsed="0.003648"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:47.378260" elapsed="0.020284"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:47.371901" elapsed="0.026714"/>
</kw>
<var name="${flowfile}">f23.xml</var>
<status status="PASS" start="2026-05-25T01:52:47.358820" elapsed="0.039846"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.399355" level="INFO">f24.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.398982" elapsed="0.000434"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:47.404224" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f24.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f24.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:47.404411" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:47.403986" elapsed="0.000467"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:47.405217" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e7920&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:47.404662" elapsed="0.000594"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.405857" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.405471" elapsed="0.000421"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.406500" level="INFO">${flow_id} = 147</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.406124" elapsed="0.000411"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.407140" level="INFO">${flow_priority} = 24</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.406743" elapsed="0.000434"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:47.408135" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:47.407386" elapsed="0.000820"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.408754" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.408428" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.409270" level="INFO">${flow_id} = 147</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.408947" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.409774" level="INFO">${flow_priority} = 24</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.409463" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.410323" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.409999" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.410833" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.410525" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.411355" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e7920&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.411029" elapsed="0.000368"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:47.403526" elapsed="0.007925"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.418768" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;24&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;24&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                        &lt;output-action&gt;
                        &lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.418518" elapsed="0.000308"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:47.432640" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '847', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;24&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;24&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                        &lt;output-action&gt;
                        &lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:47.432777" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=147', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:47.432979" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:47.418996" elapsed="0.014039"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.438057" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.433429" elapsed="0.004757"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:47.418117" elapsed="0.020199"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:47.411601" elapsed="0.026826"/>
</kw>
<var name="${flowfile}">f24.xml</var>
<status status="PASS" start="2026-05-25T01:52:47.398802" elapsed="0.039707"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.439601" level="INFO">f25.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.439012" elapsed="0.000688"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:47.444810" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f25.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f25.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:47.444990" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:47.444624" elapsed="0.000406"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:47.445847" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e6340&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:47.445261" elapsed="0.000624"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.446562" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.446163" elapsed="0.000435"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.447228" level="INFO">${flow_id} = 148</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.446817" elapsed="0.000447"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.447849" level="INFO">${flow_priority} = 25</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.447473" elapsed="0.000411"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:47.449152" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:47.448113" elapsed="0.001083"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.449860" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.449412" elapsed="0.000505"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.450581" level="INFO">${flow_id} = 148</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.450153" elapsed="0.000484"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.451381" level="INFO">${flow_priority} = 25</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.450849" elapsed="0.000592"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.452098" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.451655" elapsed="0.000541"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.452740" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.452413" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.453271" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e6340&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.452946" elapsed="0.000366"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:47.444129" elapsed="0.009238"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.460807" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;25&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;25&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.460553" elapsed="0.000318"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:47.475969" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1374', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;25&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;25&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:47.476279" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=148', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:47.476499" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:47.461000" elapsed="0.015556"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.481211" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.476908" elapsed="0.004364"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:47.460041" elapsed="0.021311"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:47.453517" elapsed="0.027905"/>
</kw>
<var name="${flowfile}">f25.xml</var>
<status status="PASS" start="2026-05-25T01:52:47.438727" elapsed="0.042746"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.482161" level="INFO">f31.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.481795" elapsed="0.000428"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:47.486980" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f31.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f31.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:47.487188" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:47.486795" elapsed="0.000434"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:47.487988" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bad40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:47.487440" elapsed="0.000586"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.488662" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.488277" elapsed="0.000420"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.489306" level="INFO">${flow_id} = 154</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.488908" elapsed="0.000434"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.489926" level="INFO">${flow_priority} = 31</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.489552" elapsed="0.000409"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:47.491043" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:47.490190" elapsed="0.000914"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.491764" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.491324" elapsed="0.000498"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.492525" level="INFO">${flow_id} = 154</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.492037" elapsed="0.000530"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.493032" level="INFO">${flow_priority} = 31</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.492721" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.493550" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.493248" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.494051" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.493745" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.494581" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bad40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.494272" elapsed="0.000350"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:47.486334" elapsed="0.008343"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.501847" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;154&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;31&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf31&lt;/flow-name&gt;
    &lt;priority&gt;31&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.501597" elapsed="0.000347"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:47.516320" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '956', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;154&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;31&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf31&lt;/flow-name&gt;
    &lt;priority&gt;31&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:47.516459" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=154', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:47.516661" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:47.502092" elapsed="0.014626"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.521804" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.517103" elapsed="0.004798"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:47.501197" elapsed="0.020833"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:47.494824" elapsed="0.027356"/>
</kw>
<var name="${flowfile}">f31.xml</var>
<status status="PASS" start="2026-05-25T01:52:47.481615" elapsed="0.040648"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.523346" level="INFO">f36.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.522761" elapsed="0.000684"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:47.528681" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f36.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f36.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:47.528862" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:47.528496" elapsed="0.000406"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:47.529768" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4be070&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:47.529156" elapsed="0.000652"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.530431" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.530022" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.531050" level="INFO">${flow_id} = 159</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.530677" elapsed="0.000429"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.531719" level="INFO">${flow_priority} = 36</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.531316" elapsed="0.000448"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:47.532883" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:47.531992" elapsed="0.000934"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.533617" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.533174" elapsed="0.000502"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.534361" level="INFO">${flow_id} = 159</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.533902" elapsed="0.000517"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.535228" level="INFO">${flow_priority} = 36</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.534632" elapsed="0.000657"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.535809" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.535500" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.536414" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.536045" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.536929" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4be070&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.536618" elapsed="0.000354"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:47.527977" elapsed="0.009050"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.544245" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;ip-match&gt;
                            &lt;ip-dscp&gt;1&lt;/ip-dscp&gt;
                        &lt;/ip-match&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;159&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;36&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf36&lt;/flow-name&gt;
    &lt;priority&gt;36&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.543928" elapsed="0.000377"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:47.557747" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1032', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;ip-match&gt;
                            &lt;ip-dscp&gt;1&lt;/ip-dscp&gt;
                        &lt;/ip-match&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;159&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;36&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf36&lt;/flow-name&gt;
    &lt;priority&gt;36&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:47.557908" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=159', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:47.558150" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:47.544435" elapsed="0.013775"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.563555" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.558638" elapsed="0.005016"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:47.543528" elapsed="0.020255"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:47.537195" elapsed="0.026703"/>
</kw>
<var name="${flowfile}">f36.xml</var>
<status status="PASS" start="2026-05-25T01:52:47.522478" elapsed="0.041501"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.564778" level="INFO">f38.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.564529" elapsed="0.000294"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:47.568376" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f38.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f38.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:47.568511" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:47.568235" elapsed="0.000305"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:47.569103" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc307d30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:47.568691" elapsed="0.000441"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.569598" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.569318" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.570048" level="INFO">${flow_id} = 161</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.569777" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.570594" level="INFO">${flow_priority} = 38</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.570313" elapsed="0.000307"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:47.571408" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:47.570773" elapsed="0.000666"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.571919" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.571600" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.572471" level="INFO">${flow_id} = 161</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.572150" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.572993" level="INFO">${flow_priority} = 38</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.572674" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.573503" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.573202" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.574012" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.573698" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.574544" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc307d30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.574226" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:47.567828" elapsed="0.006812"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.581901" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-queue-action&gt;
                        &lt;queue-id&gt;1&lt;/queue-id&gt;
                    &lt;/set-queue-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;161&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;38&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf38&lt;/flow-name&gt;
    &lt;priority&gt;38&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.581649" elapsed="0.000312"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:47.593636" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1055', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-queue-action&gt;
                        &lt;queue-id&gt;1&lt;/queue-id&gt;
                    &lt;/set-queue-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;161&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;38&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf38&lt;/flow-name&gt;
    &lt;priority&gt;38&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:47.593701" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=161', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:47.593824" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:47.582107" elapsed="0.011743"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.598310" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.594009" elapsed="0.004402"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:47.581241" elapsed="0.017301"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:47.574796" elapsed="0.023862"/>
</kw>
<var name="${flowfile}">f38.xml</var>
<status status="PASS" start="2026-05-25T01:52:47.564301" elapsed="0.034440"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.599864" level="INFO">f43.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.599294" elapsed="0.000668"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:47.605960" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f43.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f43.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:47.606104" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:47.605827" elapsed="0.000308"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:47.606689" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bf1f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:47.606286" elapsed="0.000430"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.607159" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.606867" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.607606" level="INFO">${flow_id} = 166</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.607336" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.608050" level="INFO">${flow_priority} = 43</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.607780" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:47.608918" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:47.608258" elapsed="0.000690"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.609435" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.609118" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.609939" level="INFO">${flow_id} = 166</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.609634" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.610464" level="INFO">${flow_priority} = 43</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.610152" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.610951" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.610655" elapsed="0.000340"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.611466" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.611161" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.611965" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bf1f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.611661" elapsed="0.000345"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:47.605492" elapsed="0.006568"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.619318" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;166&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;43&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf43&lt;/flow-name&gt;
    &lt;priority&gt;43&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.619055" elapsed="0.000358"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:47.631720" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1111', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;166&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;43&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf43&lt;/flow-name&gt;
    &lt;priority&gt;43&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:47.631812" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=166', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:47.631940" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:47.619544" elapsed="0.012431"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.635150" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.632252" elapsed="0.002958"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:47.618658" elapsed="0.016633"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:47.612263" elapsed="0.023100"/>
</kw>
<var name="${flowfile}">f43.xml</var>
<status status="PASS" start="2026-05-25T01:52:47.598956" elapsed="0.036458"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.636092" level="INFO">f45.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.635728" elapsed="0.000475"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:47.641056" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f45.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f45.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:47.641268" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:47.640871" elapsed="0.000437"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:47.642050" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4d94e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:47.641517" elapsed="0.000595"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.642709" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.642325" elapsed="0.000419"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.643363" level="INFO">${flow_id} = 168</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.642954" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.643985" level="INFO">${flow_priority} = 45</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.643610" elapsed="0.000410"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:47.645116" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:47.644272" elapsed="0.000889"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.645836" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.645388" elapsed="0.000506"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.646558" level="INFO">${flow_id} = 168</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.646127" elapsed="0.000488"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.647280" level="INFO">${flow_priority} = 45</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.646825" elapsed="0.000513"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.647970" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.647552" elapsed="0.000584"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.648719" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.648374" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.649243" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4d94e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.648916" elapsed="0.000370"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:47.640404" elapsed="0.008937"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.656553" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;168&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;1180719718&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xfff0ffff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
    &lt;cookie&gt;45&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf45&lt;/flow-name&gt;
    &lt;priority&gt;45&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.656300" elapsed="0.000311"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:47.672737" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '902', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;168&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;1180719718&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xfff0ffff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
    &lt;cookie&gt;45&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf45&lt;/flow-name&gt;
    &lt;priority&gt;45&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:47.672875" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=168', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:47.673113" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:47.656738" elapsed="0.016436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.678244" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.673539" elapsed="0.004804"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:47.655872" elapsed="0.022598"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:47.649490" elapsed="0.029093"/>
</kw>
<var name="${flowfile}">f45.xml</var>
<status status="PASS" start="2026-05-25T01:52:47.635548" elapsed="0.043118"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.679757" level="INFO">f101.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.679196" elapsed="0.000659"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:47.684928" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f101.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f101.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:47.685131" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:47.684742" elapsed="0.000431"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:47.685963" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4d98f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:47.685382" elapsed="0.000620"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.686619" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.686234" elapsed="0.000421"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.687319" level="INFO">${flow_id} = 224</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.686913" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.687946" level="INFO">${flow_priority} = 101</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.687567" elapsed="0.000414"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:47.689217" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:47.688226" elapsed="0.001033"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.689919" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.689474" elapsed="0.000503"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.690657" level="INFO">${flow_id} = 224</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.690221" elapsed="0.000492"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.691383" level="INFO">${flow_priority} = 101</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.690925" elapsed="0.000515"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.692118" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.691655" elapsed="0.000530"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.692727" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.692398" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.693250" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4d98f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.692927" elapsed="0.000364"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:47.684275" elapsed="0.009071"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.700462" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;101&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;101&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.700211" elapsed="0.000320"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:47.711289" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1435', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;101&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;101&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:47.711421" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=224', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:47.711739" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:47.700658" elapsed="0.011146"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.717021" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.712261" elapsed="0.004890"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:47.699776" elapsed="0.017588"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:47.693495" elapsed="0.023987"/>
</kw>
<var name="${flowfile}">f101.xml</var>
<status status="PASS" start="2026-05-25T01:52:47.678878" elapsed="0.038690"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.718661" level="INFO">f102.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.718102" elapsed="0.000657"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:47.723186" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f102.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f102.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:47.723320" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:47.723035" elapsed="0.000314"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:47.723921" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4dba60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:47.723504" elapsed="0.000444"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.724447" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.724128" elapsed="0.000345"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.724895" level="INFO">${flow_id} = 225</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.724625" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.725357" level="INFO">${flow_priority} = 102</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.725085" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:47.726314" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:47.725532" elapsed="0.000814"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.726827" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.726503" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.727344" level="INFO">${flow_id} = 225</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.727022" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.727848" level="INFO">${flow_priority} = 102</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.727537" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.728422" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.728117" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.728922" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.728618" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.729448" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4dba60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.729139" elapsed="0.000350"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:47.722659" elapsed="0.006883"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.736701" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;102&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;102&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.736452" elapsed="0.000352"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:47.751363" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1563', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;102&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;102&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:47.751573" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=225', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:47.751844" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:47.736935" elapsed="0.014973"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.759769" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.752501" elapsed="0.007390"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:47.736030" elapsed="0.024026"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:47.729691" elapsed="0.030614"/>
</kw>
<var name="${flowfile}">f102.xml</var>
<status status="PASS" start="2026-05-25T01:52:47.717786" elapsed="0.042609"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.761298" level="INFO">f103.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.760851" elapsed="0.000513"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:47.766560" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f103.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f103.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:47.766809" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:47.766354" elapsed="0.000497"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:47.767745" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35a200&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:47.767093" elapsed="0.000694"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.768469" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.768015" elapsed="0.000498"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.769124" level="INFO">${flow_id} = 226</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.768728" elapsed="0.000433"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.769748" level="INFO">${flow_priority} = 103</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.769373" elapsed="0.000410"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:47.771252" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:47.769991" elapsed="0.001304"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.771971" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.771520" elapsed="0.000509"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.772686" level="INFO">${flow_id} = 226</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.772316" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.773276" level="INFO">${flow_priority} = 103</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.772940" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.773780" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.773473" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.774306" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.773978" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.774836" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35a200&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.774505" elapsed="0.000382"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:47.765818" elapsed="0.009139"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.782320" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;103&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;103&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;1&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.782050" elapsed="0.000336"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:47.796496" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1557', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;103&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;103&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;1&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:47.796655" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=226', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:47.796861" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:47.782517" elapsed="0.014400"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.801967" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.797308" elapsed="0.004791"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:47.781647" elapsed="0.020606"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:47.775181" elapsed="0.027310"/>
</kw>
<var name="${flowfile}">f103.xml</var>
<status status="PASS" start="2026-05-25T01:52:47.760601" elapsed="0.041974"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.803670" level="INFO">f104.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.803116" elapsed="0.000652"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:47.808875" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f104.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f104.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:47.809060" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:47.808677" elapsed="0.000447"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:47.809910" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35bc40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:47.809334" elapsed="0.000614"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.810606" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.810205" elapsed="0.000437"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.811276" level="INFO">${flow_id} = 227</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.810855" elapsed="0.000463"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.811986" level="INFO">${flow_priority} = 104</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.811577" elapsed="0.000445"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:47.813271" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:47.812275" elapsed="0.001038"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.813971" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.813530" elapsed="0.000499"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.814695" level="INFO">${flow_id} = 227</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.814265" elapsed="0.000487"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.815423" level="INFO">${flow_priority} = 104</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.814962" elapsed="0.000517"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.816175" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.815690" elapsed="0.000555"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.816841" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.816463" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.817370" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35bc40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.817047" elapsed="0.000365"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:47.808210" elapsed="0.009257"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.824710" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;104&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;104&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.824457" elapsed="0.000358"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:47.837917" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1435', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;104&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;104&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:47.838111" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=227', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:47.838327" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:47.824946" elapsed="0.013438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.843467" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.838743" elapsed="0.004826"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:47.823969" elapsed="0.019732"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:47.817619" elapsed="0.026198"/>
</kw>
<var name="${flowfile}">f104.xml</var>
<status status="PASS" start="2026-05-25T01:52:47.802797" elapsed="0.041103"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.844832" level="INFO">f105.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.844482" elapsed="0.000412"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:47.849757" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f105.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f105.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:47.849942" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:47.849572" elapsed="0.000410"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:47.850790" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4d9c10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:47.850211" elapsed="0.000618"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.851461" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.851041" elapsed="0.000455"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.852154" level="INFO">${flow_id} = 228</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.851709" elapsed="0.000483"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.852789" level="INFO">${flow_priority} = 105</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.852408" elapsed="0.000416"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:47.854036" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:47.853034" elapsed="0.001065"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.854763" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.854321" elapsed="0.000500"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.855488" level="INFO">${flow_id} = 228</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.855035" elapsed="0.000510"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.856252" level="INFO">${flow_priority} = 105</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.855757" elapsed="0.000602"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.856860" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.856555" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.857381" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.857057" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.857885" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4d9c10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.857578" elapsed="0.000348"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:47.849101" elapsed="0.008880"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.865194" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;105&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;105&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.864930" elapsed="0.000328"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:47.878388" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1441', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;105&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;105&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:47.878543" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=228', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:47.878746" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:47.865387" elapsed="0.013416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.883907" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.879189" elapsed="0.004817"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:47.864533" elapsed="0.019654"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:47.858147" elapsed="0.026157"/>
</kw>
<var name="${flowfile}">f105.xml</var>
<status status="PASS" start="2026-05-25T01:52:47.844194" elapsed="0.040256"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.885572" level="INFO">f106.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.884971" elapsed="0.000700"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:47.890673" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f106.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f106.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:47.890811" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:47.890538" elapsed="0.000303"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:47.891427" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc359800&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:47.890991" elapsed="0.000465"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.891885" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.891608" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.892363" level="INFO">${flow_id} = 229</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.892090" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.892806" level="INFO">${flow_priority} = 106</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.892539" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:47.893704" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:47.892980" elapsed="0.000756"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.894229" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.893893" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.894736" level="INFO">${flow_id} = 229</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.894427" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.895258" level="INFO">${flow_priority} = 106</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.894930" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.895754" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.895452" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.896289" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.895949" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.896810" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc359800&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.896500" elapsed="0.000351"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:47.890206" elapsed="0.006699"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.904087" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;106&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;106&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.903814" elapsed="0.000339"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:47.916946" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1446', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;106&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;106&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:47.917117" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=229', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:47.917250" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:47.904281" elapsed="0.013005"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.920450" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.917505" elapsed="0.003026"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:47.903413" elapsed="0.017245"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:47.897055" elapsed="0.023719"/>
</kw>
<var name="${flowfile}">f106.xml</var>
<status status="PASS" start="2026-05-25T01:52:47.884681" elapsed="0.036178"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.921953" level="INFO">f107.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.921398" elapsed="0.000654"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:47.929421" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f107.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f107.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:47.929552" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:47.929289" elapsed="0.000292"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:47.930165" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bd5d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:47.929729" elapsed="0.000464"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.930621" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.930345" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.931065" level="INFO">${flow_id} = 230</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.930797" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.931534" level="INFO">${flow_priority} = 107</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.931257" elapsed="0.000302"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:47.932479" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:47.931708" elapsed="0.000801"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.932981" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.932665" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.933499" level="INFO">${flow_id} = 230</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.933190" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.934009" level="INFO">${flow_priority} = 107</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.933697" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.934563" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.934217" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.935087" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.934762" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.935600" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bd5d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.935289" elapsed="0.000353"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:47.928782" elapsed="0.006915"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.942846" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;107&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;107&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.942592" elapsed="0.000319"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:47.956803" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1604', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;107&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;107&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:47.956904" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=230', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:47.957031" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:47.943039" elapsed="0.014056"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.960413" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.957328" elapsed="0.003146"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:47.942197" elapsed="0.018384"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:47.935847" elapsed="0.024847"/>
</kw>
<var name="${flowfile}">f107.xml</var>
<status status="PASS" start="2026-05-25T01:52:47.921106" elapsed="0.039736"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.961949" level="INFO">f108.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.961388" elapsed="0.000660"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:47.969744" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f108.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f108.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:47.970034" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:47.969450" elapsed="0.000682"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:47.971445" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bffb0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:47.970469" elapsed="0.001042"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.972550" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.971848" elapsed="0.000728"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.972997" level="INFO">${flow_id} = 231</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.972728" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:47.973458" level="INFO">${flow_priority} = 108</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:47.973188" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:47.974403" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:47.973632" elapsed="0.000802"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.974908" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.974591" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.975428" level="INFO">${flow_id} = 231</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.975119" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.975930" level="INFO">${flow_priority} = 108</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.975620" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.976455" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.976155" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.976955" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.976650" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.977489" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bffb0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:47.977180" elapsed="0.000350"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:47.968676" elapsed="0.008909"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:47.984785" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;108&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;108&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.984533" elapsed="0.000357"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:47.996415" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1611', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;108&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;108&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:47.996556" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=231', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:47.996772" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:47.985022" elapsed="0.011806"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.002180" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:47.997240" elapsed="0.005044"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:47.984117" elapsed="0.018308"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:47.977733" elapsed="0.024816"/>
</kw>
<var name="${flowfile}">f108.xml</var>
<status status="PASS" start="2026-05-25T01:52:47.961095" elapsed="0.041543"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.003839" level="INFO">f109.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.003234" elapsed="0.000712"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:48.007720" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f109.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f109.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:48.007886" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:48.007582" elapsed="0.000334"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:48.008549" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e4720&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:48.008096" elapsed="0.000483"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.009015" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.008732" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.009484" level="INFO">${flow_id} = 232</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.009211" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.009933" level="INFO">${flow_priority} = 109</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.009663" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:48.010921" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:48.010126" elapsed="0.000826"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.011462" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.011133" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.011969" level="INFO">${flow_id} = 232</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.011659" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.012557" level="INFO">${flow_priority} = 109</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.012235" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.013062" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.012753" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.013584" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.013277" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.014102" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e4720&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.013780" elapsed="0.000365"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:48.007230" elapsed="0.006970"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.021381" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;109&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;109&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.021130" elapsed="0.000317"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:48.033249" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1607', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;109&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;109&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:48.033347" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=232', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:48.033476" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:48.021574" elapsed="0.011937"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.036646" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.033729" elapsed="0.002978"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:48.020713" elapsed="0.016124"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:48.014352" elapsed="0.022558"/>
</kw>
<var name="${flowfile}">f109.xml</var>
<status status="PASS" start="2026-05-25T01:52:48.002891" elapsed="0.034072"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.037686" level="INFO">f110.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.037306" elapsed="0.000442"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:48.042561" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f110.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f110.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:48.042745" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:48.042370" elapsed="0.000415"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:48.043592" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc304400&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:48.042993" elapsed="0.000637"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.044265" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.043841" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.044888" level="INFO">${flow_id} = 233</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.044513" elapsed="0.000410"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.045528" level="INFO">${flow_priority} = 110</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.045154" elapsed="0.000409"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:48.046716" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:48.045769" elapsed="0.000989"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.047440" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.046974" elapsed="0.000529"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.048192" level="INFO">${flow_id} = 233</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.047727" elapsed="0.000524"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.048937" level="INFO">${flow_priority} = 110</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.048471" elapsed="0.000523"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.049645" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.049225" elapsed="0.000482"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.050366" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.049917" elapsed="0.000511"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.051065" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc304400&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.050639" elapsed="0.000600"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:48.041886" elapsed="0.009431"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.058647" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;110&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;110&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;push-vlan-action&gt;
                        &lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;
                        &lt;vlan-id&gt;1234&lt;/vlan-id&gt;
                    &lt;/push-vlan-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.058402" elapsed="0.000346"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:48.070987" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1317', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;110&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;110&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;push-vlan-action&gt;
                        &lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;
                        &lt;vlan-id&gt;1234&lt;/vlan-id&gt;
                    &lt;/push-vlan-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:48.071054" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=233', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:48.071166" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:48.058879" elapsed="0.012313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.076130" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.071349" elapsed="0.004882"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:48.057996" elapsed="0.018437"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:48.051537" elapsed="0.025020"/>
</kw>
<var name="${flowfile}">f110.xml</var>
<status status="PASS" start="2026-05-25T01:52:48.037125" elapsed="0.039515"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.077742" level="INFO">f113.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.077177" elapsed="0.000665"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:48.082804" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f113.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f113.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:48.082937" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:48.082672" elapsed="0.000293"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:48.083556" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e5e40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:48.083130" elapsed="0.000454"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.084027" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.083736" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.084491" level="INFO">${flow_id} = 236</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.084221" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.084932" level="INFO">${flow_priority} = 113</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.084666" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:48.085837" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:48.085120" elapsed="0.000748"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.086355" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.086022" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.086856" level="INFO">${flow_id} = 236</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.086550" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.087381" level="INFO">${flow_priority} = 113</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.087047" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.087915" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.087609" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.088453" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.088144" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.088964" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e5e40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.088657" elapsed="0.000349"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:48.082340" elapsed="0.006721"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.096342" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;113&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;113&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;push-mpls-action&gt;
                        &lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;
                    &lt;/push-mpls-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.096084" elapsed="0.000324"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:48.108423" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1552', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;113&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;113&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;push-mpls-action&gt;
                        &lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;
                    &lt;/push-mpls-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:48.108549" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=236', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:48.108750" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:48.096536" elapsed="0.012270"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.113958" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.109202" elapsed="0.004854"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:48.095661" elapsed="0.018559"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:48.089229" elapsed="0.025186"/>
</kw>
<var name="${flowfile}">f113.xml</var>
<status status="PASS" start="2026-05-25T01:52:48.076857" elapsed="0.037716"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.115692" level="INFO">f156.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.115127" elapsed="0.000666"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:48.122056" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f156.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f156.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:48.122265" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:48.121917" elapsed="0.000378"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:48.122867" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e6e80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:48.122447" elapsed="0.000449"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.123349" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.123050" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.123850" level="INFO">${flow_id} = 279</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.123575" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.124338" level="INFO">${flow_priority} = 156</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.124049" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:48.125259" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:48.124514" elapsed="0.000776"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.125782" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.125460" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.126304" level="INFO">${flow_id} = 279</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.125977" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.126808" level="INFO">${flow_priority} = 156</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.126499" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.127358" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.127000" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.127862" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.127557" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.128395" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e6e80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.128085" elapsed="0.000351"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:48.121566" elapsed="0.006925"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.135669" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;279&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
      &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;156&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf156&lt;/flow-name&gt;
    &lt;priority&gt;156&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.135422" elapsed="0.000309"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:48.148448" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1247', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;279&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
      &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;156&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf156&lt;/flow-name&gt;
    &lt;priority&gt;156&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:48.148612" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=279', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:48.148760" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:48.135858" elapsed="0.012937"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.151923" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.149015" elapsed="0.003006"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:48.135007" elapsed="0.017117"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:48.128641" elapsed="0.023556"/>
</kw>
<var name="${flowfile}">f156.xml</var>
<status status="PASS" start="2026-05-25T01:52:48.114800" elapsed="0.037449"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.153213" level="INFO">f201.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.152624" elapsed="0.000688"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:48.160853" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f201.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f201.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:48.160982" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:48.160719" elapsed="0.000292"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:48.161583" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3886d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:48.161177" elapsed="0.000433"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.162036" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.161762" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.162500" level="INFO">${flow_id} = 324</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.162230" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.162943" level="INFO">${flow_priority} = 201</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.162675" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:48.163808" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:48.163132" elapsed="0.000706"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.164338" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.164006" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.164845" level="INFO">${flow_id} = 324</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.164538" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.165365" level="INFO">${flow_priority} = 201</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.165037" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.165854" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.165557" elapsed="0.000341"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.166370" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.166049" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.166869" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3886d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.166565" elapsed="0.000345"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:48.160234" elapsed="0.006729"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.174243" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;201&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;201&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.173978" elapsed="0.000360"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:48.187438" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1337', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;201&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;201&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:48.187538" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=324', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:48.187663" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:48.174470" elapsed="0.013228"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.190945" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.187919" elapsed="0.003086"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:48.173576" elapsed="0.017530"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:48.167127" elapsed="0.024052"/>
</kw>
<var name="${flowfile}">f201.xml</var>
<status status="PASS" start="2026-05-25T01:52:48.152388" elapsed="0.038843"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.191892" level="INFO">f202.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.191546" elapsed="0.000436"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:48.196770" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f202.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f202.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:48.196951" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:48.196586" elapsed="0.000405"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:48.197788" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38a3e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:48.197222" elapsed="0.000604"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.198445" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.198037" elapsed="0.000444"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.199086" level="INFO">${flow_id} = 325</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.198692" elapsed="0.000431"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.199709" level="INFO">${flow_priority} = 202</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.199335" elapsed="0.000409"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:48.200921" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:48.199967" elapsed="0.000996"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.201638" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.201199" elapsed="0.000497"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.202359" level="INFO">${flow_id} = 325</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.201909" elapsed="0.000506"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.203065" level="INFO">${flow_priority} = 202</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.202632" elapsed="0.000513"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.203825" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.203402" elapsed="0.000485"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.204595" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.204159" elapsed="0.000482"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.205115" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38a3e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.204793" elapsed="0.000365"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:48.196123" elapsed="0.009089"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.212432" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;202&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;202&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.212160" elapsed="0.000338"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:48.226569" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1347', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;202&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;202&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:48.226732" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=325', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:48.226950" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:48.212631" elapsed="0.014381"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.234139" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.227441" elapsed="0.006799"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:48.211716" elapsed="0.022652"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:48.205360" elapsed="0.029120"/>
</kw>
<var name="${flowfile}">f202.xml</var>
<status status="PASS" start="2026-05-25T01:52:48.191367" elapsed="0.043196"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.235695" level="INFO">f203.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.235133" elapsed="0.000660"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:48.241237" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f203.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f203.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:48.241446" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:48.241012" elapsed="0.000474"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:48.242327" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38b920&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:48.241696" elapsed="0.000669"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.242968" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.242578" elapsed="0.000426"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.243638" level="INFO">${flow_id} = 326</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.243249" elapsed="0.000432"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.244325" level="INFO">${flow_priority} = 203</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.243893" elapsed="0.000469"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:48.245550" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:48.244572" elapsed="0.001020"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.246298" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.245809" elapsed="0.000549"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.247003" level="INFO">${flow_id} = 326</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.246571" elapsed="0.000491"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.247734" level="INFO">${flow_priority} = 203</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.247297" elapsed="0.000494"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.248503" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.248041" elapsed="0.000540"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.249090" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.248765" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.249606" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38b920&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.249292" elapsed="0.000356"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:48.240538" elapsed="0.009165"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.256895" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;203&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;203&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.256645" elapsed="0.000313"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:48.266642" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1338', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;203&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;203&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:48.266750" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=326', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:48.266846" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:48.257103" elapsed="0.009769"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.270021" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.267031" elapsed="0.003143"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:48.256227" elapsed="0.014080"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:48.249852" elapsed="0.020568"/>
</kw>
<var name="${flowfile}">f203.xml</var>
<status status="PASS" start="2026-05-25T01:52:48.234790" elapsed="0.035713"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.271607" level="INFO">f204.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.271008" elapsed="0.000698"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:48.277937" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f204.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f204.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:48.278095" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:48.277794" elapsed="0.000333"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:48.278709" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3891c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:48.278294" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.279187" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.278890" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.279646" level="INFO">${flow_id} = 327</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.279367" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.280154" level="INFO">${flow_priority} = 204</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.279825" elapsed="0.000357"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:48.281020" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:48.280335" elapsed="0.000715"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.281544" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.281226" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.282061" level="INFO">${flow_id} = 327</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.281740" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.282590" level="INFO">${flow_priority} = 204</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.282275" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.283102" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.282781" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.283611" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.283302" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.284162" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3891c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.283808" elapsed="0.000397"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:48.277446" elapsed="0.006814"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.291496" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;204&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;204&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.291246" elapsed="0.000349"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:48.301093" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1348', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;204&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;204&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:48.301191" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=327', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:48.301318" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:48.291726" elapsed="0.009627"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.304570" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.301571" elapsed="0.003060"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:48.290822" elapsed="0.013890"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:48.284409" elapsed="0.020375"/>
</kw>
<var name="${flowfile}">f204.xml</var>
<status status="PASS" start="2026-05-25T01:52:48.270721" elapsed="0.034115"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.305517" level="INFO">f205.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.305170" elapsed="0.000409"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:48.310343" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f205.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f205.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:48.310525" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:48.310156" elapsed="0.000410"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:48.311379" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc305990&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:48.310775" elapsed="0.000643"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.312039" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.311632" elapsed="0.000462"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.312690" level="INFO">${flow_id} = 328</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.312309" elapsed="0.000416"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.313336" level="INFO">${flow_priority} = 205</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.312939" elapsed="0.000432"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:48.314620" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:48.313579" elapsed="0.001082"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.315339" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.314878" elapsed="0.000520"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.316103" level="INFO">${flow_id} = 328</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.315613" elapsed="0.000550"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.316762" level="INFO">${flow_priority} = 205</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.316375" elapsed="0.000428"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.317312" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.316991" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.317815" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.317510" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.318337" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc305990&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.318011" elapsed="0.000368"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:48.309676" elapsed="0.008758"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.325597" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;328&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;205&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;
    &lt;priority&gt;205&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.325344" elapsed="0.000318"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:48.336307" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1544', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;328&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;205&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;
    &lt;priority&gt;205&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:48.336378" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=328', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:48.336467" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:48.325789" elapsed="0.010705"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.339637" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.336743" elapsed="0.002953"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:48.324934" elapsed="0.014843"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:48.318581" elapsed="0.021267"/>
</kw>
<var name="${flowfile}">f205.xml</var>
<status status="PASS" start="2026-05-25T01:52:48.304970" elapsed="0.034989"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.340657" level="INFO">f206.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.340311" elapsed="0.000408"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:48.345523" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f206.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f206.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:48.345742" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:48.345320" elapsed="0.000462"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:48.346591" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc388a90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:48.345988" elapsed="0.000642"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.347248" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.346840" elapsed="0.000444"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.347873" level="INFO">${flow_id} = 329</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.347497" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.348592" level="INFO">${flow_priority} = 206</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.348182" elapsed="0.000442"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:48.349526" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:48.348789" elapsed="0.000768"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.350026" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.349712" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.350549" level="INFO">${flow_id} = 329</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.350236" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.351051" level="INFO">${flow_priority} = 206</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.350740" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.351561" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.351261" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.352091" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.351755" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.352597" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc388a90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.352290" elapsed="0.000348"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:48.344836" elapsed="0.007856"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.359876" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;329&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;206&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;
    &lt;priority&gt;206&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.359628" elapsed="0.000344"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:48.372660" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1552', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;329&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;206&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;
    &lt;priority&gt;206&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:48.372757" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=329', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:48.372883" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:48.360163" elapsed="0.012755"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.376117" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.373166" elapsed="0.003013"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:48.359231" elapsed="0.017031"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:48.352841" elapsed="0.023493"/>
</kw>
<var name="${flowfile}">f206.xml</var>
<status status="PASS" start="2026-05-25T01:52:48.340130" elapsed="0.036258"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.377060" level="INFO">f209.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.376704" elapsed="0.000454"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:48.381990" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f209.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f209.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:48.382195" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;co...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:48.381806" elapsed="0.000430"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:48.383023" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc305a80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:48.382445" elapsed="0.000617"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.383682" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.383298" elapsed="0.000420"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.384359" level="INFO">${flow_id} = 332</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.383949" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.385022" level="INFO">${flow_priority} = 209</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.384641" elapsed="0.000416"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:48.386287" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/co...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:48.385289" elapsed="0.001041"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.386988" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.386547" elapsed="0.000499"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.387715" level="INFO">${flow_id} = 332</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.387282" elapsed="0.000489"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.388533" level="INFO">${flow_priority} = 209</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.388027" elapsed="0.000548"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.389032" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;co...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.388729" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.389556" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/co...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.389247" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.390058" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc305a80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.389753" elapsed="0.000367"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:48.381344" elapsed="0.008831"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.397385" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;209&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;209&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tunnel&gt;
                            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;
                        &lt;/tunnel&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.397134" elapsed="0.000315"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:48.408268" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1432', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;209&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;209&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tunnel&gt;
                            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;
                        &lt;/tunnel&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:48.408337" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=332', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:48.408427" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:48.397582" elapsed="0.010870"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.413507" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.408771" elapsed="0.004835"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:48.396722" elapsed="0.017015"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:48.390325" elapsed="0.023526"/>
</kw>
<var name="${flowfile}">f209.xml</var>
<status status="PASS" start="2026-05-25T01:52:48.376524" elapsed="0.037471"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.415126" level="INFO">f214.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.414538" elapsed="0.000692"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:48.422212" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f214.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f214.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:48.422361" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:48.422032" elapsed="0.000377"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:48.423139" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bf790&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:48.422611" elapsed="0.000560"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.423674" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.423353" elapsed="0.000350"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.424270" level="INFO">${flow_id} = 337</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.423902" elapsed="0.000396"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.424782" level="INFO">${flow_priority} = 214</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.424470" elapsed="0.000341"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:48.425776" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:48.424988" elapsed="0.000822"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.426349" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.425996" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.426860" level="INFO">${flow_id} = 337</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.426552" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.427386" level="INFO">${flow_priority} = 214</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.427052" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.427893" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.427578" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.428417" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.428105" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.428932" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bf790&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.428613" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:48.421626" elapsed="0.007403"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.436261" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;214&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;214&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
		    &lt;ip-match&gt;
        		&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
		    &lt;/ip-match&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
		&lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
	    &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.435992" elapsed="0.000329"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:48.447163" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1138', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;214&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;214&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
		    &lt;ip-match&gt;
        		&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
		    &lt;/ip-match&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
		&lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
	    &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:48.447304" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=337', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:48.447436" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:48.436452" elapsed="0.011019"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.450616" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.447689" elapsed="0.002987"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:48.435576" elapsed="0.015181"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:48.429197" elapsed="0.021629"/>
</kw>
<var name="${flowfile}">f214.xml</var>
<status status="PASS" start="2026-05-25T01:52:48.414252" elapsed="0.036626"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.451576" level="INFO">f218.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.451221" elapsed="0.000417"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:48.456506" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f218.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f218.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:48.456689" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:48.456319" elapsed="0.000411"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:48.457500" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e48b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:48.456940" elapsed="0.000603"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.458163" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.457756" elapsed="0.000444"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.458785" level="INFO">${flow_id} = 341</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.458412" elapsed="0.000408"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.459423" level="INFO">${flow_priority} = 218</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.459028" elapsed="0.000430"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:48.460462" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:48.459666" elapsed="0.000843"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.461194" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.460733" elapsed="0.000521"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.461902" level="INFO">${flow_id} = 341</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.461469" elapsed="0.000490"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.462629" level="INFO">${flow_priority} = 218</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.462192" elapsed="0.000494"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.463337" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.462897" elapsed="0.000503"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.464101" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.463617" elapsed="0.000549"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.464728" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e48b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.464382" elapsed="0.000387"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:48.455816" elapsed="0.009008"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.472121" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;go-to-table&gt;
                &lt;table_id&gt;3&lt;/table_id&gt;
            &lt;/go-to-table&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;341&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-mask&gt;0xfff0&lt;/tunnel-mask&gt;
            &lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
    &lt;cookie&gt;218&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;
    &lt;priority&gt;218&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.471841" elapsed="0.000380"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:48.481098" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '822', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;go-to-table&gt;
                &lt;table_id&gt;3&lt;/table_id&gt;
            &lt;/go-to-table&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;341&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-mask&gt;0xfff0&lt;/tunnel-mask&gt;
            &lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
    &lt;cookie&gt;218&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;
    &lt;priority&gt;218&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:48.481166" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=341', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:48.481258" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:48.472351" elapsed="0.008932"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.483482" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.481440" elapsed="0.002089"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:48.471444" elapsed="0.012143"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:48.464972" elapsed="0.018667"/>
</kw>
<var name="${flowfile}">f218.xml</var>
<status status="PASS" start="2026-05-25T01:52:48.451019" elapsed="0.032657"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.484197" level="INFO">f219.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.483932" elapsed="0.000309"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:48.491651" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f219.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f219.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:48.491989" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;c...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:48.491359" elapsed="0.000696"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:48.492948" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4d8630&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:48.492420" elapsed="0.000555"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.493417" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.493142" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.493860" level="INFO">${flow_id} = 342</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.493593" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.494320" level="INFO">${flow_priority} = 219</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.494033" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:48.495146" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:48.494495" elapsed="0.000682"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.495654" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.495333" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.496193" level="INFO">${flow_id} = 342</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.495866" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.496696" level="INFO">${flow_priority} = 219</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.496386" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.497203" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;c...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.496887" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.497749" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.497435" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.498273" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4d8630&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.497945" elapsed="0.000370"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:48.490595" elapsed="0.007775"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.505540" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
		&lt;/clear-actions&gt;
	&lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;342&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;10&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;219&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;
    &lt;priority&gt;219&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.505287" elapsed="0.000313"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:48.519973" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1123', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
		&lt;/clear-actions&gt;
	&lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;342&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;10&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;219&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;
    &lt;priority&gt;219&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:48.520063" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=342', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:48.520218" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:48.505728" elapsed="0.014525"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.523343" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.520472" elapsed="0.002931"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:48.504875" elapsed="0.018608"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:48.498525" elapsed="0.025030"/>
</kw>
<var name="${flowfile}">f219.xml</var>
<status status="PASS" start="2026-05-25T01:52:48.483772" elapsed="0.039835"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.524333" level="INFO">f220.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.523958" elapsed="0.000436"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:48.529142" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f220.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f220.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:48.529323" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:48.528940" elapsed="0.000424"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:48.530144" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e6b60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:48.529577" elapsed="0.000607"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.530831" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.530441" elapsed="0.000427"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.531482" level="INFO">${flow_id} = 343</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.531101" elapsed="0.000417"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.532144" level="INFO">${flow_priority} = 220</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.531728" elapsed="0.000452"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:48.533196" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:48.532391" elapsed="0.000848"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.533911" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.533466" elapsed="0.000503"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.534640" level="INFO">${flow_id} = 343</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.534206" elapsed="0.000490"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.535367" level="INFO">${flow_priority} = 220</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.534909" elapsed="0.000514"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.536118" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.535633" elapsed="0.000549"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.536798" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.536394" elapsed="0.000448"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.537318" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e6b60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.536993" elapsed="0.000367"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:48.528480" elapsed="0.008934"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.544549" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;write-metadata&gt;
                &lt;metadata-mask&gt;12&lt;/metadata-mask&gt;
                &lt;metadata&gt;10&lt;/metadata&gt;
            &lt;/write-metadata&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;343&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;220&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;
    &lt;priority&gt;220&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.544303" elapsed="0.000304"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:48.554206" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '959', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;write-metadata&gt;
                &lt;metadata-mask&gt;12&lt;/metadata-mask&gt;
                &lt;metadata&gt;10&lt;/metadata&gt;
            &lt;/write-metadata&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;343&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;220&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;
    &lt;priority&gt;220&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:48.554268" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=343', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:48.554391" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:48.544733" elapsed="0.009684"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.556909" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.554579" elapsed="0.002424"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:48.543885" elapsed="0.013278"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:48.537562" elapsed="0.019718"/>
</kw>
<var name="${flowfile}">f220.xml</var>
<status status="PASS" start="2026-05-25T01:52:48.523740" elapsed="0.033624"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.558457" level="INFO">f221.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.557863" elapsed="0.000694"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:48.566219" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f221.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f221.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:48.566508" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:48.565891" elapsed="0.000681"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:48.567981" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4da840&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:48.566906" elapsed="0.001139"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.568838" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.568427" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.569310" level="INFO">${flow_id} = 344</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.569023" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.569756" level="INFO">${flow_priority} = 221</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.569488" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:48.570579" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:48.569930" elapsed="0.000680"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.571105" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.570771" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.571616" level="INFO">${flow_id} = 344</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.571303" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.572153" level="INFO">${flow_priority} = 221</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.571809" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.572649" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.572348" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.573166" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.572845" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.573679" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4da840&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.573372" elapsed="0.000349"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:48.565149" elapsed="0.008626"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.581055" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;1&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;344&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;10&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;221&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;
    &lt;priority&gt;221&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.580801" elapsed="0.000367"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:48.591532" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1162', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;1&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;344&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;10&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;221&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;
    &lt;priority&gt;221&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:48.591598" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=344', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:48.591687" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:48.581298" elapsed="0.010415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.593946" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.591888" elapsed="0.002101"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:48.580395" elapsed="0.013651"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:48.573923" elapsed="0.020192"/>
</kw>
<var name="${flowfile}">f221.xml</var>
<status status="PASS" start="2026-05-25T01:52:48.557579" elapsed="0.036573"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.594634" level="INFO">f222.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.594382" elapsed="0.000297"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:48.598832" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f222.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f222.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:48.599015" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:48.598646" elapsed="0.000410"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:48.599833" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3587c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:48.599292" elapsed="0.000584"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.600505" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.600114" elapsed="0.000428"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.601155" level="INFO">${flow_id} = 345</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.600754" elapsed="0.000437"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.601783" level="INFO">${flow_priority} = 222</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.601401" elapsed="0.000417"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:48.602729" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:48.602023" elapsed="0.000748"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.603460" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.602989" elapsed="0.000528"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.604225" level="INFO">${flow_id} = 345</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.603742" elapsed="0.000543"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.604938" level="INFO">${flow_priority} = 222</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.604500" elapsed="0.000495"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.605655" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.605230" elapsed="0.000534"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.606442" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.605981" elapsed="0.000525"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.607172" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3587c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.606718" elapsed="0.000514"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:48.598179" elapsed="0.009130"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.614855" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;id&gt;345&lt;/id&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                   &lt;order&gt;0&lt;/order&gt;
                   &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.614597" elapsed="0.000314"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:48.625683" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '730', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;id&gt;345&lt;/id&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                   &lt;order&gt;0&lt;/order&gt;
                   &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:48.625823" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=345', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:48.626022" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:48.615039" elapsed="0.011083"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.631164" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.626488" elapsed="0.004773"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:48.614199" elapsed="0.017190"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:48.607518" elapsed="0.023984"/>
</kw>
<var name="${flowfile}">f222.xml</var>
<status status="PASS" start="2026-05-25T01:52:48.594249" elapsed="0.037334"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.633010" level="INFO">f223.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.632412" elapsed="0.000729"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:48.638542" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f223.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f223.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:48.638690" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:48.638409" elapsed="0.000310"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:48.639281" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc359fd0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:48.638870" elapsed="0.000439"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.639736" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.639460" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.640225" level="INFO">${flow_id} = 346</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.639936" elapsed="0.000345"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.640712" level="INFO">${flow_priority} = 223</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.640435" elapsed="0.000303"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:48.641410" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:48.640886" elapsed="0.000554"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.641913" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.641596" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.642435" level="INFO">${flow_id} = 346</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.642126" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.642937" level="INFO">${flow_priority} = 223</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.642627" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.643454" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.643153" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.643972" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.643654" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.644501" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc359fd0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.644190" elapsed="0.000352"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:48.638061" elapsed="0.006536"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.651720" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;
        &lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;
    &lt;/match&gt;
    &lt;id&gt;346&lt;/id&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                   &lt;order&gt;0&lt;/order&gt;
                   &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.651473" elapsed="0.000303"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:48.661404" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '853', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;
        &lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;
    &lt;/match&gt;
    &lt;id&gt;346&lt;/id&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                   &lt;order&gt;0&lt;/order&gt;
                   &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:48.661465" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=346', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:48.661555" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:48.651926" elapsed="0.009654"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.664676" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.661736" elapsed="0.002983"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:48.651059" elapsed="0.013717"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:48.644746" elapsed="0.020112"/>
</kw>
<var name="${flowfile}">f223.xml</var>
<status status="PASS" start="2026-05-25T01:52:48.631797" elapsed="0.033099"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.665401" level="INFO">f224.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.665150" elapsed="0.000295"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:48.668831" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f224.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f224.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:48.668973" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:48.668701" elapsed="0.000300"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:48.669625" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35b9c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:48.669168" elapsed="0.000485"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.670102" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.669806" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.670547" level="INFO">${flow_id} = 347</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.670280" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.670987" level="INFO">${flow_priority} = 224</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.670720" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:48.671675" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:48.671177" elapsed="0.000528"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.672217" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.671877" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.672718" level="INFO">${flow_id} = 347</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.672413" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.673231" level="INFO">${flow_priority} = 224</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.672908" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.673718" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.673422" elapsed="0.000340"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.674234" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.673913" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.674734" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35b9c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.674429" elapsed="0.000346"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:48.668371" elapsed="0.006459"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.681962" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;
        &lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;
    &lt;/match&gt;
    &lt;id&gt;347&lt;/id&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                   &lt;order&gt;0&lt;/order&gt;
                   &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.681716" elapsed="0.000302"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:48.693738" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '913', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;
        &lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;
    &lt;/match&gt;
    &lt;id&gt;347&lt;/id&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                   &lt;order&gt;0&lt;/order&gt;
                   &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:48.693905" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=347', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:48.694115" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:48.682159" elapsed="0.012008"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.696609" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.694463" elapsed="0.002189"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:48.681319" elapsed="0.015389"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:48.674987" elapsed="0.021772"/>
</kw>
<var name="${flowfile}">f224.xml</var>
<status status="PASS" start="2026-05-25T01:52:48.665001" elapsed="0.031796"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.697288" level="INFO">f225.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.697021" elapsed="0.000311"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:48.700722" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f225.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f225.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:48.700850" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:48.700590" elapsed="0.000289"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:48.701416" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4da980&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:48.701028" elapsed="0.000416"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.701866" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.701594" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.702324" level="INFO">${flow_id} = 348</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.702041" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.702762" level="INFO">${flow_priority} = 225</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.702498" elapsed="0.000290"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:48.703449" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:48.702935" elapsed="0.000544"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.703977" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.703634" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.704496" level="INFO">${flow_id} = 348</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.704189" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.705005" level="INFO">${flow_priority} = 225</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.704688" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.705511" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.705212" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.706009" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.705705" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.706531" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4da980&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.706220" elapsed="0.000352"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:48.700256" elapsed="0.006370"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.713785" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;
        &lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;
    &lt;/match&gt;
    &lt;id&gt;348&lt;/id&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                   &lt;order&gt;0&lt;/order&gt;
                   &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.713537" elapsed="0.000338"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:48.722668" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '893', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;
        &lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;
    &lt;/match&gt;
    &lt;id&gt;348&lt;/id&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                   &lt;order&gt;0&lt;/order&gt;
                   &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:48.722729" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=348', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:48.722819" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:48.714005" elapsed="0.008839"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.725059" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.723002" elapsed="0.002114"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:48.713143" elapsed="0.012031"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:48.706774" elapsed="0.018452"/>
</kw>
<var name="${flowfile}">f225.xml</var>
<status status="PASS" start="2026-05-25T01:52:48.696892" elapsed="0.028371"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.725738" level="INFO">f550.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.725487" elapsed="0.000295"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:48.729176" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f550.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f550.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:48.729306" level="INFO">${data} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;
    &lt;match&gt;
   ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:48.729027" elapsed="0.000308"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:48.729877" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bf600&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:48.729485" elapsed="0.000420"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.730347" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.730055" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.730792" level="INFO">${flow_id} = 550</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.730525" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:48.731249" level="INFO">${flow_priority} = 550</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:48.730966" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:48.732013" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;f...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:48.731421" elapsed="0.000622"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.732533" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.732216" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.733040" level="INFO">${flow_id} = 550</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.732728" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.733563" level="INFO">${flow_priority} = 550</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.733250" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.734055" level="INFO">${data} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;
    &lt;match&gt;
   ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.733755" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.734639" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;f...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.734328" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.735162" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bf600&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:48.734836" elapsed="0.000368"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:48.728698" elapsed="0.006563"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.742468" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;
            &lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;
            &lt;extension&gt;
                &lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;
                    &lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;
                &lt;/nxm-nx-tun-ipv4-src&gt;
            &lt;/extension&gt;
        &lt;/extension-list&gt;
    &lt;/match&gt;
    &lt;id&gt;550&lt;/id&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;1&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.742205" elapsed="0.000325"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:48.752105" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1160', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;
            &lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;
            &lt;extension&gt;
                &lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;
                    &lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;
                &lt;/nxm-nx-tun-ipv4-src&gt;
            &lt;/extension&gt;
        &lt;/extension-list&gt;
    &lt;/match&gt;
    &lt;id&gt;550&lt;/id&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;1&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:52:48.752173" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=550', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:48.752270" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:48.742663" elapsed="0.009632"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.754602" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.752459" elapsed="0.002186"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:52:48.741783" elapsed="0.012922"/>
</kw>
<arg>Add Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:52:48.735411" elapsed="0.019346"/>
</kw>
<var name="${flowfile}">f550.xml</var>
<status status="PASS" start="2026-05-25T01:52:48.725360" elapsed="0.029435"/>
</iter>
<var>${flowfile}</var>
<value>@{flowlist0}</value>
<status status="PASS" start="2026-05-25T01:52:46.493962" elapsed="2.260868"/>
</for>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.755478" level="INFO">Length is 57.</msg>
<msg time="2026-05-25T01:52:48.755557" level="INFO">${flows} = 57</msg>
<var>${flows}</var>
<arg>${flowlist0}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:52:48.754993" elapsed="0.000589"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Flow Stats Are Available" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:48.775880" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:48.780035" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"flow-node-inventory:table":[{"id":2,"flow":[{"id":"332","table_id":2,"installHw":false,"priority":209,"cookie_mask":"255","flow-name":"set-field-tunnel-id","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"209","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tunnel":{"tunnel-id":"2591"}}}]}}]}},{"id":"134","table_id":2,"cookie":"11","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":399000000}},"priority":11,"cookie_mask":"255","flow-name":"FooXf11","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":1,"ip-ecn":3,"ip-dscp":27},"icmpv4-match":{"icmpv4-type":6,"icmpv4-code":3}},"flags":""},{"id":"133","table_id":2,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":435000000}},"priority":10,"cookie_mask":"255","flow-name":"FooXf10","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"flags":""},{"id":"132","table_id":2,"cookie":"9","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":481000000}},"priority":9,"cookie_mask":"255","flow-name":"FooXf9","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.1.0.0/16","ipv4-destination":"172.168.5.0/24","in-port":"openflow:1:0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"flags":""},{"id":"131","table_id":2,"cookie":"8","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":519000000}},"priority":8,"cookie_mask":"255","flow-name":"FooXf8","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:00","mask":"ff:ff:ff:ff:ff:00"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"flags":""},{"id":"130","table_id":2,"cookie":"7","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":569000000}},"priority":7,"cookie_mask":"255","flow-name":"FooXf7","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:aa"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":56,"ip-ecn":1,"ip-dscp":15}},"flags":""},{"id":"329","table_id":2,"priority":206,"cookie_mask":"255","flow-name":"sctp-destination-port","strict":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"barrier":false,"cookie":"206","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-destination-port":1111}}]}}]}},{"id":"328","table_id":2,"priority":205,"cookie_mask":"255","flow-name":"sctp-source-port-action","strict":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"barrier":false,"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]}},{"id":"327","table_id":2,"installHw":false,"priority":204,"cookie_mask":"255","flow-name":"set-field-udp-dst","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"204","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-destination-port":1234}}]}}]}},{"id":"129","table_id":2,"cookie":"6","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":613000000}},"priority":6,"cookie_mask":"255","flow-name":"FooXf5","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"40.4.0.0/16"},"flags":""},{"id":"326","table_id":2,"installHw":false,"priority":203,"cookie_mask":"255","flow-name":"set-field-udp-src","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"203","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-source-port":2059}}]}}]}},{"id":"128","table_id":2,"cookie":"5","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":658000000}},"priority":5,"cookie_mask":"255","flow-name":"FooXf5","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","in-port":"openflow:1:0"},"flags":""},{"id":"325","table_id":2,"installHw":false,"priority":202,"cookie_mask":"255","flow-name":"set-field-tcp-dst","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"202","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-destination-port":1234}}]}}]}},{"id":"127","installHw":false,"table_id":2,"cookie":"4","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":700000000}},"priority":4,"cookie_mask":"255","flow-name":"FooXf4","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":34887}}},"flags":""},{"id":"324","table_id":2,"installHw":false,"priority":201,"cookie_mask":"255","flow-name":"set-field-tcp-src","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"201","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-source-port":2059}}]}}]}},{"id":"126","installHw":false,"table_id":2,"cookie":"3","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"drop-action":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":748000000}},"priority":3... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:48.780289" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=2</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:48.759553" elapsed="0.020763"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.782860" level="INFO">{"flow-node-inventory:table":[{"id":2,"flow":[{"id":"332","table_id":2,"installHw":false,"priority":209,"cookie_mask":"255","flow-name":"set-field-tunnel-id","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"209","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tunnel":{"tunnel-id":"2591"}}}]}}]}},{"id":"134","table_id":2,"cookie":"11","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":399000000}},"priority":11,"cookie_mask":"255","flow-name":"FooXf11","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":1,"ip-ecn":3,"ip-dscp":27},"icmpv4-match":{"icmpv4-type":6,"icmpv4-code":3}},"flags":""},{"id":"133","table_id":2,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":435000000}},"priority":10,"cookie_mask":"255","flow-name":"FooXf10","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"flags":""},{"id":"132","table_id":2,"cookie":"9","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":481000000}},"priority":9,"cookie_mask":"255","flow-name":"FooXf9","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.1.0.0/16","ipv4-destination":"172.168.5.0/24","in-port":"openflow:1:0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"flags":""},{"id":"131","table_id":2,"cookie":"8","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":519000000}},"priority":8,"cookie_mask":"255","flow-name":"FooXf8","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:00","mask":"ff:ff:ff:ff:ff:00"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"flags":""},{"id":"130","table_id":2,"cookie":"7","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":569000000}},"priority":7,"cookie_mask":"255","flow-name":"FooXf7","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:aa"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":56,"ip-ecn":1,"ip-dscp":15}},"flags":""},{"id":"329","table_id":2,"priority":206,"cookie_mask":"255","flow-name":"sctp-destination-port","strict":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"barrier":false,"cookie":"206","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-destination-port":1111}}]}}]}},{"id":"328","table_id":2,"priority":205,"cookie_mask":"255","flow-name":"sctp-source-port-action","strict":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"barrier":false,"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]}},{"id":"327","table_id":2,"installHw":false,"priority":204,"cookie_mask":"255","flow-name":"set-field-udp-dst","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"204","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-destination-port":1234}}]}}]}},{"id":"129","table_id":2,"cookie":"6","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":613000000}},"priority":6,"cookie_mask":"255","flow-name":"FooXf5","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"40.4.0.0/16"},"flags":""},{"id":"326","table_id":2,"installHw":false,"priority":203,"cookie_mask":"255","flow-name":"set-field-udp-src","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"203","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-source-port":2059}}]}}]}},{"id":"128","table_id":2,"cookie":"5","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":658000000}},"priority":5,"cookie_mask":"255","flow-name":"FooXf5","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","in-port":"openflow:1:0"},"flags":""},{"id":"325","table_id":2,"installHw":false,"priority":202,"cookie_mask":"255","flow-name":"set-field-tcp-dst","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"202","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-destination-port":1234}}]}}]}},{"id":"127","installHw":false,"table_id":2,"cookie":"4","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":700000000}},"priority":4,"cookie_mask":"255","flow-name":"FooXf4","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":34887}}},"flags":""},{"id":"324","table_id":2,"installHw":false,"priority":201,"cookie_mask":"255","flow-name":"set-field-tcp-src","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"201","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-source-port":2059}}]}}]}},{"id":"126","installHw":false,"table_id":2,"cookie":"3","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"drop-action":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":748000000}},"priority":3,"cookie_mask":"255","flow-name":"FooXf3","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:00:01"}}},"flags":""},{"id":"125","installHw":false,"table_id":2,"cookie":"2","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"drop-action":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":791000000}},"priority":2,"cookie_mask":"255","flow-name":"FooXf2","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-source":"10.0.0.1/32"},"flags":""},{"id":"124","installHw":false,"table_id":2,"cookie":"1","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":842000000}},"priority":1,"cookie_mask":"255","flow-name":"FooXf1","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.1.0/24"},"flags":""},{"id":"168","installHw":false,"table_id":2,"out_port":"4294967295","cookie":"45","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"drop-action":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":708000000}},"priority":45,"cookie_mask":"255","flow-name":"FooXf45","strict":false,"idle-timeout":0,"barrier":false,"match":{"metadata":{"metadata-mask":"4293984255","metadata":"1180719718"}},"out_group":4294967295,"flags":""},{"id":"343","table_id":2,"installHw":false,"out_port":"4294967295","cookie":"220","instructions":{"instruction":[{"order":0,"write-metadata":{"metadata-mask":"12","metadata":"10"}}]},"priority":220,"cookie_mask":"255","flow-name":"flow-instruction-write-metadata","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"barrier":false,"out_group":4294967295},{"id":"145","installHw":false,"table_id":2,"cookie":"22","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":28000000}},"priority":22,"cookie_mask":"255","flow-name":"FooXf22","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"flags":""},{"id":"342","table_id":2,"installHw":false,"out_port":"4294967295","cookie":"219","instructions":{"instruction":[{"order":0,"clear-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"INPORT"}}]}}]},"priority":219,"cookie_mask":"255","flow-name":"flow-instruction-clear-actions","strict":false,"match":{"vlan-match":{"vlan-id":{"vlan-id":10,"vlan-id-present":true},"vlan-pcp":3}},"barrier":false,"out_group":4294967295},{"id":"144","installHw":false,"table_id":2,"cookie":"21","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":70000000}},"priority":21,"cookie_mask":"255","flow-name":"FooXf21","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":25364,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80::2acf:e9ff:fe21:6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"flags":""},{"id":"341","table_id":2,"installHw":false,"out_port":"4294967295","cookie":"218","instructions":{"instruction":[{"order":0,"go-to-table":{"table_id":3}}]},"priority":218,"cookie_mask":"255","flow-name":"flow-instruction-go-to-table","strict":false,"match":{"tunnel":{"tunnel-mask":"65520","tunnel-id":"10656"}},"barrier":false,"out_group":4294967295},{"id":"143","installHw":false,"table_id":2,"cookie":"20","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":114000000}},"priority":20,"cookie_mask":"255","flow-name":"FooXf20","strict":false,"idle-timeout":0,"match":{"metadata":{"metadata-mask":"61695","metadata":"12345"}},"flags":""},{"id":"142","installHw":false,"table_id":2,"cookie":"19","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":142000000}},"priority":19,"cookie_mask":"255","flow-name":"FooXf19","strict":false,"idle-timeout":0,"match":{"metadata":{"metadata":"12345"}},"flags":""},{"id":"141","installHw":false,"table_id":2,"cookie":"18","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":153000000}},"priority":18,"cookie_mask":"255","flow-name":"FooXf18","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-source":"fe80::2acf:e9ff:fe21:6431/128","ipv6-destination":"aabb:1234:2acf:e9ff::/64"},"flags":""},{"id":"140","table_id":2,"cookie":"17","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":228000000}},"priority":17,"cookie_mask":"255","flow-name":"FooXf17","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":34887}},"protocol-match-fields":{"mpls-tc":3,"mpls-bos":1,"mpls-label":567}},"flags":""},{"id":"337","table_id":2,"installHw":false,"priority":214,"cookie_mask":"255","flow-name":"set-field-ip-ecn","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","ip-match":{"ip-protocol":56,"ip-ecn":1,"ip-dscp":60}},"cookie":"214","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"ip-match":{"ip-ecn":2}}}]}}]}},{"id":"139","table_id":2,"cookie":"16","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":276000000}},"priority":16,"cookie_mask":"255","flow-name":"FooXf16","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true},"vlan-pcp":3}},"flags":""},{"id":"138","table_id":2,"cookie":"15","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":312000000}},"priority":15,"cookie_mask":"255","flow-name":"FooXf15","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":34887}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true}}},"flags":""},{"id":"137","table_id":2,"cookie":"14","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":345000000}},"priority":14,"cookie_mask":"255","flow-name":"FooXf14","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:FC:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:FF:ff"},"ethernet-type":{"type":2054}},"arp-target-hardware-address":{"address":"FE:DC:BA:98:76:54"},"arp-source-transport-address":"192.168.4.1/32","arp-op":1,"arp-target-transport-address":"10.21.22.23/32","arp-source-hardware-address":{"address":"12:34:56:78:98:AB"}},"flags":""},{"id":"233","table_id":2,"installHw":false,"priority":110,"cookie_mask":"255","flow-name":"push-vlan-action","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"110","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-vlan-action":{"vlan-id":1234,"ethernet-type":33024}}]}}]}},{"id":"232","installHw":false,"table_id":2,"cookie":"109","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"NORMAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":347000000}},"priority":109,"cookie_mask":"255","flow-name":"FooXf109","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"openflow:1:0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"flags":""},{"id":"550","table_id":2,"priority":550,"flow-name":"flow-tunnel","idle-timeout":0,"match":{"openflowplugin-extension-general:extension-list":[{"extension-key":"openflowplugin-extension-nicira-match:nxm-nx-tun-ipv4-src-key","extension":{"openflowplugin-extension-nicira-match:nxm-nx-tun-ipv4-src":{"ipv4-address":"192.168.0.10"}}}]},"instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"output-node-connector":"1"}}]}}]},"hard-timeout":0},{"id":"154","installHw":false,"table_id":2,"out_port":"4294967295","cookie":"31","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"drop-action":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":866000000}},"priority":31,"cookie_mask":"255","flow-name":"FooXf31","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"out_group":4294967295,"flags":""},{"id":"231","installHw":false,"table_id":2,"cookie":"108","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":385000000}},"priority":108,"cookie_mask":"255","flow-name":"FooXf108","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"openflow:1:0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"flags":""},{"id":"230","installHw":false,"table_id":2,"cookie":"107","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"ALL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":424000000}},"priority":107,"cookie_mask":"255","flow-name":"FooXf107","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"openflow:1:0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"flags":""},{"id":"229","installHw":false,"table_id":2,"cookie":"106","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"FLOOD"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":465000000}},"priority":106,"cookie_mask":"255","flow-name":"FooXf106","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":80,"tcp-source-port":20345,"ipv6-source":"1234:5678:9ABC:DEF0:FDCD:A987:6000::/100","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":45}},"flags":""},{"id":"228","installHw":false,"table_id":2,"cookie":"105","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"NORMAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":504000000}},"priority":105,"cookie_mask":"255","flow-name":"FooXf105","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":80,"tcp-source-port":20345,"ipv6-source":"1234:5678:9ABC:DEF0:FDCD:A000::/84","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":45}},"flags":""},{"id":"348","flow-name":"Foo225","match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-source-address-no-mask":"2001:2001:2001:2001:0000:2001:4000:0000","ipv6-source-arbitrary-bitmask":"FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000"},"table_id":2,"priority":225,"instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]}},{"id":"227","installHw":false,"table_id":2,"cookie":"104","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":544000000}},"priority":104,"cookie_mask":"255","flow-name":"FooXf104","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"flags":""},{"id":"347","flow-name":"Foo224","match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-destination-address-no-mask":"2001:2001:2001:2001:2001:2001:4000:7000","ipv6-destination-arbitrary-bitmask":"FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000"},"table_id":2,"priority":224,"instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]}},{"id":"226","installHw":false,"table_id":2,"cookie":"103","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":586000000}},"priority":103,"cookie_mask":"255","flow-name":"FooXf103","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"flags":""},{"id":"346","flow-name":"Foo223","match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination-address-no-mask":"7.0.17.0","ipv4-destination-arbitrary-bitmask":"255.0.241.0"},"table_id":2,"priority":223,"instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]}},{"id":"148","installHw":false,"table_id":2,"cookie":"25","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":907000000}},"priority":25,"cookie_mask":"255","flow-name":"FooXf25","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-label":{"ipv6-flabel":33},"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":58,"ip-ecn":3,"ip-dscp":60},"icmpv6-match":{"icmpv6-code":3,"icmpv6-type":6}},"flags":""},{"id":"225","installHw":false,"table_id":2,"cookie":"102","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":632000000}},"priority":102,"cookie_mask":"255","flow-name":"FooXf102","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"flags":""},{"id":"345","flow-name":"Foo222","match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"2.2.0.0/16"},"table_id":2,"priority":222,"instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]}},{"id":"147","installHw":false,"table_id":2,"cookie":"24","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"TABLE"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":949000000}},"priority":24,"cookie_mask":"255","flow-name":"FooXf24","strict":false,"idle-timeout":0,"match":{"tunnel":{"tunnel-id":"2591"}},"flags":""},{"id":"224","installHw":false,"table_id":2,"cookie":"101","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"TABLE"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":671000000}},"priority":101,"cookie_mask":"255","flow-name":"FooXf101","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"flags":""},{"id":"344","table_id":2,"installHw":false,"out_port":"4294967295","cookie":"221","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"priority":221,"cookie_mask":"255","flow-name":"flow-instruction-write-actions","strict":false,"match":{"vlan-match":{"vlan-id":{"vlan-id":10,"vlan-id-present":true},"vlan-pcp":3}},"barrier":false,"out_group":4294967295},{"id":"146","installHw":false,"table_id":2,"cookie":"23","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":989000000}},"priority":23,"cookie_mask":"255","flow-name":"FooXf23","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-label":{"ipv6-flabel":33},"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"flags":""},{"id":"166","installHw":false,"table_id":2,"out_port":"4294967295","cookie":"43","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":750000000}},"priority":43,"cookie_mask":"255","flow-name":"FooXf43","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"icmpv6-match":{"icmpv6-code":1,"icmpv6-type":135},"ip-match":{"ip-protocol":58}},"out_group":4294967295,"flags":""},{"id":"161","installHw":false,"table_id":2,"out_port":"4294967295","cookie":"38","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-queue-action":{"queue-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":779000000}},"priority":38,"cookie_mask":"255","flow-name":"FooXf38","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"out_group":4294967295,"flags":""},{"id":"#UF$TABLE*2-16","table_id":2,"priority":156,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true},"vlan-pcp":3}},"cookie":"156","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":233000000}},"flags":""},{"id":"236","table_id":2,"installHw":false,"priority":113,"cookie_mask":"255","flow-name":"push-mpls-action","strict":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"openflow:1:0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"113","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-mpls-action":{"ethernet-type":34888}}]}}]}},{"id":"#UF$TABLE*2-15","table_id":2,"priority":204,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"204","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"159","installHw":false,"table_id":2,"cookie":"36","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"ip-match":{"ip-dscp":1}}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":811000000}},"priority":36,"cookie_mask":"255","flow-name":"FooXf36","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"flags":""},{"id":"279","table_id":2,"priority":156,"cookie_mask":"255","flow-name":"FooXf156","strict":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true},"vlan-pcp":3}},"barrier":false,"cookie":"156","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]}},{"id":"#UF$TABLE*2-18","table_id":2,"priority":110,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"110","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-vlan-action":{"ethernet-type":33024}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":300000000}},"flags":""},{"id":"#UF$TABLE*2-17","table_id":2,"priority":113,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"113","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-mpls-action":{"ethernet-type":34888}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":266000000}},"flags":""},{"id":"#UF$TABLE*2-12","table_id":2,"priority":201,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"201","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":194000000}},"flags":""},{"id":"#UF$TABLE*2-11","table_id":2,"priority":206,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"206","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-destination-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":9000000}},"flags":""},{"id":"#UF$TABLE*2-14","table_id":2,"priority":203,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"203","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":115000000}},"flags":""},{"id":"#UF$TABLE*2-13","table_id":2,"priority":202,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"202","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":154000000}},"flags":""},{"id":"#UF$TABLE*2-10","table_id":2,"priority":205,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":47,"packets-matched":"0"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:48.780475" elapsed="0.002786"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-05-25T01:52:48.785911" level="INFO">Item found from container 66 times.</msg>
<msg time="2026-05-25T01:52:48.786291" level="FAIL">'{"flow-node-inventory:table":[{"id":2,"flow":[{"id":"332","table_id":2,"installHw":false,"priority":209,"cookie_mask":"255","flow-name":"set-field-tunnel-id","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"209","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tunnel":{"tunnel-id":"2591"}}}]}}]}},{"id":"134","table_id":2,"cookie":"11","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":399000000}},"priority":11,"cookie_mask":"255","flow-name":"FooXf11","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":1,"ip-ecn":3,"ip-dscp":27},"icmpv4-match":{"icmpv4-type":6,"icmpv4-code":3}},"flags":""},{"id":"133","table_id":2,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":435000000}},"priority":10,"cookie_mask":"255","flow-name":"FooXf10","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"flags":""},{"id":"132","table_id":2,"cookie":"9","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":481000000}},"priority":9,"cookie_mask":"255","flow-name":"FooXf9","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.1.0.0/16","ipv4-destination":"172.168.5.0/24","in-port":"openflow:1:0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"flags":""},{"id":"131","table_id":2,"cookie":"8","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":519000000}},"priority":8,"cookie_mask":"255","flow-name":"FooXf8","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:00","mask":"ff:ff:ff:ff:ff:00"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"flags":""},{"id":"130","table_id":2,"cookie":"7","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":569000000}},"priority":7,"cookie_mask":"255","flow-name":"FooXf7","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:aa"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":56,"ip-ecn":1,"ip-dscp":15}},"flags":""},{"id":"329","table_id":2,"priority":206,"cookie_mask":"255","flow-name":"sctp-destination-port","strict":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"barrier":false,"cookie":"206","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-destination-port":1111}}]}}]}},{"id":"328","table_id":2,"priority":205,"cookie_mask":"255","flow-name":"sctp-source-port-action","strict":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"barrier":false,"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]}},{"id":"327","table_id":2,"installHw":false,"priority":204,"cookie_mask":"255","flow-name":"set-field-udp-dst","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"204","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-destination-port":1234}}]}}]}},{"id":"129","table_id":2,"cookie":"6","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":613000000}},"priority":6,"cookie_mask":"255","flow-name":"FooXf5","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"40.4.0.0/16"},"flags":""},{"id":"326","table_id":2,"installHw":false,"priority":203,"cookie_mask":"255","flow-name":"set-field-udp-src","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"203","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-source-port":2059}}]}}]}},{"id":"128","table_id":2,"cookie":"5","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":658000000}},"priority":5,"cookie_mask":"255","flow-name":"FooXf5","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","in-port":"openflow:1:0"},"flags":""},{"id":"325","table_id":2,"installHw":false,"priority":202,"cookie_mask":"255","flow-name":"set-field-tcp-dst","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"202","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-destination-port":1234}}]}}]}},{"id":"127","installHw":false,"table_id":2,"cookie":"4","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":700000000}},"priority":4,"cookie_mask":"255","flow-name":"FooXf4","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":34887}}},"flags":""},{"id":"324","table_id":2,"installHw":false,"priority":201,"cookie_mask":"255","flow-name":"set-field-tcp-src","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"201","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-source-port":2059}}]}}]}},{"id":"126","installHw":false,"table_id":2,"cookie":"3","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"drop-action":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":748000000}},"priority":3,"cookie_mask":"255","flow-name":"FooXf3","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:00:01"}}},"flags":""},{"id":"125","installHw":false,"table_id":2,"cookie":"2","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"drop-action":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":791000000}},"priority":2,"cookie_mask":"255","flow-name":"FooXf2","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-source":"10.0.0.1/32"},"flags":""},{"id":"124","installHw":false,"table_id":2,"cookie":"1","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":842000000}},"priority":1,"cookie_mask":"255","flow-name":"FooXf1","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.1.0/24"},"flags":""},{"id":"168","installHw":false,"table_id":2,"out_port":"4294967295","cookie":"45","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"drop-action":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":708000000}},"priority":45,"cookie_mask":"255","flow-name":"FooXf45","strict":false,"idle-timeout":0,"barrier":false,"match":{"metadata":{"metadata-mask":"4293984255","metadata":"1180719718"}},"out_group":4294967295,"flags":""},{"id":"343","table_id":2,"installHw":false,"out_port":"4294967295","cookie":"220","instructions":{"instruction":[{"order":0,"write-metadata":{"metadata-mask":"12","metadata":"10"}}]},"priority":220,"cookie_mask":"255","flow-name":"flow-instruction-write-metadata","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"barrier":false,"out_group":4294967295},{"id":"145","installHw":false,"table_id":2,"cookie":"22","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":28000000}},"priority":22,"cookie_mask":"255","flow-name":"FooXf22","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"flags":""},{"id":"342","table_id":2,"installHw":false,"out_port":"4294967295","cookie":"219","instructions":{"instruction":[{"order":0,"clear-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"INPORT"}}]}}]},"priority":219,"cookie_mask":"255","flow-name":"flow-instruction-clear-actions","strict":false,"match":{"vlan-match":{"vlan-id":{"vlan-id":10,"vlan-id-present":true},"vlan-pcp":3}},"barrier":false,"out_group":4294967295},{"id":"144","installHw":false,"table_id":2,"cookie":"21","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":70000000}},"priority":21,"cookie_mask":"255","flow-name":"FooXf21","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":25364,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80::2acf:e9ff:fe21:6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"flags":""},{"id":"341","table_id":2,"installHw":false,"out_port":"4294967295","cookie":"218","instructions":{"instruction":[{"order":0,"go-to-table":{"table_id":3}}]},"priority":218,"cookie_mask":"255","flow-name":"flow-instruction-go-to-table","strict":false,"match":{"tunnel":{"tunnel-mask":"65520","tunnel-id":"10656"}},"barrier":false,"out_group":4294967295},{"id":"143","installHw":false,"table_id":2,"cookie":"20","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":114000000}},"priority":20,"cookie_mask":"255","flow-name":"FooXf20","strict":false,"idle-timeout":0,"match":{"metadata":{"metadata-mask":"61695","metadata":"12345"}},"flags":""},{"id":"142","installHw":false,"table_id":2,"cookie":"19","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":142000000}},"priority":19,"cookie_mask":"255","flow-name":"FooXf19","strict":false,"idle-timeout":0,"match":{"metadata":{"metadata":"12345"}},"flags":""},{"id":"141","installHw":false,"table_id":2,"cookie":"18","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":153000000}},"priority":18,"cookie_mask":"255","flow-name":"FooXf18","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-source":"fe80::2acf:e9ff:fe21:6431/128","ipv6-destination":"aabb:1234:2acf:e9ff::/64"},"flags":""},{"id":"140","table_id":2,"cookie":"17","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":228000000}},"priority":17,"cookie_mask":"255","flow-name":"FooXf17","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":34887}},"protocol-match-fields":{"mpls-tc":3,"mpls-bos":1,"mpls-label":567}},"flags":""},{"id":"337","table_id":2,"installHw":false,"priority":214,"cookie_mask":"255","flow-name":"set-field-ip-ecn","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","ip-match":{"ip-protocol":56,"ip-ecn":1,"ip-dscp":60}},"cookie":"214","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"ip-match":{"ip-ecn":2}}}]}}]}},{"id":"139","table_id":2,"cookie":"16","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":276000000}},"priority":16,"cookie_mask":"255","flow-name":"FooXf16","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true},"vlan-pcp":3}},"flags":""},{"id":"138","table_id":2,"cookie":"15","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":312000000}},"priority":15,"cookie_mask":"255","flow-name":"FooXf15","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":34887}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true}}},"flags":""},{"id":"137","table_id":2,"cookie":"14","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":345000000}},"priority":14,"cookie_mask":"255","flow-name":"FooXf14","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:FC:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:FF:ff"},"ethernet-type":{"type":2054}},"arp-target-hardware-address":{"address":"FE:DC:BA:98:76:54"},"arp-source-transport-address":"192.168.4.1/32","arp-op":1,"arp-target-transport-address":"10.21.22.23/32","arp-source-hardware-address":{"address":"12:34:56:78:98:AB"}},"flags":""},{"id":"233","table_id":2,"installHw":false,"priority":110,"cookie_mask":"255","flow-name":"push-vlan-action","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"110","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-vlan-action":{"vlan-id":1234,"ethernet-type":33024}}]}}]}},{"id":"232","installHw":false,"table_id":2,"cookie":"109","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"NORMAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":347000000}},"priority":109,"cookie_mask":"255","flow-name":"FooXf109","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"openflow:1:0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"flags":""},{"id":"550","table_id":2,"priority":550,"flow-name":"flow-tunnel","idle-timeout":0,"match":{"openflowplugin-extension-general:extension-list":[{"extension-key":"openflowplugin-extension-nicira-match:nxm-nx-tun-ipv4-src-key","extension":{"openflowplugin-extension-nicira-match:nxm-nx-tun-ipv4-src":{"ipv4-address":"192.168.0.10"}}}]},"instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"output-node-connector":"1"}}]}}]},"hard-timeout":0},{"id":"154","installHw":false,"table_id":2,"out_port":"4294967295","cookie":"31","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"drop-action":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":866000000}},"priority":31,"cookie_mask":"255","flow-name":"FooXf31","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"out_group":4294967295,"flags":""},{"id":"231","installHw":false,"table_id":2,"cookie":"108","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":385000000}},"priority":108,"cookie_mask":"255","flow-name":"FooXf108","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"openflow:1:0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"flags":""},{"id":"230","installHw":false,"table_id":2,"cookie":"107","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"ALL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":424000000}},"priority":107,"cookie_mask":"255","flow-name":"FooXf107","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"openflow:1:0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"flags":""},{"id":"229","installHw":false,"table_id":2,"cookie":"106","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"FLOOD"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":465000000}},"priority":106,"cookie_mask":"255","flow-name":"FooXf106","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":80,"tcp-source-port":20345,"ipv6-source":"1234:5678:9ABC:DEF0:FDCD:A987:6000::/100","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":45}},"flags":""},{"id":"228","installHw":false,"table_id":2,"cookie":"105","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"NORMAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":504000000}},"priority":105,"cookie_mask":"255","flow-name":"FooXf105","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":80,"tcp-source-port":20345,"ipv6-source":"1234:5678:9ABC:DEF0:FDCD:A000::/84","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":45}},"flags":""},{"id":"348","flow-name":"Foo225","match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-source-address-no-mask":"2001:2001:2001:2001:0000:2001:4000:0000","ipv6-source-arbitrary-bitmask":"FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000"},"table_id":2,"priority":225,"instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]}},{"id":"227","installHw":false,"table_id":2,"cookie":"104","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":544000000}},"priority":104,"cookie_mask":"255","flow-name":"FooXf104","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"flags":""},{"id":"347","flow-name":"Foo224","match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-destination-address-no-mask":"2001:2001:2001:2001:2001:2001:4000:7000","ipv6-destination-arbitrary-bitmask":"FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000"},"table_id":2,"priority":224,"instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]}},{"id":"226","installHw":false,"table_id":2,"cookie":"103","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":586000000}},"priority":103,"cookie_mask":"255","flow-name":"FooXf103","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"flags":""},{"id":"346","flow-name":"Foo223","match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination-address-no-mask":"7.0.17.0","ipv4-destination-arbitrary-bitmask":"255.0.241.0"},"table_id":2,"priority":223,"instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]}},{"id":"148","installHw":false,"table_id":2,"cookie":"25","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":907000000}},"priority":25,"cookie_mask":"255","flow-name":"FooXf25","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-label":{"ipv6-flabel":33},"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":58,"ip-ecn":3,"ip-dscp":60},"icmpv6-match":{"icmpv6-code":3,"icmpv6-type":6}},"flags":""},{"id":"225","installHw":false,"table_id":2,"cookie":"102","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":632000000}},"priority":102,"cookie_mask":"255","flow-name":"FooXf102","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"flags":""},{"id":"345","flow-name":"Foo222","match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"2.2.0.0/16"},"table_id":2,"priority":222,"instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]}},{"id":"147","installHw":false,"table_id":2,"cookie":"24","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"TABLE"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":949000000}},"priority":24,"cookie_mask":"255","flow-name":"FooXf24","strict":false,"idle-timeout":0,"match":{"tunnel":{"tunnel-id":"2591"}},"flags":""},{"id":"224","installHw":false,"table_id":2,"cookie":"101","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"TABLE"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":671000000}},"priority":101,"cookie_mask":"255","flow-name":"FooXf101","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"flags":""},{"id":"344","table_id":2,"installHw":false,"out_port":"4294967295","cookie":"221","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"priority":221,"cookie_mask":"255","flow-name":"flow-instruction-write-actions","strict":false,"match":{"vlan-match":{"vlan-id":{"vlan-id":10,"vlan-id-present":true},"vlan-pcp":3}},"barrier":false,"out_group":4294967295},{"id":"146","installHw":false,"table_id":2,"cookie":"23","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":989000000}},"priority":23,"cookie_mask":"255","flow-name":"FooXf23","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-label":{"ipv6-flabel":33},"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"flags":""},{"id":"166","installHw":false,"table_id":2,"out_port":"4294967295","cookie":"43","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":750000000}},"priority":43,"cookie_mask":"255","flow-name":"FooXf43","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"icmpv6-match":{"icmpv6-code":1,"icmpv6-type":135},"ip-match":{"ip-protocol":58}},"out_group":4294967295,"flags":""},{"id":"161","installHw":false,"table_id":2,"out_port":"4294967295","cookie":"38","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-queue-action":{"queue-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":779000000}},"priority":38,"cookie_mask":"255","flow-name":"FooXf38","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"out_group":4294967295,"flags":""},{"id":"#UF$TABLE*2-16","table_id":2,"priority":156,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true},"vlan-pcp":3}},"cookie":"156","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":233000000}},"flags":""},{"id":"236","table_id":2,"installHw":false,"priority":113,"cookie_mask":"255","flow-name":"push-mpls-action","strict":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"openflow:1:0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"113","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-mpls-action":{"ethernet-type":34888}}]}}]}},{"id":"#UF$TABLE*2-15","table_id":2,"priority":204,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"204","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"159","installHw":false,"table_id":2,"cookie":"36","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"ip-match":{"ip-dscp":1}}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":811000000}},"priority":36,"cookie_mask":"255","flow-name":"FooXf36","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"flags":""},{"id":"279","table_id":2,"priority":156,"cookie_mask":"255","flow-name":"FooXf156","strict":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true},"vlan-pcp":3}},"barrier":false,"cookie":"156","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]}},{"id":"#UF$TABLE*2-18","table_id":2,"priority":110,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"110","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-vlan-action":{"ethernet-type":33024}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":300000000}},"flags":""},{"id":"#UF$TABLE*2-17","table_id":2,"priority":113,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"113","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-mpls-action":{"ethernet-type":34888}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":266000000}},"flags":""},{"id":"#UF$TABLE*2-12","table_id":2,"priority":201,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"201","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":194000000}},"flags":""},{"id":"#UF$TABLE*2-11","table_id":2,"priority":206,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"206","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-destination-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":9000000}},"flags":""},{"id":"#UF$TABLE*2-14","table_id":2,"priority":203,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"203","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":115000000}},"flags":""},{"id":"#UF$TABLE*2-13","table_id":2,"priority":202,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"202","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":154000000}},"flags":""},{"id":"#UF$TABLE*2-10","table_id":2,"priority":205,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":47,"packets-matched":"0"}}]}' contains 'priority' 66 times, not 57 times.</msg>
<arg>${resp.text}</arg>
<arg>priority</arg>
<arg>${flows}</arg>
<doc>Fails if ``container`` does not contain ``item`` ``count`` times.</doc>
<status status="FAIL" start="2026-05-25T01:52:48.783416" elapsed="0.003343">'{"flow-node-inventory:table":[{"id":2,"flow":[{"id":"332","table_id":2,"installHw":false,"priority":209,"cookie_mask":"255","flow-name":"set-field-tunnel-id","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"209","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tunnel":{"tunnel-id":"2591"}}}]}}]}},{"id":"134","table_id":2,"cookie":"11","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":399000000}},"priority":11,"cookie_mask":"255","flow-name":"FooXf11","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":1,"ip-ecn":3,"ip-dscp":27},"icmpv4-match":{"icmpv4-type":6,"icmpv4-code":3}},"flags":""},{"id":"133","table_id":2,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statisti...
    [ Message content over the limit has been removed. ]
...*2-13","table_id":2,"priority":202,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"202","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":154000000}},"flags":""},{"id":"#UF$TABLE*2-10","table_id":2,"priority":205,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":47,"packets-matched":"0"}}]}' contains 'priority' 66 times, not 57 times.</status>
</kw>
<arg>openflow%3A1</arg>
<arg>${flows}</arg>
<doc>A GET on the /node=${node_id} inventory API is made and flow stats string is checked for existence.</doc>
<status status="FAIL" start="2026-05-25T01:52:48.759231" elapsed="0.027691">'{"flow-node-inventory:table":[{"id":2,"flow":[{"id":"332","table_id":2,"installHw":false,"priority":209,"cookie_mask":"255","flow-name":"set-field-tunnel-id","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"209","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tunnel":{"tunnel-id":"2591"}}}]}}]}},{"id":"134","table_id":2,"cookie":"11","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":399000000}},"priority":11,"cookie_mask":"255","flow-name":"FooXf11","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":1,"ip-ecn":3,"ip-dscp":27},"icmpv4-match":{"icmpv4-type":6,"icmpv4-code":3}},"flags":""},{"id":"133","table_id":2,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statisti...
    [ Message content over the limit has been removed. ]
...*2-13","table_id":2,"priority":202,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"202","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":154000000}},"flags":""},{"id":"#UF$TABLE*2-10","table_id":2,"priority":205,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":47,"packets-matched":"0"}}]}' contains 'priority' 66 times, not 57 times.</status>
</kw>
<kw name="Check Flow Stats Are Available" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:50.811451" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:50.812932" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"flow-node-inventory:table":[{"id":2,"flow":[{"id":"332","table_id":2,"installHw":false,"priority":209,"cookie_mask":"255","flow-name":"set-field-tunnel-id","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"209","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tunnel":{"tunnel-id":"2591"}}}]}}]}},{"id":"134","table_id":2,"cookie":"11","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":399000000}},"priority":11,"cookie_mask":"255","flow-name":"FooXf11","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":1,"ip-ecn":3,"ip-dscp":27},"icmpv4-match":{"icmpv4-type":6,"icmpv4-code":3}},"flags":""},{"id":"133","table_id":2,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":435000000}},"priority":10,"cookie_mask":"255","flow-name":"FooXf10","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"flags":""},{"id":"132","table_id":2,"cookie":"9","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":481000000}},"priority":9,"cookie_mask":"255","flow-name":"FooXf9","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.1.0.0/16","ipv4-destination":"172.168.5.0/24","in-port":"openflow:1:0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"flags":""},{"id":"131","table_id":2,"cookie":"8","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":519000000}},"priority":8,"cookie_mask":"255","flow-name":"FooXf8","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:00","mask":"ff:ff:ff:ff:ff:00"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"flags":""},{"id":"130","table_id":2,"cookie":"7","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":569000000}},"priority":7,"cookie_mask":"255","flow-name":"FooXf7","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:aa"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":56,"ip-ecn":1,"ip-dscp":15}},"flags":""},{"id":"329","table_id":2,"priority":206,"cookie_mask":"255","flow-name":"sctp-destination-port","strict":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"barrier":false,"cookie":"206","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-destination-port":1111}}]}}]}},{"id":"328","table_id":2,"priority":205,"cookie_mask":"255","flow-name":"sctp-source-port-action","strict":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"barrier":false,"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]}},{"id":"327","table_id":2,"installHw":false,"priority":204,"cookie_mask":"255","flow-name":"set-field-udp-dst","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"204","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-destination-port":1234}}]}}]}},{"id":"129","table_id":2,"cookie":"6","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":613000000}},"priority":6,"cookie_mask":"255","flow-name":"FooXf5","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"40.4.0.0/16"},"flags":""},{"id":"326","table_id":2,"installHw":false,"priority":203,"cookie_mask":"255","flow-name":"set-field-udp-src","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"203","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-source-port":2059}}]}}]}},{"id":"128","table_id":2,"cookie":"5","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":658000000}},"priority":5,"cookie_mask":"255","flow-name":"FooXf5","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","in-port":"openflow:1:0"},"flags":""},{"id":"325","table_id":2,"installHw":false,"priority":202,"cookie_mask":"255","flow-name":"set-field-tcp-dst","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"202","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-destination-port":1234}}]}}]}},{"id":"127","installHw":false,"table_id":2,"cookie":"4","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":700000000}},"priority":4,"cookie_mask":"255","flow-name":"FooXf4","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":34887}}},"flags":""},{"id":"324","table_id":2,"installHw":false,"priority":201,"cookie_mask":"255","flow-name":"set-field-tcp-src","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"201","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-source-port":2059}}]}}]}},{"id":"126","installHw":false,"table_id":2,"cookie":"3","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"drop-action":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":748000000}},"priority":3... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:50.813705" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=2</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:50.794313" elapsed="0.019485"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:50.821285" level="INFO">{"flow-node-inventory:table":[{"id":2,"flow":[{"id":"332","table_id":2,"installHw":false,"priority":209,"cookie_mask":"255","flow-name":"set-field-tunnel-id","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"209","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tunnel":{"tunnel-id":"2591"}}}]}}]}},{"id":"134","table_id":2,"cookie":"11","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":399000000}},"priority":11,"cookie_mask":"255","flow-name":"FooXf11","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":1,"ip-ecn":3,"ip-dscp":27},"icmpv4-match":{"icmpv4-type":6,"icmpv4-code":3}},"flags":""},{"id":"133","table_id":2,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":435000000}},"priority":10,"cookie_mask":"255","flow-name":"FooXf10","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"flags":""},{"id":"132","table_id":2,"cookie":"9","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":481000000}},"priority":9,"cookie_mask":"255","flow-name":"FooXf9","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.1.0.0/16","ipv4-destination":"172.168.5.0/24","in-port":"openflow:1:0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"flags":""},{"id":"131","table_id":2,"cookie":"8","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":519000000}},"priority":8,"cookie_mask":"255","flow-name":"FooXf8","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:00","mask":"ff:ff:ff:ff:ff:00"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"flags":""},{"id":"130","table_id":2,"cookie":"7","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":569000000}},"priority":7,"cookie_mask":"255","flow-name":"FooXf7","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:aa"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":56,"ip-ecn":1,"ip-dscp":15}},"flags":""},{"id":"329","table_id":2,"priority":206,"cookie_mask":"255","flow-name":"sctp-destination-port","strict":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"barrier":false,"cookie":"206","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-destination-port":1111}}]}}]}},{"id":"328","table_id":2,"priority":205,"cookie_mask":"255","flow-name":"sctp-source-port-action","strict":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"barrier":false,"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]}},{"id":"327","table_id":2,"installHw":false,"priority":204,"cookie_mask":"255","flow-name":"set-field-udp-dst","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"204","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-destination-port":1234}}]}}]}},{"id":"129","table_id":2,"cookie":"6","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":613000000}},"priority":6,"cookie_mask":"255","flow-name":"FooXf5","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"40.4.0.0/16"},"flags":""},{"id":"326","table_id":2,"installHw":false,"priority":203,"cookie_mask":"255","flow-name":"set-field-udp-src","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"203","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-source-port":2059}}]}}]}},{"id":"128","table_id":2,"cookie":"5","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":658000000}},"priority":5,"cookie_mask":"255","flow-name":"FooXf5","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","in-port":"openflow:1:0"},"flags":""},{"id":"325","table_id":2,"installHw":false,"priority":202,"cookie_mask":"255","flow-name":"set-field-tcp-dst","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"202","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-destination-port":1234}}]}}]}},{"id":"127","installHw":false,"table_id":2,"cookie":"4","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":700000000}},"priority":4,"cookie_mask":"255","flow-name":"FooXf4","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":34887}}},"flags":""},{"id":"324","table_id":2,"installHw":false,"priority":201,"cookie_mask":"255","flow-name":"set-field-tcp-src","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"201","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-source-port":2059}}]}}]}},{"id":"126","installHw":false,"table_id":2,"cookie":"3","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"drop-action":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":748000000}},"priority":3,"cookie_mask":"255","flow-name":"FooXf3","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:00:01"}}},"flags":""},{"id":"125","installHw":false,"table_id":2,"cookie":"2","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"drop-action":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":791000000}},"priority":2,"cookie_mask":"255","flow-name":"FooXf2","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-source":"10.0.0.1/32"},"flags":""},{"id":"124","installHw":false,"table_id":2,"cookie":"1","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":842000000}},"priority":1,"cookie_mask":"255","flow-name":"FooXf1","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.1.0/24"},"flags":""},{"id":"168","installHw":false,"table_id":2,"out_port":"4294967295","cookie":"45","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"drop-action":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":708000000}},"priority":45,"cookie_mask":"255","flow-name":"FooXf45","strict":false,"idle-timeout":0,"barrier":false,"match":{"metadata":{"metadata-mask":"4293984255","metadata":"1180719718"}},"out_group":4294967295,"flags":""},{"id":"343","table_id":2,"installHw":false,"out_port":"4294967295","cookie":"220","instructions":{"instruction":[{"order":0,"write-metadata":{"metadata-mask":"12","metadata":"10"}}]},"priority":220,"cookie_mask":"255","flow-name":"flow-instruction-write-metadata","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"barrier":false,"out_group":4294967295},{"id":"145","installHw":false,"table_id":2,"cookie":"22","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":28000000}},"priority":22,"cookie_mask":"255","flow-name":"FooXf22","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"flags":""},{"id":"342","table_id":2,"installHw":false,"out_port":"4294967295","cookie":"219","instructions":{"instruction":[{"order":0,"clear-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"INPORT"}}]}}]},"priority":219,"cookie_mask":"255","flow-name":"flow-instruction-clear-actions","strict":false,"match":{"vlan-match":{"vlan-id":{"vlan-id":10,"vlan-id-present":true},"vlan-pcp":3}},"barrier":false,"out_group":4294967295},{"id":"144","installHw":false,"table_id":2,"cookie":"21","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":70000000}},"priority":21,"cookie_mask":"255","flow-name":"FooXf21","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":25364,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80::2acf:e9ff:fe21:6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"flags":""},{"id":"341","table_id":2,"installHw":false,"out_port":"4294967295","cookie":"218","instructions":{"instruction":[{"order":0,"go-to-table":{"table_id":3}}]},"priority":218,"cookie_mask":"255","flow-name":"flow-instruction-go-to-table","strict":false,"match":{"tunnel":{"tunnel-mask":"65520","tunnel-id":"10656"}},"barrier":false,"out_group":4294967295},{"id":"143","installHw":false,"table_id":2,"cookie":"20","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":114000000}},"priority":20,"cookie_mask":"255","flow-name":"FooXf20","strict":false,"idle-timeout":0,"match":{"metadata":{"metadata-mask":"61695","metadata":"12345"}},"flags":""},{"id":"142","installHw":false,"table_id":2,"cookie":"19","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":142000000}},"priority":19,"cookie_mask":"255","flow-name":"FooXf19","strict":false,"idle-timeout":0,"match":{"metadata":{"metadata":"12345"}},"flags":""},{"id":"141","installHw":false,"table_id":2,"cookie":"18","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":153000000}},"priority":18,"cookie_mask":"255","flow-name":"FooXf18","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-source":"fe80::2acf:e9ff:fe21:6431/128","ipv6-destination":"aabb:1234:2acf:e9ff::/64"},"flags":""},{"id":"140","table_id":2,"cookie":"17","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":228000000}},"priority":17,"cookie_mask":"255","flow-name":"FooXf17","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":34887}},"protocol-match-fields":{"mpls-tc":3,"mpls-bos":1,"mpls-label":567}},"flags":""},{"id":"337","table_id":2,"installHw":false,"priority":214,"cookie_mask":"255","flow-name":"set-field-ip-ecn","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","ip-match":{"ip-protocol":56,"ip-ecn":1,"ip-dscp":60}},"cookie":"214","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"ip-match":{"ip-ecn":2}}}]}}]}},{"id":"139","table_id":2,"cookie":"16","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":276000000}},"priority":16,"cookie_mask":"255","flow-name":"FooXf16","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true},"vlan-pcp":3}},"flags":""},{"id":"138","table_id":2,"cookie":"15","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":312000000}},"priority":15,"cookie_mask":"255","flow-name":"FooXf15","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":34887}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true}}},"flags":""},{"id":"137","table_id":2,"cookie":"14","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":345000000}},"priority":14,"cookie_mask":"255","flow-name":"FooXf14","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:FC:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:FF:ff"},"ethernet-type":{"type":2054}},"arp-target-hardware-address":{"address":"FE:DC:BA:98:76:54"},"arp-source-transport-address":"192.168.4.1/32","arp-op":1,"arp-target-transport-address":"10.21.22.23/32","arp-source-hardware-address":{"address":"12:34:56:78:98:AB"}},"flags":""},{"id":"233","table_id":2,"installHw":false,"priority":110,"cookie_mask":"255","flow-name":"push-vlan-action","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"110","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-vlan-action":{"vlan-id":1234,"ethernet-type":33024}}]}}]}},{"id":"232","installHw":false,"table_id":2,"cookie":"109","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"NORMAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":347000000}},"priority":109,"cookie_mask":"255","flow-name":"FooXf109","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"openflow:1:0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"flags":""},{"id":"550","table_id":2,"priority":550,"flow-name":"flow-tunnel","idle-timeout":0,"match":{"openflowplugin-extension-general:extension-list":[{"extension-key":"openflowplugin-extension-nicira-match:nxm-nx-tun-ipv4-src-key","extension":{"openflowplugin-extension-nicira-match:nxm-nx-tun-ipv4-src":{"ipv4-address":"192.168.0.10"}}}]},"instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"output-node-connector":"1"}}]}}]},"hard-timeout":0},{"id":"154","installHw":false,"table_id":2,"out_port":"4294967295","cookie":"31","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"drop-action":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":866000000}},"priority":31,"cookie_mask":"255","flow-name":"FooXf31","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"out_group":4294967295,"flags":""},{"id":"231","installHw":false,"table_id":2,"cookie":"108","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":385000000}},"priority":108,"cookie_mask":"255","flow-name":"FooXf108","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"openflow:1:0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"flags":""},{"id":"230","installHw":false,"table_id":2,"cookie":"107","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"ALL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":424000000}},"priority":107,"cookie_mask":"255","flow-name":"FooXf107","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"openflow:1:0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"flags":""},{"id":"229","installHw":false,"table_id":2,"cookie":"106","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"FLOOD"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":465000000}},"priority":106,"cookie_mask":"255","flow-name":"FooXf106","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":80,"tcp-source-port":20345,"ipv6-source":"1234:5678:9ABC:DEF0:FDCD:A987:6000::/100","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":45}},"flags":""},{"id":"228","installHw":false,"table_id":2,"cookie":"105","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"NORMAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":504000000}},"priority":105,"cookie_mask":"255","flow-name":"FooXf105","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":80,"tcp-source-port":20345,"ipv6-source":"1234:5678:9ABC:DEF0:FDCD:A000::/84","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":45}},"flags":""},{"id":"348","flow-name":"Foo225","match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-source-address-no-mask":"2001:2001:2001:2001:0000:2001:4000:0000","ipv6-source-arbitrary-bitmask":"FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000"},"table_id":2,"priority":225,"instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]}},{"id":"227","installHw":false,"table_id":2,"cookie":"104","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":544000000}},"priority":104,"cookie_mask":"255","flow-name":"FooXf104","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"flags":""},{"id":"347","flow-name":"Foo224","match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-destination-address-no-mask":"2001:2001:2001:2001:2001:2001:4000:7000","ipv6-destination-arbitrary-bitmask":"FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000"},"table_id":2,"priority":224,"instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]}},{"id":"226","installHw":false,"table_id":2,"cookie":"103","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":586000000}},"priority":103,"cookie_mask":"255","flow-name":"FooXf103","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"flags":""},{"id":"346","flow-name":"Foo223","match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination-address-no-mask":"7.0.17.0","ipv4-destination-arbitrary-bitmask":"255.0.241.0"},"table_id":2,"priority":223,"instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]}},{"id":"148","installHw":false,"table_id":2,"cookie":"25","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":907000000}},"priority":25,"cookie_mask":"255","flow-name":"FooXf25","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-label":{"ipv6-flabel":33},"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":58,"ip-ecn":3,"ip-dscp":60},"icmpv6-match":{"icmpv6-code":3,"icmpv6-type":6}},"flags":""},{"id":"225","installHw":false,"table_id":2,"cookie":"102","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":632000000}},"priority":102,"cookie_mask":"255","flow-name":"FooXf102","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"flags":""},{"id":"345","flow-name":"Foo222","match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"2.2.0.0/16"},"table_id":2,"priority":222,"instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]}},{"id":"147","installHw":false,"table_id":2,"cookie":"24","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"TABLE"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":949000000}},"priority":24,"cookie_mask":"255","flow-name":"FooXf24","strict":false,"idle-timeout":0,"match":{"tunnel":{"tunnel-id":"2591"}},"flags":""},{"id":"224","installHw":false,"table_id":2,"cookie":"101","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"TABLE"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":671000000}},"priority":101,"cookie_mask":"255","flow-name":"FooXf101","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"flags":""},{"id":"344","table_id":2,"installHw":false,"out_port":"4294967295","cookie":"221","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"priority":221,"cookie_mask":"255","flow-name":"flow-instruction-write-actions","strict":false,"match":{"vlan-match":{"vlan-id":{"vlan-id":10,"vlan-id-present":true},"vlan-pcp":3}},"barrier":false,"out_group":4294967295},{"id":"146","installHw":false,"table_id":2,"cookie":"23","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":989000000}},"priority":23,"cookie_mask":"255","flow-name":"FooXf23","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-label":{"ipv6-flabel":33},"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"flags":""},{"id":"166","installHw":false,"table_id":2,"out_port":"4294967295","cookie":"43","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":750000000}},"priority":43,"cookie_mask":"255","flow-name":"FooXf43","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"icmpv6-match":{"icmpv6-code":1,"icmpv6-type":135},"ip-match":{"ip-protocol":58}},"out_group":4294967295,"flags":""},{"id":"161","installHw":false,"table_id":2,"out_port":"4294967295","cookie":"38","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-queue-action":{"queue-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":779000000}},"priority":38,"cookie_mask":"255","flow-name":"FooXf38","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"out_group":4294967295,"flags":""},{"id":"#UF$TABLE*2-16","table_id":2,"priority":156,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true},"vlan-pcp":3}},"cookie":"156","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":233000000}},"flags":""},{"id":"236","table_id":2,"installHw":false,"priority":113,"cookie_mask":"255","flow-name":"push-mpls-action","strict":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"openflow:1:0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"113","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-mpls-action":{"ethernet-type":34888}}]}}]}},{"id":"#UF$TABLE*2-15","table_id":2,"priority":204,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"204","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"159","installHw":false,"table_id":2,"cookie":"36","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"ip-match":{"ip-dscp":1}}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":811000000}},"priority":36,"cookie_mask":"255","flow-name":"FooXf36","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"flags":""},{"id":"279","table_id":2,"priority":156,"cookie_mask":"255","flow-name":"FooXf156","strict":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true},"vlan-pcp":3}},"barrier":false,"cookie":"156","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]}},{"id":"#UF$TABLE*2-18","table_id":2,"priority":110,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"110","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-vlan-action":{"ethernet-type":33024}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":300000000}},"flags":""},{"id":"#UF$TABLE*2-17","table_id":2,"priority":113,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"113","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-mpls-action":{"ethernet-type":34888}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":266000000}},"flags":""},{"id":"#UF$TABLE*2-12","table_id":2,"priority":201,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"201","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":194000000}},"flags":""},{"id":"#UF$TABLE*2-11","table_id":2,"priority":206,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"206","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-destination-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":9000000}},"flags":""},{"id":"#UF$TABLE*2-14","table_id":2,"priority":203,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"203","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":115000000}},"flags":""},{"id":"#UF$TABLE*2-13","table_id":2,"priority":202,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"202","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":154000000}},"flags":""},{"id":"#UF$TABLE*2-10","table_id":2,"priority":205,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":47,"packets-matched":"0"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:50.814518" elapsed="0.007313"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-05-25T01:52:50.825735" level="INFO">Item found from container 66 times.</msg>
<msg time="2026-05-25T01:52:50.826304" level="FAIL">'{"flow-node-inventory:table":[{"id":2,"flow":[{"id":"332","table_id":2,"installHw":false,"priority":209,"cookie_mask":"255","flow-name":"set-field-tunnel-id","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"209","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tunnel":{"tunnel-id":"2591"}}}]}}]}},{"id":"134","table_id":2,"cookie":"11","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":399000000}},"priority":11,"cookie_mask":"255","flow-name":"FooXf11","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":1,"ip-ecn":3,"ip-dscp":27},"icmpv4-match":{"icmpv4-type":6,"icmpv4-code":3}},"flags":""},{"id":"133","table_id":2,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":435000000}},"priority":10,"cookie_mask":"255","flow-name":"FooXf10","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"flags":""},{"id":"132","table_id":2,"cookie":"9","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":481000000}},"priority":9,"cookie_mask":"255","flow-name":"FooXf9","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.1.0.0/16","ipv4-destination":"172.168.5.0/24","in-port":"openflow:1:0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"flags":""},{"id":"131","table_id":2,"cookie":"8","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":519000000}},"priority":8,"cookie_mask":"255","flow-name":"FooXf8","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:00","mask":"ff:ff:ff:ff:ff:00"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"flags":""},{"id":"130","table_id":2,"cookie":"7","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":569000000}},"priority":7,"cookie_mask":"255","flow-name":"FooXf7","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:aa"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":56,"ip-ecn":1,"ip-dscp":15}},"flags":""},{"id":"329","table_id":2,"priority":206,"cookie_mask":"255","flow-name":"sctp-destination-port","strict":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"barrier":false,"cookie":"206","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-destination-port":1111}}]}}]}},{"id":"328","table_id":2,"priority":205,"cookie_mask":"255","flow-name":"sctp-source-port-action","strict":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"barrier":false,"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]}},{"id":"327","table_id":2,"installHw":false,"priority":204,"cookie_mask":"255","flow-name":"set-field-udp-dst","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"204","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-destination-port":1234}}]}}]}},{"id":"129","table_id":2,"cookie":"6","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":613000000}},"priority":6,"cookie_mask":"255","flow-name":"FooXf5","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"40.4.0.0/16"},"flags":""},{"id":"326","table_id":2,"installHw":false,"priority":203,"cookie_mask":"255","flow-name":"set-field-udp-src","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"203","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-source-port":2059}}]}}]}},{"id":"128","table_id":2,"cookie":"5","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":658000000}},"priority":5,"cookie_mask":"255","flow-name":"FooXf5","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","in-port":"openflow:1:0"},"flags":""},{"id":"325","table_id":2,"installHw":false,"priority":202,"cookie_mask":"255","flow-name":"set-field-tcp-dst","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"202","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-destination-port":1234}}]}}]}},{"id":"127","installHw":false,"table_id":2,"cookie":"4","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":700000000}},"priority":4,"cookie_mask":"255","flow-name":"FooXf4","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":34887}}},"flags":""},{"id":"324","table_id":2,"installHw":false,"priority":201,"cookie_mask":"255","flow-name":"set-field-tcp-src","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"201","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-source-port":2059}}]}}]}},{"id":"126","installHw":false,"table_id":2,"cookie":"3","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"drop-action":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":748000000}},"priority":3,"cookie_mask":"255","flow-name":"FooXf3","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:00:01"}}},"flags":""},{"id":"125","installHw":false,"table_id":2,"cookie":"2","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"drop-action":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":791000000}},"priority":2,"cookie_mask":"255","flow-name":"FooXf2","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-source":"10.0.0.1/32"},"flags":""},{"id":"124","installHw":false,"table_id":2,"cookie":"1","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":842000000}},"priority":1,"cookie_mask":"255","flow-name":"FooXf1","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.1.0/24"},"flags":""},{"id":"168","installHw":false,"table_id":2,"out_port":"4294967295","cookie":"45","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"drop-action":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":708000000}},"priority":45,"cookie_mask":"255","flow-name":"FooXf45","strict":false,"idle-timeout":0,"barrier":false,"match":{"metadata":{"metadata-mask":"4293984255","metadata":"1180719718"}},"out_group":4294967295,"flags":""},{"id":"343","table_id":2,"installHw":false,"out_port":"4294967295","cookie":"220","instructions":{"instruction":[{"order":0,"write-metadata":{"metadata-mask":"12","metadata":"10"}}]},"priority":220,"cookie_mask":"255","flow-name":"flow-instruction-write-metadata","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"barrier":false,"out_group":4294967295},{"id":"145","installHw":false,"table_id":2,"cookie":"22","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":28000000}},"priority":22,"cookie_mask":"255","flow-name":"FooXf22","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"flags":""},{"id":"342","table_id":2,"installHw":false,"out_port":"4294967295","cookie":"219","instructions":{"instruction":[{"order":0,"clear-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"INPORT"}}]}}]},"priority":219,"cookie_mask":"255","flow-name":"flow-instruction-clear-actions","strict":false,"match":{"vlan-match":{"vlan-id":{"vlan-id":10,"vlan-id-present":true},"vlan-pcp":3}},"barrier":false,"out_group":4294967295},{"id":"144","installHw":false,"table_id":2,"cookie":"21","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":70000000}},"priority":21,"cookie_mask":"255","flow-name":"FooXf21","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":25364,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80::2acf:e9ff:fe21:6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"flags":""},{"id":"341","table_id":2,"installHw":false,"out_port":"4294967295","cookie":"218","instructions":{"instruction":[{"order":0,"go-to-table":{"table_id":3}}]},"priority":218,"cookie_mask":"255","flow-name":"flow-instruction-go-to-table","strict":false,"match":{"tunnel":{"tunnel-mask":"65520","tunnel-id":"10656"}},"barrier":false,"out_group":4294967295},{"id":"143","installHw":false,"table_id":2,"cookie":"20","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":114000000}},"priority":20,"cookie_mask":"255","flow-name":"FooXf20","strict":false,"idle-timeout":0,"match":{"metadata":{"metadata-mask":"61695","metadata":"12345"}},"flags":""},{"id":"142","installHw":false,"table_id":2,"cookie":"19","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":142000000}},"priority":19,"cookie_mask":"255","flow-name":"FooXf19","strict":false,"idle-timeout":0,"match":{"metadata":{"metadata":"12345"}},"flags":""},{"id":"141","installHw":false,"table_id":2,"cookie":"18","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":153000000}},"priority":18,"cookie_mask":"255","flow-name":"FooXf18","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-source":"fe80::2acf:e9ff:fe21:6431/128","ipv6-destination":"aabb:1234:2acf:e9ff::/64"},"flags":""},{"id":"140","table_id":2,"cookie":"17","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":228000000}},"priority":17,"cookie_mask":"255","flow-name":"FooXf17","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":34887}},"protocol-match-fields":{"mpls-tc":3,"mpls-bos":1,"mpls-label":567}},"flags":""},{"id":"337","table_id":2,"installHw":false,"priority":214,"cookie_mask":"255","flow-name":"set-field-ip-ecn","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","ip-match":{"ip-protocol":56,"ip-ecn":1,"ip-dscp":60}},"cookie":"214","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"ip-match":{"ip-ecn":2}}}]}}]}},{"id":"139","table_id":2,"cookie":"16","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":276000000}},"priority":16,"cookie_mask":"255","flow-name":"FooXf16","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true},"vlan-pcp":3}},"flags":""},{"id":"138","table_id":2,"cookie":"15","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":312000000}},"priority":15,"cookie_mask":"255","flow-name":"FooXf15","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":34887}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true}}},"flags":""},{"id":"137","table_id":2,"cookie":"14","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":345000000}},"priority":14,"cookie_mask":"255","flow-name":"FooXf14","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:FC:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:FF:ff"},"ethernet-type":{"type":2054}},"arp-target-hardware-address":{"address":"FE:DC:BA:98:76:54"},"arp-source-transport-address":"192.168.4.1/32","arp-op":1,"arp-target-transport-address":"10.21.22.23/32","arp-source-hardware-address":{"address":"12:34:56:78:98:AB"}},"flags":""},{"id":"233","table_id":2,"installHw":false,"priority":110,"cookie_mask":"255","flow-name":"push-vlan-action","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"110","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-vlan-action":{"vlan-id":1234,"ethernet-type":33024}}]}}]}},{"id":"232","installHw":false,"table_id":2,"cookie":"109","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"NORMAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":347000000}},"priority":109,"cookie_mask":"255","flow-name":"FooXf109","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"openflow:1:0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"flags":""},{"id":"550","table_id":2,"priority":550,"flow-name":"flow-tunnel","idle-timeout":0,"match":{"openflowplugin-extension-general:extension-list":[{"extension-key":"openflowplugin-extension-nicira-match:nxm-nx-tun-ipv4-src-key","extension":{"openflowplugin-extension-nicira-match:nxm-nx-tun-ipv4-src":{"ipv4-address":"192.168.0.10"}}}]},"instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"output-node-connector":"1"}}]}}]},"hard-timeout":0},{"id":"154","installHw":false,"table_id":2,"out_port":"4294967295","cookie":"31","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"drop-action":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":866000000}},"priority":31,"cookie_mask":"255","flow-name":"FooXf31","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"out_group":4294967295,"flags":""},{"id":"231","installHw":false,"table_id":2,"cookie":"108","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":385000000}},"priority":108,"cookie_mask":"255","flow-name":"FooXf108","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"openflow:1:0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"flags":""},{"id":"230","installHw":false,"table_id":2,"cookie":"107","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"ALL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":424000000}},"priority":107,"cookie_mask":"255","flow-name":"FooXf107","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"openflow:1:0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"flags":""},{"id":"229","installHw":false,"table_id":2,"cookie":"106","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"FLOOD"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":465000000}},"priority":106,"cookie_mask":"255","flow-name":"FooXf106","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":80,"tcp-source-port":20345,"ipv6-source":"1234:5678:9ABC:DEF0:FDCD:A987:6000::/100","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":45}},"flags":""},{"id":"228","installHw":false,"table_id":2,"cookie":"105","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"NORMAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":504000000}},"priority":105,"cookie_mask":"255","flow-name":"FooXf105","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":80,"tcp-source-port":20345,"ipv6-source":"1234:5678:9ABC:DEF0:FDCD:A000::/84","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":45}},"flags":""},{"id":"348","flow-name":"Foo225","match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-source-address-no-mask":"2001:2001:2001:2001:0000:2001:4000:0000","ipv6-source-arbitrary-bitmask":"FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000"},"table_id":2,"priority":225,"instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]}},{"id":"227","installHw":false,"table_id":2,"cookie":"104","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":544000000}},"priority":104,"cookie_mask":"255","flow-name":"FooXf104","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"flags":""},{"id":"347","flow-name":"Foo224","match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-destination-address-no-mask":"2001:2001:2001:2001:2001:2001:4000:7000","ipv6-destination-arbitrary-bitmask":"FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000"},"table_id":2,"priority":224,"instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]}},{"id":"226","installHw":false,"table_id":2,"cookie":"103","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":586000000}},"priority":103,"cookie_mask":"255","flow-name":"FooXf103","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"flags":""},{"id":"346","flow-name":"Foo223","match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination-address-no-mask":"7.0.17.0","ipv4-destination-arbitrary-bitmask":"255.0.241.0"},"table_id":2,"priority":223,"instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]}},{"id":"148","installHw":false,"table_id":2,"cookie":"25","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":907000000}},"priority":25,"cookie_mask":"255","flow-name":"FooXf25","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-label":{"ipv6-flabel":33},"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":58,"ip-ecn":3,"ip-dscp":60},"icmpv6-match":{"icmpv6-code":3,"icmpv6-type":6}},"flags":""},{"id":"225","installHw":false,"table_id":2,"cookie":"102","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":632000000}},"priority":102,"cookie_mask":"255","flow-name":"FooXf102","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"flags":""},{"id":"345","flow-name":"Foo222","match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"2.2.0.0/16"},"table_id":2,"priority":222,"instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]}},{"id":"147","installHw":false,"table_id":2,"cookie":"24","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"TABLE"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":949000000}},"priority":24,"cookie_mask":"255","flow-name":"FooXf24","strict":false,"idle-timeout":0,"match":{"tunnel":{"tunnel-id":"2591"}},"flags":""},{"id":"224","installHw":false,"table_id":2,"cookie":"101","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"TABLE"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":671000000}},"priority":101,"cookie_mask":"255","flow-name":"FooXf101","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"flags":""},{"id":"344","table_id":2,"installHw":false,"out_port":"4294967295","cookie":"221","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"priority":221,"cookie_mask":"255","flow-name":"flow-instruction-write-actions","strict":false,"match":{"vlan-match":{"vlan-id":{"vlan-id":10,"vlan-id-present":true},"vlan-pcp":3}},"barrier":false,"out_group":4294967295},{"id":"146","installHw":false,"table_id":2,"cookie":"23","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":989000000}},"priority":23,"cookie_mask":"255","flow-name":"FooXf23","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-label":{"ipv6-flabel":33},"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"flags":""},{"id":"166","installHw":false,"table_id":2,"out_port":"4294967295","cookie":"43","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":750000000}},"priority":43,"cookie_mask":"255","flow-name":"FooXf43","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"icmpv6-match":{"icmpv6-code":1,"icmpv6-type":135},"ip-match":{"ip-protocol":58}},"out_group":4294967295,"flags":""},{"id":"161","installHw":false,"table_id":2,"out_port":"4294967295","cookie":"38","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-queue-action":{"queue-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":779000000}},"priority":38,"cookie_mask":"255","flow-name":"FooXf38","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"out_group":4294967295,"flags":""},{"id":"#UF$TABLE*2-16","table_id":2,"priority":156,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true},"vlan-pcp":3}},"cookie":"156","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":233000000}},"flags":""},{"id":"236","table_id":2,"installHw":false,"priority":113,"cookie_mask":"255","flow-name":"push-mpls-action","strict":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"openflow:1:0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"113","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-mpls-action":{"ethernet-type":34888}}]}}]}},{"id":"#UF$TABLE*2-15","table_id":2,"priority":204,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"204","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"159","installHw":false,"table_id":2,"cookie":"36","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"ip-match":{"ip-dscp":1}}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":811000000}},"priority":36,"cookie_mask":"255","flow-name":"FooXf36","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"flags":""},{"id":"279","table_id":2,"priority":156,"cookie_mask":"255","flow-name":"FooXf156","strict":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true},"vlan-pcp":3}},"barrier":false,"cookie":"156","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]}},{"id":"#UF$TABLE*2-18","table_id":2,"priority":110,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"110","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-vlan-action":{"ethernet-type":33024}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":300000000}},"flags":""},{"id":"#UF$TABLE*2-17","table_id":2,"priority":113,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"113","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-mpls-action":{"ethernet-type":34888}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":266000000}},"flags":""},{"id":"#UF$TABLE*2-12","table_id":2,"priority":201,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"201","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":194000000}},"flags":""},{"id":"#UF$TABLE*2-11","table_id":2,"priority":206,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"206","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-destination-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":9000000}},"flags":""},{"id":"#UF$TABLE*2-14","table_id":2,"priority":203,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"203","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":115000000}},"flags":""},{"id":"#UF$TABLE*2-13","table_id":2,"priority":202,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"202","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":154000000}},"flags":""},{"id":"#UF$TABLE*2-10","table_id":2,"priority":205,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":47,"packets-matched":"0"}}]}' contains 'priority' 66 times, not 57 times.</msg>
<arg>${resp.text}</arg>
<arg>priority</arg>
<arg>${flows}</arg>
<doc>Fails if ``container`` does not contain ``item`` ``count`` times.</doc>
<status status="FAIL" start="2026-05-25T01:52:50.822060" elapsed="0.004972">'{"flow-node-inventory:table":[{"id":2,"flow":[{"id":"332","table_id":2,"installHw":false,"priority":209,"cookie_mask":"255","flow-name":"set-field-tunnel-id","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"209","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tunnel":{"tunnel-id":"2591"}}}]}}]}},{"id":"134","table_id":2,"cookie":"11","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":399000000}},"priority":11,"cookie_mask":"255","flow-name":"FooXf11","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":1,"ip-ecn":3,"ip-dscp":27},"icmpv4-match":{"icmpv4-type":6,"icmpv4-code":3}},"flags":""},{"id":"133","table_id":2,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statisti...
    [ Message content over the limit has been removed. ]
...*2-13","table_id":2,"priority":202,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"202","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":154000000}},"flags":""},{"id":"#UF$TABLE*2-10","table_id":2,"priority":205,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":47,"packets-matched":"0"}}]}' contains 'priority' 66 times, not 57 times.</status>
</kw>
<arg>openflow%3A1</arg>
<arg>${flows}</arg>
<doc>A GET on the /node=${node_id} inventory API is made and flow stats string is checked for existence.</doc>
<status status="FAIL" start="2026-05-25T01:52:50.793717" elapsed="0.033599">'{"flow-node-inventory:table":[{"id":2,"flow":[{"id":"332","table_id":2,"installHw":false,"priority":209,"cookie_mask":"255","flow-name":"set-field-tunnel-id","strict":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"209","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tunnel":{"tunnel-id":"2591"}}}]}}]}},{"id":"134","table_id":2,"cookie":"11","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":399000000}},"priority":11,"cookie_mask":"255","flow-name":"FooXf11","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":1,"ip-ecn":3,"ip-dscp":27},"icmpv4-match":{"icmpv4-type":6,"icmpv4-code":3}},"flags":""},{"id":"133","table_id":2,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statisti...
    [ Message content over the limit has been removed. ]
...*2-13","table_id":2,"priority":202,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"202","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":154000000}},"flags":""},{"id":"#UF$TABLE*2-10","table_id":2,"priority":205,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":47,"packets-matched":"0"}}]}' contains 'priority' 66 times, not 57 times.</status>
</kw>
<kw name="Check Flow Stats Are Available" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:52.854043" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:52.858413" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"flow-node-inventory:table":[{"id":2,"flow":[{"id":"134","table_id":2,"cookie":"11","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":467000000}},"priority":11,"cookie_mask":"255","flow-name":"FooXf11","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":1,"ip-ecn":3,"ip-dscp":27},"icmpv4-match":{"icmpv4-type":6,"icmpv4-code":3}},"flags":""},{"id":"332","installHw":false,"table_id":2,"cookie":"209","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tunnel":{"tunnel-id":"2591"}}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":13000000}},"priority":209,"cookie_mask":"255","flow-name":"set-field-tunnel-id","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"flags":""},{"id":"133","table_id":2,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":503000000}},"priority":10,"cookie_mask":"255","flow-name":"FooXf10","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"flags":""},{"id":"132","table_id":2,"cookie":"9","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":549000000}},"priority":9,"cookie_mask":"255","flow-name":"FooXf9","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.1.0.0/16","ipv4-destination":"172.168.5.0/24","in-port":"openflow:1:0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"flags":""},{"id":"131","table_id":2,"cookie":"8","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":587000000}},"priority":8,"cookie_mask":"255","flow-name":"FooXf8","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:00","mask":"ff:ff:ff:ff:ff:00"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"flags":""},{"id":"130","table_id":2,"cookie":"7","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":637000000}},"priority":7,"cookie_mask":"255","flow-name":"FooXf7","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:aa"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":56,"ip-ecn":1,"ip-dscp":15}},"flags":""},{"id":"329","table_id":2,"cookie":"206","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-destination-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":77000000}},"priority":206,"cookie_mask":"255","flow-name":"sctp-destination-port","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"flags":""},{"id":"328","table_id":2,"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":113000000}},"priority":205,"cookie_mask":"255","flow-name":"sctp-source-port-action","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"flags":""},{"id":"129","table_id":2,"cookie":"6","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":681000000}},"priority":6,"cookie_mask":"255","flow-name":"FooXf5","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"40.4.0.0/16"},"flags":""},{"id":"327","installHw":false,"table_id":2,"cookie":"204","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":149000000}},"priority":204,"cookie_mask":"255","flow-name":"set-field-udp-dst","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"flags":""},{"id":"128","table_id":2,"cookie":"5","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":726000000}},"priority":5,"cookie_mask":"255","flow-name":"FooXf5","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","in-port":"openflow:1:0"},"flags":""},{"id":"326","installHw":false,"table_id":2,"cookie":"203","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":183000000}},"priority":203,"cookie_mask":"255","flow-name":"set-field-udp-src","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"flags":""},{"id":"127","installHw":false,"table_id":2,"cookie":"4","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":768000000}},"priority":4,"cookie_mask":"255","flow-name":"FooXf4","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":34887}}},"flags":""},{"id":"325","installHw":false,"table_id":2,"cookie":"202","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":222000000}},"priority":202,"cookie_mask":"255","flow-name":"set-field-tcp-dst","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-so... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:52.858993" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=2</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:52.834585" elapsed="0.024514"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:52.863030" level="INFO">{"flow-node-inventory:table":[{"id":2,"flow":[{"id":"134","table_id":2,"cookie":"11","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":467000000}},"priority":11,"cookie_mask":"255","flow-name":"FooXf11","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":1,"ip-ecn":3,"ip-dscp":27},"icmpv4-match":{"icmpv4-type":6,"icmpv4-code":3}},"flags":""},{"id":"332","installHw":false,"table_id":2,"cookie":"209","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tunnel":{"tunnel-id":"2591"}}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":13000000}},"priority":209,"cookie_mask":"255","flow-name":"set-field-tunnel-id","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"flags":""},{"id":"133","table_id":2,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":503000000}},"priority":10,"cookie_mask":"255","flow-name":"FooXf10","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"flags":""},{"id":"132","table_id":2,"cookie":"9","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":549000000}},"priority":9,"cookie_mask":"255","flow-name":"FooXf9","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.1.0.0/16","ipv4-destination":"172.168.5.0/24","in-port":"openflow:1:0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"flags":""},{"id":"131","table_id":2,"cookie":"8","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":587000000}},"priority":8,"cookie_mask":"255","flow-name":"FooXf8","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:00","mask":"ff:ff:ff:ff:ff:00"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"flags":""},{"id":"130","table_id":2,"cookie":"7","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":637000000}},"priority":7,"cookie_mask":"255","flow-name":"FooXf7","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:aa"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":56,"ip-ecn":1,"ip-dscp":15}},"flags":""},{"id":"329","table_id":2,"cookie":"206","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-destination-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":77000000}},"priority":206,"cookie_mask":"255","flow-name":"sctp-destination-port","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"flags":""},{"id":"328","table_id":2,"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":113000000}},"priority":205,"cookie_mask":"255","flow-name":"sctp-source-port-action","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"openflow:1:0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"flags":""},{"id":"129","table_id":2,"cookie":"6","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":681000000}},"priority":6,"cookie_mask":"255","flow-name":"FooXf5","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"40.4.0.0/16"},"flags":""},{"id":"327","installHw":false,"table_id":2,"cookie":"204","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":149000000}},"priority":204,"cookie_mask":"255","flow-name":"set-field-udp-dst","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"flags":""},{"id":"128","table_id":2,"cookie":"5","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":726000000}},"priority":5,"cookie_mask":"255","flow-name":"FooXf5","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","in-port":"openflow:1:0"},"flags":""},{"id":"326","installHw":false,"table_id":2,"cookie":"203","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":183000000}},"priority":203,"cookie_mask":"255","flow-name":"set-field-udp-src","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"flags":""},{"id":"127","installHw":false,"table_id":2,"cookie":"4","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":768000000}},"priority":4,"cookie_mask":"255","flow-name":"FooXf4","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":34887}}},"flags":""},{"id":"325","installHw":false,"table_id":2,"cookie":"202","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":222000000}},"priority":202,"cookie_mask":"255","flow-name":"set-field-tcp-dst","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"flags":""},{"id":"126","installHw":false,"table_id":2,"cookie":"3","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"drop-action":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":816000000}},"priority":3,"cookie_mask":"255","flow-name":"FooXf3","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:00:01"}}},"flags":""},{"id":"324","installHw":false,"table_id":2,"cookie":"201","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":262000000}},"priority":201,"cookie_mask":"255","flow-name":"set-field-tcp-src","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"flags":""},{"id":"125","installHw":false,"table_id":2,"cookie":"2","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"drop-action":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":859000000}},"priority":2,"cookie_mask":"255","flow-name":"FooXf2","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-source":"10.0.0.1/32"},"flags":""},{"id":"124","installHw":false,"table_id":2,"cookie":"1","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":910000000}},"priority":1,"cookie_mask":"255","flow-name":"FooXf1","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.1.0/24"},"flags":""},{"id":"168","installHw":false,"table_id":2,"out_port":"4294967295","cookie":"45","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"drop-action":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":776000000}},"priority":45,"cookie_mask":"255","flow-name":"FooXf45","strict":false,"idle-timeout":0,"barrier":false,"match":{"metadata":{"metadata-mask":"4293984255","metadata":"1180719718"}},"out_group":4294967295,"flags":""},{"id":"145","installHw":false,"table_id":2,"cookie":"22","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":96000000}},"priority":22,"cookie_mask":"255","flow-name":"FooXf22","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"flags":""},{"id":"343","installHw":false,"table_id":2,"out_port":"4294967295","cookie":"220","instructions":{"instruction":[{"order":0,"write-metadata":{"metadata-mask":"12","metadata":"10"}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":890000000}},"priority":220,"cookie_mask":"255","flow-name":"flow-instruction-write-metadata","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"out_group":4294967295,"flags":""},{"id":"144","installHw":false,"table_id":2,"cookie":"21","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":138000000}},"priority":21,"cookie_mask":"255","flow-name":"FooXf21","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":25364,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80::2acf:e9ff:fe21:6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"flags":""},{"id":"342","installHw":false,"table_id":2,"out_port":"4294967295","cookie":"219","instructions":{"instruction":[{"order":0,"clear-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"INPORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":926000000}},"priority":219,"cookie_mask":"255","flow-name":"flow-instruction-clear-actions","strict":false,"idle-timeout":0,"barrier":false,"match":{"vlan-match":{"vlan-id":{"vlan-id":10,"vlan-id-present":true},"vlan-pcp":3}},"out_group":4294967295,"flags":""},{"id":"143","installHw":false,"table_id":2,"cookie":"20","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":182000000}},"priority":20,"cookie_mask":"255","flow-name":"FooXf20","strict":false,"idle-timeout":0,"match":{"metadata":{"metadata-mask":"61695","metadata":"12345"}},"flags":""},{"id":"341","installHw":false,"table_id":2,"out_port":"4294967295","cookie":"218","instructions":{"instruction":[{"order":0,"go-to-table":{"table_id":3}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":960000000}},"priority":218,"cookie_mask":"255","flow-name":"flow-instruction-go-to-table","strict":false,"idle-timeout":0,"barrier":false,"match":{"tunnel":{"tunnel-mask":"65520","tunnel-id":"10656"}},"out_group":4294967295,"flags":""},{"id":"142","installHw":false,"table_id":2,"cookie":"19","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":210000000}},"priority":19,"cookie_mask":"255","flow-name":"FooXf19","strict":false,"idle-timeout":0,"match":{"metadata":{"metadata":"12345"}},"flags":""},{"id":"141","installHw":false,"table_id":2,"cookie":"18","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":221000000}},"priority":18,"cookie_mask":"255","flow-name":"FooXf18","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-source":"fe80::2acf:e9ff:fe21:6431/128","ipv6-destination":"aabb:1234:2acf:e9ff::/64"},"flags":""},{"id":"140","table_id":2,"cookie":"17","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":296000000}},"priority":17,"cookie_mask":"255","flow-name":"FooXf17","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":34887}},"protocol-match-fields":{"mpls-tc":3,"mpls-bos":1,"mpls-label":567}},"flags":""},{"id":"139","table_id":2,"cookie":"16","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":344000000}},"priority":16,"cookie_mask":"255","flow-name":"FooXf16","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true},"vlan-pcp":3}},"flags":""},{"id":"337","installHw":false,"table_id":2,"cookie":"214","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"ip-match":{"ip-ecn":2}}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":3000000}},"priority":214,"cookie_mask":"255","flow-name":"set-field-ip-ecn","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","ip-match":{"ip-protocol":56,"ip-ecn":1,"ip-dscp":60}},"flags":""},{"id":"138","table_id":2,"cookie":"15","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":380000000}},"priority":15,"cookie_mask":"255","flow-name":"FooXf15","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":34887}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true}}},"flags":""},{"id":"137","table_id":2,"cookie":"14","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":413000000}},"priority":14,"cookie_mask":"255","flow-name":"FooXf14","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:FC:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:FF:ff"},"ethernet-type":{"type":2054}},"arp-target-hardware-address":{"address":"FE:DC:BA:98:76:54"},"arp-source-transport-address":"192.168.4.1/32","arp-op":1,"arp-target-transport-address":"10.21.22.23/32","arp-source-hardware-address":{"address":"12:34:56:78:98:AB"}},"flags":""},{"id":"233","installHw":false,"table_id":2,"cookie":"110","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-vlan-action":{"vlan-id":1234,"ethernet-type":33024}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":368000000}},"priority":110,"cookie_mask":"255","flow-name":"push-vlan-action","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","ip-match":{"ip-protocol":6,"ip-ecn":3}},"flags":""},{"id":"232","installHw":false,"table_id":2,"cookie":"109","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"NORMAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":415000000}},"priority":109,"cookie_mask":"255","flow-name":"FooXf109","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"openflow:1:0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"flags":""},{"id":"154","installHw":false,"table_id":2,"out_port":"4294967295","cookie":"31","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"drop-action":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":934000000}},"priority":31,"cookie_mask":"255","flow-name":"FooXf31","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"out_group":4294967295,"flags":""},{"id":"231","installHw":false,"table_id":2,"cookie":"108","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":453000000}},"priority":108,"cookie_mask":"255","flow-name":"FooXf108","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"openflow:1:0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"flags":""},{"id":"550","table_id":2,"priority":550,"cookie_mask":"0","flow-name":"flow-tunnel","idle-timeout":0,"match":{"openflowplugin-extension-general:extension-list":[{"extension-key":"openflowplugin-extension-nicira-match:nxm-nx-tun-ipv4-src-key","extension":{"openflowplugin-extension-nicira-match:nxm-nx-tun-ipv4-src":{"ipv4-address":"192.168.0.10"}}}]},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}]}}]},"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":652000000}},"hard-timeout":0,"flags":""},{"id":"230","installHw":false,"table_id":2,"cookie":"107","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"ALL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":492000000}},"priority":107,"cookie_mask":"255","flow-name":"FooXf107","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"openflow:1:0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"flags":""},{"id":"229","installHw":false,"table_id":2,"cookie":"106","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"FLOOD"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":533000000}},"priority":106,"cookie_mask":"255","flow-name":"FooXf106","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":80,"tcp-source-port":20345,"ipv6-source":"1234:5678:9ABC:DEF0:FDCD:A987:6000::/100","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":45}},"flags":""},{"id":"228","installHw":false,"table_id":2,"cookie":"105","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"NORMAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":572000000}},"priority":105,"cookie_mask":"255","flow-name":"FooXf105","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":80,"tcp-source-port":20345,"ipv6-source":"1234:5678:9ABC:DEF0:FDCD:A000::/84","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":45}},"flags":""},{"id":"227","installHw":false,"table_id":2,"cookie":"104","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":612000000}},"priority":104,"cookie_mask":"255","flow-name":"FooXf104","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"flags":""},{"id":"348","table_id":2,"priority":225,"cookie_mask":"0","flow-name":"Foo225","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-source-address-no-mask":"2001:2001:2001:2001:0000:2001:4000:0000","ipv6-source-arbitrary-bitmask":"FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":728000000}},"hard-timeout":0,"flags":""},{"id":"226","installHw":false,"table_id":2,"cookie":"103","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":654000000}},"priority":103,"cookie_mask":"255","flow-name":"FooXf103","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"flags":""},{"id":"347","table_id":2,"priority":224,"cookie_mask":"0","flow-name":"Foo224","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-destination-address-no-mask":"2001:2001:2001:2001:2001:2001:4000:7000","ipv6-destination-arbitrary-bitmask":"FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":750000000}},"hard-timeout":0,"flags":""},{"id":"148","installHw":false,"table_id":2,"cookie":"25","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":975000000}},"priority":25,"cookie_mask":"255","flow-name":"FooXf25","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-label":{"ipv6-flabel":33},"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":58,"ip-ecn":3,"ip-dscp":60},"icmpv6-match":{"icmpv6-code":3,"icmpv6-type":6}},"flags":""},{"id":"225","installHw":false,"table_id":2,"cookie":"102","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":700000000}},"priority":102,"cookie_mask":"255","flow-name":"FooXf102","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"flags":""},{"id":"346","table_id":2,"priority":223,"cookie_mask":"0","flow-name":"Foo223","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination-address-no-mask":"7.0.17.0","ipv4-destination-arbitrary-bitmask":"255.0.241.0"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":783000000}},"hard-timeout":0,"flags":""},{"id":"147","installHw":false,"table_id":2,"cookie":"24","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"TABLE"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":17000000}},"priority":24,"cookie_mask":"255","flow-name":"FooXf24","strict":false,"idle-timeout":0,"match":{"tunnel":{"tunnel-id":"2591"}},"flags":""},{"id":"224","installHw":false,"table_id":2,"cookie":"101","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"TABLE"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":739000000}},"priority":101,"cookie_mask":"255","flow-name":"FooXf101","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"flags":""},{"id":"345","table_id":2,"priority":222,"cookie_mask":"0","flow-name":"Foo222","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"2.2.0.0/16"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":825000000}},"hard-timeout":0,"flags":""},{"id":"146","installHw":false,"table_id":2,"cookie":"23","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":57000000}},"priority":23,"cookie_mask":"255","flow-name":"FooXf23","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-label":{"ipv6-flabel":33},"ipv6-source":"1234:5678:9ABC:DEF0:FDC0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"flags":""},{"id":"344","installHw":false,"table_id":2,"out_port":"4294967295","cookie":"221","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":859000000}},"priority":221,"cookie_mask":"255","flow-name":"flow-instruction-write-actions","strict":false,"idle-timeout":0,"barrier":false,"match":{"vlan-match":{"vlan-id":{"vlan-id":10,"vlan-id-present":true},"vlan-pcp":3}},"out_group":4294967295,"flags":""},{"id":"166","installHw":false,"table_id":2,"out_port":"4294967295","cookie":"43","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":818000000}},"priority":43,"cookie_mask":"255","flow-name":"FooXf43","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"icmpv6-match":{"icmpv6-code":1,"icmpv6-type":135},"ip-match":{"ip-protocol":58}},"out_group":4294967295,"flags":""},{"id":"161","installHw":false,"table_id":2,"out_port":"4294967295","cookie":"38","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-queue-action":{"queue-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":847000000}},"priority":38,"cookie_mask":"255","flow-name":"FooXf38","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"out_group":4294967295,"flags":""},{"id":"159","installHw":false,"table_id":2,"cookie":"36","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"ip-match":{"ip-dscp":1}}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":879000000}},"priority":36,"cookie_mask":"255","flow-name":"FooXf36","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"flags":""},{"id":"236","installHw":false,"table_id":2,"cookie":"113","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-mpls-action":{"ethernet-type":34888}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":334000000}},"priority":113,"cookie_mask":"255","flow-name":"push-mpls-action","strict":false,"idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"openflow:1:0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"flags":""},{"id":"279","table_id":2,"cookie":"156","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":301000000}},"priority":156,"cookie_mask":"255","flow-name":"FooXf156","strict":false,"idle-timeout":0,"barrier":false,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true},"vlan-pcp":3}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":57,"packets-matched":"0"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:52.859588" elapsed="0.003981"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-05-25T01:52:52.867204" level="INFO">Item found from container 57 times.</msg>
<arg>${resp.text}</arg>
<arg>priority</arg>
<arg>${flows}</arg>
<doc>Fails if ``container`` does not contain ``item`` ``count`` times.</doc>
<status status="PASS" start="2026-05-25T01:52:52.863793" elapsed="0.003647"/>
</kw>
<arg>openflow%3A1</arg>
<arg>${flows}</arg>
<doc>A GET on the /node=${node_id} inventory API is made and flow stats string is checked for existence.</doc>
<status status="PASS" start="2026-05-25T01:52:52.833983" elapsed="0.033560"/>
</kw>
<arg>30s</arg>
<arg>2s</arg>
<arg>FlowLib.Check Flow Stats Are Available</arg>
<arg>openflow%3A1</arg>
<arg>${flows}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:52:48.755748" elapsed="4.111888"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:52:52.870628" level="INFO">dpctl dump-flows -O OpenFlow13</msg>
<arg>dpctl dump-flows -O OpenFlow13</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:52:52.867865" elapsed="0.002822"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:52:53.033514" level="INFO">*** s1 ------------------------------------------------------------------------
 cookie=0xa, duration=7.499s, table=0, n_packets=10, n_bytes=820, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=4.077s, table=2, n_packets=0, n_bytes=0, priority=550,tun_src=192.168.0.10 actions=output:"s1-eth1"
 cookie=0x0, duration=4.153s, table=2, n_packets=0, n_bytes=0, priority=225,ipv6,ipv6_src=2001:2001:2001:2001:0:2001:4000:0/ffff:ffff:ffff:ffff:0:ffff:f000:0 actions=dec_ttl
 cookie=0x0, duration=4.175s, table=2, n_packets=0, n_bytes=0, priority=224,ipv6,ipv6_dst=2001:2001:2001:2001:2001:2001:4000:7000/ffff:ffff:ffff:ffff:ffff:ffff:f000:f000 actions=dec_ttl
 cookie=0x0, duration=4.208s, table=2, n_packets=0, n_bytes=0, priority=223,ip,nw_dst=7.0.17.0/255.0.241.0 actions=dec_ttl
 cookie=0x0, duration=4.250s, table=2, n_packets=0, n_bytes=0, priority=222,ip,nw_dst=2.2.0.0/16 actions=dec_ttl
 cookie=0xdb, duration=4.351s, table=2, n_packets=0, n_bytes=0, priority=219,dl_vlan=10,dl_vlan_pcp=3 actions=clear_actions
 cookie=0xdd, duration=4.284s, table=2, n_packets=0, n_bytes=0, priority=221,dl_vlan=10,dl_vlan_pcp=3 actions=output:"s1-eth1"
 cookie=0x1, duration=6.335s, table=2, n_packets=0, n_bytes=0, priority=1,ip,nw_dst=10.0.1.0/24 actions=dec_ttl
 cookie=0x1f, duration=5.359s, table=2, n_packets=0, n_bytes=0, priority=31,ip,nw_dst=10.0.0.0/24 actions=drop
 cookie=0x24, duration=5.304s, table=2, n_packets=0, n_bytes=0, priority=36,ip,nw_dst=10.0.0.0/24 actions=set_field:1-&gt;ip_dscp
 cookie=0x26, duration=5.272s, table=2, n_packets=0, n_bytes=0, priority=38,ip,nw_dst=10.0.0.0/24 actions=set_queue:1
 cookie=0xdc, duration=4.315s, table=2, n_packets=0, n_bytes=0, priority=220,ip,nw_dst=10.0.0.0/24 actions=write_metadata:0xa/0xc
 cookie=0xda, duration=4.385s, table=2, n_packets=0, n_bytes=0, priority=218,tun_id=0x29a0/0xfff0 actions=goto_table:3
 cookie=0xd6, duration=4.428s, table=2, n_packets=0, n_bytes=0, priority=214,ip,nw_src=10.1.2.0/24,nw_dst=20.4.0.0/16,nw_proto=56,nw_tos=240,nw_ecn=1 actions=set_field:2-&gt;nw_ecn
 cookie=0x15, duration=5.563s, table=2, n_packets=0, n_bytes=0, priority=21,udp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80::2acf:e9ff:fe21:6431,nw_tos=32,nw_ecn=3,tp_src=25364,tp_dst=8080 actions=dec_ttl
 cookie=0x16, duration=5.521s, table=2, n_packets=0, n_bytes=0, priority=22,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_tos=240,nw_ecn=3,tp_src=183,tp_dst=8080 actions=dec_ttl
 cookie=0x65, duration=5.164s, table=2, n_packets=0, n_bytes=0, priority=101,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_tos=240,nw_ecn=3,tp_src=183,tp_dst=8080 actions=TABLE
 cookie=0x68, duration=5.037s, table=2, n_packets=0, n_bytes=0, priority=104,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_tos=240,nw_ecn=3,tp_src=183,tp_dst=8080 actions=LOCAL
 cookie=0xd1, duration=4.438s, table=2, n_packets=0, n_bytes=0, priority=209,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_tos=240,nw_ecn=3,tp_src=183,tp_dst=8080 actions=set_field:0xa1f-&gt;tun_id
 cookie=0xa, duration=5.928s, table=2, n_packets=0, n_bytes=0, priority=10,sctp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=0,nw_ecn=0,tp_src=768,tp_dst=384 actions=dec_ttl
 cookie=0xb, duration=5.892s, table=2, n_packets=0, n_bytes=0, priority=11,icmp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=108,nw_ecn=3,icmp_type=6,icmp_code=3 actions=dec_ttl
 cookie=0xcd, duration=4.538s, table=2, n_packets=0, n_bytes=0, priority=205,sctp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=0,nw_ecn=0,tp_src=768,tp_dst=384 actions=set_field:1111-&gt;sctp_src
 cookie=0xce, duration=4.502s, table=2, n_packets=0, n_bytes=0, priority=206,sctp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=0,nw_ecn=0,tp_src=768,tp_dst=384 actions=set_field:1111-&gt;sctp_dst
 cookie=0xc9, duration=4.687s, table=2, n_packets=0, n_bytes=0, priority=201,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_ecn=3,tp_src=183,tp_dst=8080 actions=set_field:2059-&gt;tcp_src
 cookie=0xca, duration=4.647s, table=2, n_packets=0, n_bytes=0, priority=202,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_ecn=3,tp_src=183,tp_dst=8080 actions=set_field:1234-&gt;tcp_dst
 cookie=0xcb, duration=4.608s, table=2, n_packets=0, n_bytes=0, priority=203,udp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_ecn=3,tp_src=183,tp_dst=8080 actions=set_field:2059-&gt;udp_src
 cookie=0xcc, duration=4.574s, table=2, n_packets=0, n_bytes=0, priority=204,udp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_ecn=3,tp_src=183,tp_dst=8080 actions=set_field:1234-&gt;udp_dst
 cookie=0x10, duration=5.769s, table=2, n_packets=0, n_bytes=0, priority=16,ip,dl_vlan=78,dl_vlan_pcp=3,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61 actions=dec_ttl
 cookie=0x9c, duration=4.726s, table=2, n_packets=0, n_bytes=0, priority=156,ip,dl_vlan=78,dl_vlan_pcp=3,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61 actions=dec_ttl
 cookie=0x6b, duration=4.917s, table=2, n_packets=0, n_bytes=0, priority=107,udp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=20:14:29:01:19:61,nw_src=19.64.0.0/10,nw_dst=172.168.192.0/18,nw_tos=32,nw_ecn=3,tp_src=25364,tp_dst=8080 actions=ALL
 cookie=0x6c, duration=4.878s, table=2, n_packets=0, n_bytes=0, priority=108,udp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=20:14:29:01:19:61,nw_src=19.64.0.0/10,nw_dst=172.168.192.0/18,nw_tos=32,nw_ecn=3,tp_src=25364,tp_dst=8080 actions=CONTROLLER:60
 cookie=0x6d, duration=4.840s, table=2, n_packets=0, n_bytes=0, priority=109,udp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=20:14:29:01:19:61,nw_src=19.64.0.0/10,nw_dst=172.168.192.0/18,nw_tos=32,nw_ecn=3,tp_src=25364,tp_dst=8080 actions=NORMAL
 cookie=0x71, duration=4.759s, table=2, n_packets=0, n_bytes=0, priority=113,udp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=20:14:29:01:19:61,nw_src=19.64.0.0/10,nw_dst=172.168.192.0/18,nw_tos=32,nw_ecn=3,tp_src=25364,tp_dst=8080 actions=push_mpls:0x8848
 cookie=0x6e, duration=4.793s, table=2, n_packets=0, n_bytes=0, priority=110,tcp6,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_ecn=3,tp_src=183,tp_dst=8080 actions=push_vlan:0x8100
 cookie=0x6a, duration=4.958s, table=2, n_packets=0, n_bytes=0, priority=106,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdcd:a987:6000:0/100,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_tos=180,nw_ecn=2,tp_src=20345,tp_dst=80 actions=FLOOD
 cookie=0x69, duration=4.997s, table=2, n_packets=0, n_bytes=0, priority=105,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdcd:a000::/84,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_tos=180,nw_ecn=2,tp_src=20345,tp_dst=80 actions=NORMAL
 cookie=0x66, duration=5.125s, table=2, n_packets=0, n_bytes=0, priority=102,tcp,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=8,nw_ecn=2,tp_src=25364,tp_dst=8080 actions=IN_PORT
 cookie=0x67, duration=5.079s, table=2, n_packets=0, n_bytes=0, priority=103,tcp,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=8,nw_ecn=2,tp_src=25364,tp_dst=8080 actions=output:"s1-eth1"
 cookie=0x2d, duration=5.201s, table=2, n_packets=0, n_bytes=0, priority=45,metadata=0x46605a66/0xfff0ffff actions=drop
 cookie=0x2b, duration=5.243s, table=2, n_packets=0, n_bytes=0, priority=43,icmp6,icmp_type=135,icmp_code=1 actions=dec_ttl
 cookie=0x17, duration=5.482s, table=2, n_packets=0, n_bytes=0, priority=23,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,ipv6_label=0x00021,nw_tos=240,nw_ecn=3,tp_src=183,tp_dst=8080 actions=dec_ttl
 cookie=0x19, duration=5.400s, table=2, n_packets=0, n_bytes=0, priority=25,icmp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,ipv6_label=0x00021,nw_tos=240,nw_ecn=3,icmp_type=6,icmp_code=3 actions=dec_ttl
 cookie=0x18, duration=5.442s, table=2, n_packets=0, n_bytes=0, priority=24,tun_id=0xa1f actions=TABLE
 cookie=0x14, duration=5.607s, table=2, n_packets=0, n_bytes=0, priority=20,metadata=0x3039/0xf0ff actions=LOCAL
 cookie=0x13, duration=5.635s, table=2, n_packets=0, n_bytes=0, priority=19,metadata=0x3039 actions=IN_PORT
 cookie=0x12, duration=5.646s, table=2, n_packets=0, n_bytes=0, priority=18,ipv6,ipv6_src=fe80::2acf:e9ff:fe21:6431,ipv6_dst=aabb:1234:2acf:e9ff::/64 actions=dec_ttl
 cookie=0x11, duration=5.721s, table=2, n_packets=0, n_bytes=0, priority=17,mpls,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61,mpls_label=567,mpls_tc=3,mpls_bos=1 actions=dec_mpls_ttl
 cookie=0xf, duration=5.805s, table=2, n_packets=0, n_bytes=0, priority=15,mpls,dl_vlan=78,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61 actions=dec_mpls_ttl
 cookie=0xe, duration=5.838s, table=2, n_packets=0, n_bytes=0, priority=14,arp,dl_src=00:00:fc:01:23:ae,dl_dst=ff:ff:ff:ff:ff:ff,arp_spa=192.168.4.1,arp_tpa=10.21.22.23,arp_op=1,arp_sha=12:34:56:78:98:ab,arp_tha=fe:dc:ba:98:76:54 actions=CONTROLLER:60
 cookie=0x9, duration=5.974s, table=2, n_packets=0, n_bytes=0, priority=9,udp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=20:14:29:01:19:61,nw_src=19.1.0.0/16,nw_dst=172.168.5.0/24,nw_tos=32,nw_ecn=3,tp_src=25364,tp_dst=8080 actions=dec_ttl
 cookie=0x8, duration=6.012s, table=2, n_packets=0, n_bytes=0, priority=8,tcp,in_port=0,dl_src=00:00:00:11:23:00/ff:ff:ff:ff:ff:00,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=8,nw_ecn=2,tp_src=25364,tp_dst=8080 actions=dec_ttl
 cookie=0x7, duration=6.062s, table=2, n_packets=0, n_bytes=0, priority=7,ip,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:ff:ff:ff:aa,nw_src=10.1.2.0/24,nw_dst=20.4.0.0/16,nw_proto=56,nw_tos=60,nw_ecn=1 actions=dec_ttl
 cookie=0x6, duration=6.106s, table=2, n_packets=0, n_bytes=0, priority=6,ip,dl_src=00:00:00:01:23:ae,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=10.1.2.0/24,nw_dst=40.4.0.0/16 actions=dec_ttl
 cookie=0x5, duration=6.151s, table=2, n_packets=0, n_bytes=0, priority=5,ip,in_port=0,dl_src=00:00:00:00:23:ae,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=10.1.2.0/24,nw_dst=20.4.0.0/16 actions=dec_ttl
 cookie=0x4, duration=6.193s, table=2, n_packets=0, n_bytes=0, priority=4,mpls,dl_src=00:00:00:00:23:ae,dl_dst=ff:ff:ff:ff:ff:ff actions=dec_mpls_ttl
 cookie=0x3, duration=6.241s, table=2, n_packets=0, n_bytes=0, priority=3,dl_src=00:00:00:00:00:01 actions=drop
 cookie=0x2, duration=6.284s, table=2, n_packets=0, n_bytes=0, priority=2,ip,nw_src=10.0.0.1 actions=drop
mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:52:52.870844" elapsed="0.162928"/>
</kw>
<doc>Add all flows and waits for SM to collect data</doc>
<status status="PASS" start="2026-05-25T01:52:46.493357" elapsed="6.540582"/>
</test>
<test id="s1-s3-s1-t2" name="Test Is Flow 1 Added" line="51">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:53.045563" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f1.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f1.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:53.045732" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:53.045410" elapsed="0.000352"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:53.046421" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3042c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:53.045928" elapsed="0.000522"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:53.046938" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:53.046618" elapsed="0.000348"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:53.047413" level="INFO">${flow_id} = 124</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:53.047137" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:53.047885" level="INFO">${flow_priority} = 1</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:53.047593" elapsed="0.000318"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:53.048708" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:53.048081" elapsed="0.000658"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.049265" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.048904" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.049784" level="INFO">${flow_id} = 124</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.049462" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.050329" level="INFO">${flow_priority} = 1</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.049977" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.050860" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.050523" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.051611" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.051059" elapsed="0.000599"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.052153" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3042c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.051813" elapsed="0.000383"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:53.045001" elapsed="0.007253"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.052822" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.052414" elapsed="0.000438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.053272" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;124&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;1&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf1&lt;/flow-name&gt;
    &lt;priority&gt;1&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.053006" elapsed="0.000323"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.061050" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:53.060738" elapsed="0.000354"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:53.089386" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=124?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=124?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:53.091010" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=124?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '553'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;124&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:53.091412" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:53.061302" elapsed="0.030184"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.092836" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.091980" elapsed="0.000985"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.098782" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;124&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.093427" elapsed="0.005700"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:53.102301" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:53.099365" elapsed="0.003018"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.099279" elapsed="0.003130"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:53.105989" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:53.106047" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:53.102557" elapsed="0.003530"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:53.108125" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:53.106167" elapsed="0.002033"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.106147" elapsed="0.002079"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:53.108261" elapsed="0.000037"/>
</return>
<msg time="2026-05-25T01:52:53.108522" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:53.108575" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 124 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:53.060425" elapsed="0.048174"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:53.110991" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:53.109273" elapsed="0.001833"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.109254" elapsed="0.001889"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.111773" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.111303" elapsed="0.000498"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.112448" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.111986" elapsed="0.000494"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:53.112541" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:53.112737" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:53.108862" elapsed="0.003902"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:53.112938" elapsed="0.000474"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:53.059830" elapsed="0.053662"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.123475" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:53.122687" elapsed="0.000850"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:53.160844" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:53.164606" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;13000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;503000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;549000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;587000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;113000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;681000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-s... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:53.165021" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:53.123839" elapsed="0.041220"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.165681" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.165316" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.169203" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;13000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;503000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;549000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;587000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;113000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;681000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;149000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;183000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;222000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;776000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;96000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;138000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;182000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;960000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;210000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;221000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;344000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;3000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;368000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;934000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;533000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;728000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;750000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;975000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;700000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;818000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;334000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;301000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.165947" elapsed="0.004765"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:53.173342" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:53.170817" elapsed="0.002593"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.170788" elapsed="0.002653"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:53.200525" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:53.200574" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:53.173641" elapsed="0.026957"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:53.202407" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:53.200679" elapsed="0.001785"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.200658" elapsed="0.001830"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:53.202521" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:52:53.202722" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:53.202766" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 124 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:53.121564" elapsed="0.081225"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:53.204970" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:53.203394" elapsed="0.001622"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.203375" elapsed="0.001663"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.205610" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.205200" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.206166" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.205799" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:53.206242" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:53.206418" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:53.203037" elapsed="0.003406"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:53.206599" elapsed="0.000420"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:53.120913" elapsed="0.086207"/>
</kw>
<arg>f1.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:53.041485" elapsed="0.165715"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:53.034322" elapsed="0.173008"/>
</test>
<test id="s1-s3-s1-t3" name="Test Is Flow 2 Added" line="53">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:53.218326" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f2.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f2.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:53.218480" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:53.218180" elapsed="0.000329"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:53.219122" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35b0b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:53.218660" elapsed="0.000490"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:53.219598" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:53.219306" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:53.220045" level="INFO">${flow_id} = 125</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:53.219776" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:53.220508" level="INFO">${flow_priority} = 2</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:53.220240" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:53.221312" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:53.220683" elapsed="0.000660"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.221847" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.221498" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.222503" level="INFO">${flow_id} = 125</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.222167" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.223039" level="INFO">${flow_priority} = 2</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.222700" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.223562" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.223250" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.224096" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.223765" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.224612" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35b0b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.224292" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:53.217836" elapsed="0.006872"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.225253" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.224856" elapsed="0.000427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.225677" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;125&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;
    &lt;/match&gt;
    &lt;cookie&gt;2&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf2&lt;/flow-name&gt;
    &lt;priority&gt;2&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.225438" elapsed="0.000295"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.233529" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:53.233216" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:53.243402" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=125?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=125?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:53.244017" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=125?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '544'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;125&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:53.244199" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:53.233689" elapsed="0.010548"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.244832" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.244473" elapsed="0.000422"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.248062" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;125&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.245120" elapsed="0.003171"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:53.252446" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:53.248454" elapsed="0.004104"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.248408" elapsed="0.004201"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:53.257132" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:53.257179" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:53.252924" elapsed="0.004278"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:53.258987" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:53.257277" elapsed="0.001767"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.257258" elapsed="0.001824"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:53.259118" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:53.259312" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:53.259356" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 125 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:53.232886" elapsed="0.026492"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:53.261504" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:53.259913" elapsed="0.001636"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.259896" elapsed="0.001674"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.262133" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.261720" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.262671" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.262321" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:53.262747" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:52:53.262938" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:53.259586" elapsed="0.003378"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:53.263136" elapsed="0.000396"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:53.232331" elapsed="0.031266"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.271573" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:53.271275" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:53.292372" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:53.293529" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;13000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;503000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;549000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;587000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;113000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;681000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-s... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:53.294304" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:53.271731" elapsed="0.022635"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.295541" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.294792" elapsed="0.000849"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.299152" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;13000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;503000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;549000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;587000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;113000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;681000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;149000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;183000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;222000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;776000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;96000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;138000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;182000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;960000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;210000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;221000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;344000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;3000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;368000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;934000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;533000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;728000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;750000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;975000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;700000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;818000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;334000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;301000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.295847" elapsed="0.004635"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:53.303196" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:53.300598" elapsed="0.002671"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.300565" elapsed="0.002735"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:53.329714" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:53.329761" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:53.303498" elapsed="0.026287"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:53.331607" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:53.329863" elapsed="0.001800"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.329844" elapsed="0.001842"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:53.331719" elapsed="0.000036"/>
</return>
<msg time="2026-05-25T01:52:53.331929" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:53.331973" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 125 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:53.270880" elapsed="0.061116"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:53.334176" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:53.332595" elapsed="0.001626"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.332577" elapsed="0.001665"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.334800" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.334390" elapsed="0.000555"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.335495" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.335129" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:53.335572" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:53.335749" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:53.332246" elapsed="0.003528"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:53.335932" elapsed="0.000416"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:53.270238" elapsed="0.066172"/>
</kw>
<arg>f2.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:53.214573" elapsed="0.121894"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:53.207643" elapsed="0.128951"/>
</test>
<test id="s1-s3-s1-t4" name="Test Is Flow 3 Added" line="55">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:53.348092" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f3.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f3.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:53.348259" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:53.347933" elapsed="0.000355"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:53.348834" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ecae0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:53.348439" elapsed="0.000424"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:53.349325" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:53.349018" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:53.349774" level="INFO">${flow_id} = 126</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:53.349501" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:53.350232" level="INFO">${flow_priority} = 3</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:53.349948" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:53.351103" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:53.350407" elapsed="0.000730"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.351641" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.351301" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.352217" level="INFO">${flow_id} = 126</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.351873" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.352743" level="INFO">${flow_priority} = 3</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.352412" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.353262" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.352934" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.353774" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.353457" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.354311" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ecae0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.353967" elapsed="0.000386"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:53.347604" elapsed="0.006804"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.354956" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.354557" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.355401" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;126&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:00:01&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;3&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf3&lt;/flow-name&gt;
    &lt;priority&gt;3&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.355155" elapsed="0.000302"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.365660" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:53.365351" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:53.372279" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=126?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=126?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:53.372733" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=126?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '529'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;126&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:53.372837" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:53.365820" elapsed="0.007042"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.373397" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.373024" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.376460" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;126&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.373671" elapsed="0.002867"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:53.379174" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:53.376683" elapsed="0.002562"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.376652" elapsed="0.002624"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:53.383058" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:53.383143" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:53.379474" elapsed="0.003703"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:53.385135" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:53.383282" elapsed="0.001910"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.383255" elapsed="0.001961"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:53.385315" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:52:53.385569" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:53.385615" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 126 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:53.365015" elapsed="0.020623"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:53.387808" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:53.386201" elapsed="0.001653"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.386182" elapsed="0.001695"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.388438" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.388023" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.388974" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.388627" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:53.389051" elapsed="0.000044"/>
</return>
<msg time="2026-05-25T01:52:53.389248" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:53.385849" elapsed="0.003424"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:53.389429" elapsed="0.000392"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:53.364437" elapsed="0.025449"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.397882" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:53.397580" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:53.413504" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:53.413910" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;13000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;503000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;549000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;587000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;113000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;681000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-s... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:53.414220" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:53.398038" elapsed="0.016209"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.414660" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.414403" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.417141" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;13000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;503000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;549000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;587000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;113000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;681000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;149000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;183000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;222000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;776000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;96000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;138000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;182000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;960000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;210000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;221000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;344000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;3000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;368000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;934000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;533000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;728000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;750000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;975000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;700000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;818000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;334000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;301000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.414887" elapsed="0.003231"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:53.419978" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:53.418191" elapsed="0.001835"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.418171" elapsed="0.001877"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:53.448212" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:53.448259" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:53.420201" elapsed="0.028081"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:53.450096" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:53.448360" elapsed="0.001793"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.448341" elapsed="0.001837"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:53.450211" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:53.450406" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:53.450449" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 126 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:53.397204" elapsed="0.053267"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:53.452639" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:53.451033" elapsed="0.001651"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.451014" elapsed="0.001691"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.453272" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.452851" elapsed="0.000448"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.453819" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.453468" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:53.453895" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:53.454102" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:53.450687" elapsed="0.003442"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:53.454296" elapsed="0.000391"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:53.396567" elapsed="0.058184"/>
</kw>
<arg>f3.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:53.344356" elapsed="0.110465"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:53.337094" elapsed="0.117848"/>
</test>
<test id="s1-s3-s1-t5" name="Test Is Flow 4 Added" line="57">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:53.466440" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f4.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f4.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:53.466590" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:53.466299" elapsed="0.000321"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:53.467231" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc090270&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:53.466771" elapsed="0.000489"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:53.467700" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:53.467414" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:53.468163" level="INFO">${flow_id} = 127</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:53.467877" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:53.468605" level="INFO">${flow_priority} = 4</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:53.468338" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:53.469446" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:53.468779" elapsed="0.000698"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.469962" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.469632" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.470541" level="INFO">${flow_id} = 127</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.470214" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.471120" level="INFO">${flow_priority} = 4</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.470736" elapsed="0.000427"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.471688" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.471317" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.472235" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.471890" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.472763" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc090270&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.472436" elapsed="0.000368"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:53.465949" elapsed="0.006910"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.473406" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.473009" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.473825" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;127&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;4&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf4&lt;/flow-name&gt;
    &lt;priority&gt;4&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.473588" elapsed="0.000296"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.481692" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:53.481393" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:53.488869" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=127?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=127?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:53.489402" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=127?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '660'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;127&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:53.489509" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:53.481850" elapsed="0.007685"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.489963" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.489700" elapsed="0.000310"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.492534" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;127&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.490175" elapsed="0.002501"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:53.495272" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:53.492783" elapsed="0.002563"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.492752" elapsed="0.002626"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:53.499380" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:53.499444" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:53.495573" elapsed="0.003904"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:53.502108" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:53.499583" elapsed="0.002605"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.499553" elapsed="0.002669"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:53.502271" elapsed="0.000044"/>
</return>
<msg time="2026-05-25T01:52:53.502564" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:53.502627" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 127 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:53.481063" elapsed="0.021596"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:53.505203" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:53.503526" elapsed="0.001725"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.503501" elapsed="0.001772"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.505845" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.505425" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.506407" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.506036" elapsed="0.000398"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:53.506485" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:53.506663" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:53.503021" elapsed="0.003668"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:53.506879" elapsed="0.000427"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:53.480511" elapsed="0.026863"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.515425" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:53.515107" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:53.535004" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:53.535968" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;13000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;503000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;549000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;587000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;113000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;681000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-s... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:53.536656" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:53.515589" elapsed="0.021127"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.537673" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.537100" elapsed="0.000673"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.543305" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;13000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;503000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;549000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;587000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;113000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;681000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;149000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;183000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;222000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;776000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;96000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;138000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;182000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;960000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;210000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;221000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;344000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;3000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;368000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;934000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;533000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;728000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;750000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;975000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;700000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;818000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;334000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;301000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.538124" elapsed="0.006416"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:53.546359" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:53.544614" elapsed="0.001794"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.544593" elapsed="0.001837"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:53.571905" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:53.571952" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:53.546570" elapsed="0.025405"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:53.573798" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:53.572054" elapsed="0.001800"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.572035" elapsed="0.001843"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:53.573911" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:52:53.574125" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:53.574170" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 127 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:53.514680" elapsed="0.059512"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:53.576423" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:53.574742" elapsed="0.001726"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.574724" elapsed="0.001766"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.577105" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.576638" elapsed="0.000496"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.577696" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.577298" elapsed="0.000424"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:53.577811" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:52:53.577998" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:53.574410" elapsed="0.003613"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:53.578196" elapsed="0.000393"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:53.514043" elapsed="0.064610"/>
</kw>
<arg>f4.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:53.462652" elapsed="0.116058"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:53.455328" elapsed="0.123536"/>
</test>
<test id="s1-s3-s1-t6" name="Test Is Flow 5 Added" line="59">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:53.590727" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f5.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f5.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:53.591208" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:53.590585" elapsed="0.000662"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:53.591891" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7c1d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:53.591437" elapsed="0.000482"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:53.592374" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:53.592088" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:53.592818" level="INFO">${flow_id} = 128</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:53.592550" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:53.593277" level="INFO">${flow_priority} = 5</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:53.592993" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:53.594150" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:53.593452" elapsed="0.000729"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.594677" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.594338" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.595302" level="INFO">${flow_id} = 128</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.594955" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.595824" level="INFO">${flow_priority} = 5</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.595498" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.596348" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.596017" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.596864" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.596546" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.597394" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7c1d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.597060" elapsed="0.000375"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:53.590254" elapsed="0.007236"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.598021" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.597639" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.598466" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;128&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;5&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;5&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.598227" elapsed="0.000299"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.606372" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:53.606051" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:53.613725" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=128?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=128?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:53.614330" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=128?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '746'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:53.614441" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:53.606529" elapsed="0.007938"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.614944" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.614638" elapsed="0.000354"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.617835" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.615153" elapsed="0.002811"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:53.620729" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:53.618102" elapsed="0.002696"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.618048" elapsed="0.002783"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:53.625028" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:53.625120" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:53.621028" elapsed="0.004132"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:53.627740" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:53.625266" elapsed="0.002531"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.625239" elapsed="0.002582"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:53.627855" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:53.628051" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:53.628113" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 128 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:53.605736" elapsed="0.022402"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:53.630337" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:53.628696" elapsed="0.001688"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.628678" elapsed="0.001729"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.630987" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.630553" elapsed="0.000461"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.631564" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.631195" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:53.631641" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:53.631820" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:53.628366" elapsed="0.003480"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:53.632001" elapsed="0.000422"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:53.605175" elapsed="0.027314"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.640699" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:53.640390" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:53.661323" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:53.662303" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;13000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;503000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;549000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;587000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;113000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;681000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-s... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:53.663009" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:53.640858" elapsed="0.022243"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.664101" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.663468" elapsed="0.000742"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.669093" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;13000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;503000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;549000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;587000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;113000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;681000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;149000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;183000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;222000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;776000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;96000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;138000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;182000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;960000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;210000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;221000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;344000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;3000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;368000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;934000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;533000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;728000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;750000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;975000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;700000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;818000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;334000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;301000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.664540" elapsed="0.006071"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:53.673569" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:53.670722" elapsed="0.002916"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.670692" elapsed="0.002977"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:53.700280" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:53.700347" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:53.673863" elapsed="0.026510"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:53.702401" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:53.700505" elapsed="0.001956"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.700472" elapsed="0.002016"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:53.702527" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:52:53.702776" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:53.702824" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 128 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:53.639943" elapsed="0.062905"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:53.705060" elapsed="0.000029"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:53.703488" elapsed="0.001632"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.703470" elapsed="0.001672"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.705768" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.705296" elapsed="0.000499"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.706324" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.705957" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:53.706400" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:53.706576" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:53.703120" elapsed="0.003482"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:53.706802" elapsed="0.000434"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:53.639288" elapsed="0.068015"/>
</kw>
<arg>f5.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:53.586907" elapsed="0.120471"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:53.579459" elapsed="0.128073"/>
</test>
<test id="s1-s3-s1-t7" name="Test Is Flow 6 Added" line="61">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:53.720528" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f6.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f6.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:53.720717" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:53.720352" elapsed="0.000395"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:53.721458" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe68270&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:53.720932" elapsed="0.000556"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:53.721936" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:53.721647" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:53.722435" level="INFO">${flow_id} = 129</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:53.722134" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:53.722942" level="INFO">${flow_priority} = 6</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:53.722628" elapsed="0.000341"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:53.723921" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:53.723139" elapsed="0.000814"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.724488" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.724142" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.725115" level="INFO">${flow_id} = 129</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.724756" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.725655" level="INFO">${flow_priority} = 6</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.725317" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.726194" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.725851" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.726720" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.726397" elapsed="0.000419"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.727322" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe68270&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.726971" elapsed="0.000393"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:53.719983" elapsed="0.007438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.727986" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.727574" elapsed="0.000443"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.728432" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;129&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;6&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;6&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.728186" elapsed="0.000305"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.738368" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:53.738040" elapsed="0.000355"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:53.745994" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=129?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=129?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:53.746596" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=129?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '715'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:53.746803" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:53.738527" elapsed="0.008319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.747475" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.747101" elapsed="0.000440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.750667" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.747749" elapsed="0.003089"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:53.753547" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:53.750952" elapsed="0.002672"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.750919" elapsed="0.002749"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:53.757273" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:53.757319" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:53.753885" elapsed="0.003457"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:53.759097" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:53.757415" elapsed="0.001738"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.757397" elapsed="0.001780"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:53.759210" elapsed="0.000033"/>
</return>
<msg time="2026-05-25T01:52:53.759407" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:53.759450" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 129 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:53.737720" elapsed="0.021752"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:53.761596" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:53.760014" elapsed="0.001628"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.759997" elapsed="0.001667"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.762226" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.761811" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.762785" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.762417" elapsed="0.000401"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:53.762870" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:53.763049" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:53.759687" elapsed="0.003403"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:53.763248" elapsed="0.000437"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:53.737128" elapsed="0.026696"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.773736" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:53.773432" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:53.795797" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:53.796770" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;13000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;503000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;549000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;587000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;113000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;681000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-s... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:53.797441" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:53.773905" elapsed="0.023595"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.798466" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.797858" elapsed="0.000708"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.804063" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;13000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;503000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;549000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;587000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;113000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;681000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;149000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;183000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;222000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;776000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;96000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;138000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;182000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;960000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;210000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;221000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;344000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;3000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;368000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;934000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;533000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;728000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;750000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;975000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;700000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;818000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;334000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;301000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.798944" elapsed="0.007276"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:53.808939" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:53.806385" elapsed="0.002602"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.806339" elapsed="0.002671"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:53.832113" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:53.832161" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:53.809162" elapsed="0.023022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:53.833940" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:53.832262" elapsed="0.001734"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.832243" elapsed="0.001776"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:53.834051" elapsed="0.000044"/>
</return>
<msg time="2026-05-25T01:52:53.834262" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:53.834305" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 129 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:53.773029" elapsed="0.061299"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:53.836550" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:53.834887" elapsed="0.001708"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.834869" elapsed="0.001747"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.837183" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.836764" elapsed="0.000453"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.837729" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.837380" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:53.837804" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:53.837981" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:53.834543" elapsed="0.003462"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:53.838177" elapsed="0.000388"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:53.772365" elapsed="0.066263"/>
</kw>
<arg>f6.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:53.716475" elapsed="0.122208"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:53.708124" elapsed="0.130695"/>
</test>
<test id="s1-s3-s1-t8" name="Test Is Flow 7 Added" line="63">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:53.850146" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f7.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f7.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:53.850311" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:53.849976" elapsed="0.000364"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:53.851310" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7c6d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:53.850500" elapsed="0.000843"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:53.851813" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:53.851516" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:53.852281" level="INFO">${flow_id} = 130</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:53.851992" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:53.852730" level="INFO">${flow_priority} = 7</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:53.852459" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:53.853673" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:53.852909" elapsed="0.000795"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.854225" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.853870" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.854857" level="INFO">${flow_id} = 130</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.854495" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.855403" level="INFO">${flow_priority} = 7</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.855058" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.855913" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.855599" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.856447" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.856126" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.856969" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7c6d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:53.856645" elapsed="0.000366"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:53.849639" elapsed="0.007444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.857637" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.857239" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.858080" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;130&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;15&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;7&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf7&lt;/flow-name&gt;
    &lt;priority&gt;7&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.857825" elapsed="0.000319"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.865993" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:53.865685" elapsed="0.000335"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:53.873695" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=130?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=130?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:53.874357" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=130?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '835'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:53.874467" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:53.866168" elapsed="0.008324"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.874943" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.874656" elapsed="0.000331"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.877801" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.875183" elapsed="0.002702"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:53.880454" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:53.877991" elapsed="0.002533"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.877960" elapsed="0.002597"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:53.884820" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:53.884884" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:53.880752" elapsed="0.004164"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:53.887450" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:53.885020" elapsed="0.002508"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.884993" elapsed="0.002569"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:53.887607" elapsed="0.000044"/>
</return>
<msg time="2026-05-25T01:52:53.887882" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:53.887946" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 130 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:53.865366" elapsed="0.022611"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:53.892263" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:53.888651" elapsed="0.003658"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.888634" elapsed="0.003697"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.892880" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.892480" elapsed="0.000427"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.893440" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:53.893084" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:53.893515" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:52:53.893691" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:53.888313" elapsed="0.005402"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:53.893869" elapsed="0.000407"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:53.864778" elapsed="0.029561"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.902083" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:53.901771" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:53.919639" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:53.920639" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;13000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;503000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;549000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;587000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;113000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;681000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-s... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:53.921390" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:53.902242" elapsed="0.019210"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.922528" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.921866" elapsed="0.000764"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:53.927962" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;13000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;503000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;549000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;587000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;113000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;681000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;149000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;183000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;222000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;776000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;96000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;138000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;182000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;960000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;210000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;221000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;344000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;3000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;368000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;934000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;533000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;728000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;750000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;975000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;700000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;818000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;334000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;301000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:53.922976" elapsed="0.006451"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:53.932021" elapsed="0.000034"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:53.929542" elapsed="0.002599"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.929509" elapsed="0.002666"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:53.995166" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:53.995242" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:53.932381" elapsed="0.062891"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:53.997246" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:53.995409" elapsed="0.001899"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.995374" elapsed="0.001960"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:53.997371" elapsed="0.000044"/>
</return>
<msg time="2026-05-25T01:52:53.997596" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:53.997641" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 130 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:53.901391" elapsed="0.096273"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:53.999946" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:53.998287" elapsed="0.001706"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:53.998269" elapsed="0.001746"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.000648" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.000185" elapsed="0.000491"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.001208" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.000840" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:54.001285" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:54.001463" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:53.997906" elapsed="0.003582"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:54.001647" elapsed="0.000404"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:53.900761" elapsed="0.101371"/>
</kw>
<arg>f7.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:53.846325" elapsed="0.155866"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:53.839227" elapsed="0.163087"/>
</test>
<test id="s1-s3-s1-t9" name="Test Is Flow 8 Added" line="65">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:54.013831" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f8.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f8.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:54.013994" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:54.013681" elapsed="0.000342"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:54.014630" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ed260&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:54.014190" elapsed="0.000470"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:54.015124" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:54.014825" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:54.015573" level="INFO">${flow_id} = 131</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:54.015302" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:54.016021" level="INFO">${flow_priority} = 8</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:54.015753" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:54.017114" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:54.016214" elapsed="0.000932"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.017641" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.017306" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.018240" level="INFO">${flow_id} = 131</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.017898" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.018794" level="INFO">${flow_priority} = 8</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.018437" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.019324" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.018990" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.019844" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.019522" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.020388" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ed260&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.020042" elapsed="0.000389"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:54.013352" elapsed="0.007134"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.021018" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.020636" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.021460" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;131&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:00&lt;/address&gt;
                &lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;8&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf8&lt;/flow-name&gt;
    &lt;priority&gt;8&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.021218" elapsed="0.000307"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.029347" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:54.029024" elapsed="0.000350"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:54.037003" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=131?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=131?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:54.037715" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=131?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '954'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:54.037828" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:54.029505" elapsed="0.008349"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.038320" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.038046" elapsed="0.000320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.040743" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.038512" elapsed="0.002324"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.043559" elapsed="0.000030"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.040937" elapsed="0.002711"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.040908" elapsed="0.002779"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:54.049244" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:54.049356" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:54.043899" elapsed="0.005525"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:54.052669" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:54.049596" elapsed="0.003130"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.049553" elapsed="0.003199"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:54.052789" elapsed="0.000032"/>
</return>
<msg time="2026-05-25T01:52:54.052988" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:54.053031" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 131 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:54.028706" elapsed="0.024349"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.055424" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.053696" elapsed="0.001774"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.053672" elapsed="0.001820"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.056097" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.055641" elapsed="0.000493"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.056708" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.056328" elapsed="0.000406"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:54.056786" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:54.056963" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:54.053290" elapsed="0.003700"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:54.057166" elapsed="0.000475"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:54.028148" elapsed="0.029566"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.066118" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:54.065788" elapsed="0.000358"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:54.085868" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:54.086967" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;13000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;503000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;549000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;587000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;113000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;681000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-s... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:54.087679" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:54.066280" elapsed="0.021462"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.088797" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.088157" elapsed="0.000781"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.093543" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;13000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;503000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;549000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;587000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;113000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;681000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;149000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;183000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;222000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;776000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;96000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;138000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;182000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;960000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;210000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;221000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;344000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;3000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;368000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;934000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;533000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;728000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;750000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;975000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;700000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;818000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;334000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;301000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.089396" elapsed="0.005528"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.097534" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.095032" elapsed="0.002572"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.095002" elapsed="0.002636"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:54.127010" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:54.127096" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:54.097848" elapsed="0.029275"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:54.129132" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:54.127256" elapsed="0.001939"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.127219" elapsed="0.002003"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:54.129261" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:52:54.129483" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:54.129528" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 131 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:54.065311" elapsed="0.064240"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.131820" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.130182" elapsed="0.001685"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.130164" elapsed="0.001726"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.132553" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.132081" elapsed="0.000500"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.133118" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.132748" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:54.133196" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:54.133377" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:54.129801" elapsed="0.003601"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:54.133560" elapsed="0.000410"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:54.064644" elapsed="0.069391"/>
</kw>
<arg>f8.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:54.010119" elapsed="0.123991"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:54.002857" elapsed="0.131388"/>
</test>
<test id="s1-s3-s1-t10" name="Test Is Flow 9 Added" line="67">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:54.145985" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f9.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f9.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:54.146177" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:54.145832" elapsed="0.000375"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:54.146836" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38b380&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:54.146361" elapsed="0.000504"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:54.147334" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:54.147024" elapsed="0.000336"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:54.147799" level="INFO">${flow_id} = 132</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:54.147516" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:54.148276" level="INFO">${flow_priority} = 9</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:54.147980" elapsed="0.000323"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:54.149406" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:54.148457" elapsed="0.000980"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.149949" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.149601" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.150550" level="INFO">${flow_id} = 132</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.150219" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.151133" level="INFO">${flow_priority} = 9</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.150783" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.151652" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.151332" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.152214" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.151859" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.152742" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38b380&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.152417" elapsed="0.000367"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:54.145479" elapsed="0.007363"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.153397" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.152992" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.153830" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;132&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;9&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf9&lt;/flow-name&gt;
    &lt;priority&gt;9&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.153587" elapsed="0.000306"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.161628" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:54.161315" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:54.168118" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=132?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=132?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:54.168824" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=132?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '926'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:54.168935" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:54.161791" elapsed="0.007169"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.169450" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.169190" elapsed="0.000313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.171737" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.169652" elapsed="0.002185"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.174494" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.171938" elapsed="0.002627"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.171910" elapsed="0.002687"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:54.179117" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:54.179185" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:54.174820" elapsed="0.004398"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:54.181986" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:54.179325" elapsed="0.002761"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.179298" elapsed="0.002829"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:54.182191" elapsed="0.000055"/>
</return>
<msg time="2026-05-25T01:52:54.182494" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:54.182556" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 132 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:54.160979" elapsed="0.021609"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.185111" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.183413" elapsed="0.001745"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.183388" elapsed="0.001792"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.185732" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.185326" elapsed="0.000432"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.186295" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.185921" elapsed="0.000401"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:54.186373" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:54.186551" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:54.182924" elapsed="0.003653"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:54.186803" elapsed="0.000426"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:54.160413" elapsed="0.026882"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.194981" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:54.194656" elapsed="0.000352"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:54.214098" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:54.215054" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;13000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;503000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;549000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;587000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;113000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;681000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-s... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:54.215748" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:54.195152" elapsed="0.020656"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.216816" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.216212" elapsed="0.000706"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.222408" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;13000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;503000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;549000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;587000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;113000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;681000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;149000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;183000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;222000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;776000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;96000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;138000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;182000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;960000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;210000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;221000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;344000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;3000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;368000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;934000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;533000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;728000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;750000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;975000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;700000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;818000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;334000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;301000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.217271" elapsed="0.007268"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.228200" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.224703" elapsed="0.003546"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.224658" elapsed="0.003614"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:54.252869" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:54.252917" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:54.228415" elapsed="0.024525"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:54.254808" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:54.253021" elapsed="0.001843"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.253000" elapsed="0.001889"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:54.254922" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:52:54.255141" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:54.255186" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 132 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:54.194278" elapsed="0.060930"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.257362" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.255771" elapsed="0.001636"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.255752" elapsed="0.001677"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.257992" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.257577" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.258553" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.258200" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:54.258628" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:54.258844" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:54.255432" elapsed="0.003437"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:54.259027" elapsed="0.000410"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:54.193652" elapsed="0.065848"/>
</kw>
<arg>f9.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:54.142177" elapsed="0.117381"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:54.134755" elapsed="0.124925"/>
</test>
<test id="s1-s3-s1-t11" name="Test Is Flow 10 Added" line="69">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:54.270854" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f10.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f10.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:54.271018" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:54.270702" elapsed="0.000346"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:54.271665" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4f4db0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:54.271228" elapsed="0.000466"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:54.272154" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:54.271847" elapsed="0.000333"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:54.272602" level="INFO">${flow_id} = 133</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:54.272331" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:54.273047" level="INFO">${flow_priority} = 10</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:54.272776" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:54.274143" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:54.273240" elapsed="0.000935"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.274697" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.274334" elapsed="0.000424"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.275342" level="INFO">${flow_id} = 133</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.274983" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.275865" level="INFO">${flow_priority} = 10</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.275538" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.276391" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.276057" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.276904" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.276587" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.277436" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4f4db0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.277115" elapsed="0.000362"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:54.270345" elapsed="0.007187"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.278061" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.277681" elapsed="0.000425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.278500" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;133&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;10&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf10&lt;/flow-name&gt;
    &lt;priority&gt;10&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.278257" elapsed="0.000307"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.286357" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:54.286037" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:54.294308" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=133?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=133?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:54.294995" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=133?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '930'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:54.295129" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:54.286514" elapsed="0.008642"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.295610" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.295353" elapsed="0.000303"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.297779" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.295801" elapsed="0.002040"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.299748" elapsed="0.000028"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.297913" elapsed="0.001917"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.297892" elapsed="0.001969"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:54.304230" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:54.304295" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:54.300058" elapsed="0.004269"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:54.307006" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:54.304431" elapsed="0.002673"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.304405" elapsed="0.002733"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:54.307185" elapsed="0.000041"/>
</return>
<msg time="2026-05-25T01:52:54.307456" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:54.307517" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 133 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:54.285723" elapsed="0.021825"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.310532" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.308322" elapsed="0.002272"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.308298" elapsed="0.002327"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.311434" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.310859" elapsed="0.000613"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.312087" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.311711" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:54.312165" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:54.312343" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:54.307840" elapsed="0.004527"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:54.312524" elapsed="0.000388"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:54.285169" elapsed="0.027806"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.320675" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:54.320378" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:54.337718" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:54.338722" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;13000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;503000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;549000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;587000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;113000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;681000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-s... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:54.339394" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:54.320831" elapsed="0.018622"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.340449" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.339829" elapsed="0.000722"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.345127" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;13000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;503000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;549000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;587000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;113000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;681000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;149000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;183000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;222000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;776000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;96000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;138000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;182000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;960000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;210000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;221000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;344000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;3000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;368000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;934000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;533000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;728000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;750000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;975000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;700000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;818000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;334000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;301000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.340874" elapsed="0.005579"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.349028" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.346556" elapsed="0.002559"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.346528" elapsed="0.002619"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:54.376470" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:54.376520" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:54.349342" elapsed="0.027201"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:54.378392" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:54.376631" elapsed="0.001817"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.376608" elapsed="0.001865"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:54.378507" elapsed="0.000034"/>
</return>
<msg time="2026-05-25T01:52:54.378738" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:54.378783" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 133 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:54.319989" elapsed="0.058817"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.380981" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.379413" elapsed="0.001613"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.379394" elapsed="0.001654"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.381640" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.381214" elapsed="0.000453"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.382195" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.381828" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:54.382271" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:54.382448" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:54.379045" elapsed="0.003427"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:54.382630" elapsed="0.000448"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:54.319382" elapsed="0.063762"/>
</kw>
<arg>f10.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:54.267098" elapsed="0.116103"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:54.260016" elapsed="0.123309"/>
</test>
<test id="s1-s3-s1-t12" name="Test Is Flow 11 Added" line="71">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:54.394833" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f11.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f11.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:54.394990" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:54.394624" elapsed="0.000394"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:54.395618" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4daf20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:54.395186" elapsed="0.000459"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:54.396094" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:54.395797" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:54.396569" level="INFO">${flow_id} = 134</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:54.396284" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:54.397016" level="INFO">${flow_priority} = 11</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:54.396747" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:54.398124" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:54.397219" elapsed="0.000937"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.398647" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.398313" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.399248" level="INFO">${flow_id} = 134</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.398904" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.399771" level="INFO">${flow_priority} = 11</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.399442" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.400295" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.399962" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.400810" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.400491" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.401345" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4daf20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.401005" elapsed="0.000381"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:54.394294" elapsed="0.007148"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.401970" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.401590" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.402405" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;134&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;1&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;27&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv4-match&gt;
            &lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;
            &lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;
        &lt;/icmpv4-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;11&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf11&lt;/flow-name&gt;
    &lt;priority&gt;11&lt;/priority&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.402165" elapsed="0.000304"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.410120" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:54.409800" elapsed="0.000347"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:54.418870" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=134?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=134?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:54.419557" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=134?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '900'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:54.419700" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:54.410277" elapsed="0.009460"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.420417" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.420016" elapsed="0.000468"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.423660" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.420698" elapsed="0.003052"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.426513" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.423855" elapsed="0.002730"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.423824" elapsed="0.002794"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:54.430088" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:54.430136" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:54.426875" elapsed="0.003284"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:54.432081" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:54.430235" elapsed="0.001903"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.430215" elapsed="0.001946"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:54.432194" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:54.432387" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:54.432431" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 134 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:54.409480" elapsed="0.022974"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.434568" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.432991" elapsed="0.001622"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.432973" elapsed="0.001662"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.435229" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.434795" elapsed="0.000461"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.435775" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.435421" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:54.435851" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:54.436029" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:54.432661" elapsed="0.003393"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:54.436227" elapsed="0.000383"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:54.408913" elapsed="0.027760"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.444420" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:54.444121" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:54.466363" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:54.467353" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;13000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;503000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;549000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;587000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;113000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;681000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-s... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:54.467981" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:54.444576" elapsed="0.023463"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.468989" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.468427" elapsed="0.000694"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.473440" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;467000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;13000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;503000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;549000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;587000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;113000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;681000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;149000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;183000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;222000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;776000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;96000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;138000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;926000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;182000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;960000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;210000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;221000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;344000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;3000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;380000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;368000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;934000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;453000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;652000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;533000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;728000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;654000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;750000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;975000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;700000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;818000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;334000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;301000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.469440" elapsed="0.005334"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.477351" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.474875" elapsed="0.002544"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.474847" elapsed="0.002604"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:54.502710" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:54.502758" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:54.477645" elapsed="0.025137"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:54.504587" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:54.502861" elapsed="0.001782"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.502842" elapsed="0.001826"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:54.504701" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:54.504898" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:54.504942" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 134 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:54.443725" elapsed="0.061241"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.507192" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.505532" elapsed="0.001706"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.505514" elapsed="0.001746"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.507813" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.507407" elapsed="0.000433"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.508375" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.508004" elapsed="0.000398"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:54.508452" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:54.508632" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:54.505198" elapsed="0.003459"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:54.508816" elapsed="0.000404"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:54.443111" elapsed="0.066172"/>
</kw>
<arg>f11.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:54.391091" elapsed="0.118250"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:54.383879" elapsed="0.125581"/>
</test>
<test id="s1-s3-s1-t13" name="Test Is Flow 14 Added" line="73">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:54.520906" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f14.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f14.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:54.521045" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:54.520768" elapsed="0.000321"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:54.521671" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc358ef0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:54.521245" elapsed="0.000455"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:54.522159" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:54.521858" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:54.522609" level="INFO">${flow_id} = 137</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:54.522339" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:54.523092" level="INFO">${flow_priority} = 14</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:54.522807" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:54.524151" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:54.523270" elapsed="0.000912"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.524675" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.524341" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.525256" level="INFO">${flow_id} = 137</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.524914" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.525776" level="INFO">${flow_priority} = 14</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.525454" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.526314" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.525969" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.526890" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.526533" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.527429" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc358ef0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.527106" elapsed="0.000364"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:54.520438" elapsed="0.007088"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.528055" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.527675" elapsed="0.000425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.528492" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;137&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x806&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;arp-op&gt;1&lt;/arp-op&gt;
        &lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;
        &lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;
        &lt;arp-source-hardware-address&gt;
            &lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;
        &lt;/arp-source-hardware-address&gt;
        &lt;arp-target-hardware-address&gt;
            &lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;
        &lt;/arp-target-hardware-address&gt;
    &lt;/match&gt;
    &lt;cookie&gt;14&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf14&lt;/flow-name&gt;
    &lt;priority&gt;14&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.528253" elapsed="0.000305"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.536177" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:54.535859" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:54.543408" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=137?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=137?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:54.544183" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=137?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '1092'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:54.544324" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:54.536333" elapsed="0.008018"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.544770" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.544512" elapsed="0.000304"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.547002" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.544960" elapsed="0.002121"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.549367" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.547156" elapsed="0.002279"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.547134" elapsed="0.002332"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:54.553703" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:54.553767" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:54.549664" elapsed="0.004135"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:54.556461" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:54.553901" elapsed="0.002636"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.553875" elapsed="0.002695"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:54.556632" elapsed="0.000052"/>
</return>
<msg time="2026-05-25T01:52:54.556920" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:54.556980" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 137 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:54.535547" elapsed="0.021464"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.559906" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.557787" elapsed="0.002164"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.557763" elapsed="0.002209"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.560528" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.560131" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.561064" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.560715" elapsed="0.000389"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:54.561156" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:54.561334" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:54.557327" elapsed="0.004032"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:54.561515" elapsed="0.000389"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:54.534982" elapsed="0.026986"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.569685" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:54.569382" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:54.581435" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:54.585736" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:54.586389" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:54.569841" elapsed="0.016606"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.587494" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.586846" elapsed="0.000750"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.592411" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;238000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;857000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;311000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;999000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;865000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;979000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;15000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;271000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;502000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;457000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;504000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;23000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;817000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;789000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;872000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;968000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.588100" elapsed="0.005374"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.595303" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.593548" elapsed="0.001803"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.593528" elapsed="0.001845"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:54.623215" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:54.623263" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:54.595511" elapsed="0.027776"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:54.625059" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:54.623365" elapsed="0.001765"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.623345" elapsed="0.001809"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:54.625187" elapsed="0.000051"/>
</return>
<msg time="2026-05-25T01:52:54.625406" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:54.625450" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 137 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:54.568975" elapsed="0.056497"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.627682" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.626019" elapsed="0.001708"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.626001" elapsed="0.001748"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.628315" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.627896" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.628871" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.628506" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:54.628948" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:54.629143" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:54.625687" elapsed="0.003481"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:54.629326" elapsed="0.000399"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:54.568366" elapsed="0.061423"/>
</kw>
<arg>f14.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:54.517168" elapsed="0.112678"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:54.509843" elapsed="0.120119"/>
</test>
<test id="s1-s3-s1-t14" name="Test Is Flow 15 Added" line="75">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:54.641379" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f15.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f15.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:54.641515" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:54.641241" elapsed="0.000303"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:54.642117" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6b290&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:54.641695" elapsed="0.000450"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:54.642576" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:54.642298" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:54.643129" level="INFO">${flow_id} = 138</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:54.642844" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:54.643573" level="INFO">${flow_priority} = 15</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:54.643305" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:54.644576" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:54.643748" elapsed="0.000859"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.645116" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.644766" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.645678" level="INFO">${flow_id} = 138</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.645352" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.646217" level="INFO">${flow_priority} = 15</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.645874" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.646792" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.646412" elapsed="0.000430"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.647344" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.646998" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.647894" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6b290&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.647564" elapsed="0.000371"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:54.640876" elapsed="0.007115"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.648545" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.648164" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.648967" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;138&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;15&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf15&lt;/flow-name&gt;
    &lt;priority&gt;15&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.648728" elapsed="0.000298"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.656621" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:54.656323" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:54.663630" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=138?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=138?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:54.664210" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=138?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '739'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:54.664318" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:54.656777" elapsed="0.007566"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.664753" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.664501" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.666935" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.664940" elapsed="0.002089"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.669380" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.667121" elapsed="0.002329"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.667099" elapsed="0.002382"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:54.673523" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:54.673587" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:54.669676" elapsed="0.003943"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:54.676135" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:54.673722" elapsed="0.002470"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.673696" elapsed="0.002519"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:54.676249" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:54.676442" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:54.676485" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 138 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:54.655996" elapsed="0.020512"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.678686" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.677045" elapsed="0.001688"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.677027" elapsed="0.001727"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.679314" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.678900" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.679850" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.679502" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:54.679926" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:54.680119" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:54.676715" elapsed="0.003430"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:54.680300" elapsed="0.000380"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:54.655449" elapsed="0.025295"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.688487" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:54.688185" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:54.706684" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:54.707787" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:54.708505" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:54.688645" elapsed="0.019944"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.709682" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.709102" elapsed="0.000681"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.715677" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;238000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;857000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;311000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;999000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;865000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;979000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;15000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;271000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;502000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;457000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;504000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;23000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;817000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;789000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;872000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;968000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.710137" elapsed="0.006742"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.718759" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.716954" elapsed="0.001855"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.716934" elapsed="0.001897"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:54.747756" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:54.747805" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:54.718971" elapsed="0.028857"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:54.749666" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:54.747907" elapsed="0.001816"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.747888" elapsed="0.001859"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:54.749781" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:54.749978" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:54.750022" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 138 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:54.687760" elapsed="0.062284"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.752297" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.750707" elapsed="0.001636"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.750689" elapsed="0.001676"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.752929" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.752517" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.753509" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.753147" elapsed="0.000387"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:54.753585" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:54.753767" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:54.750316" elapsed="0.003476"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:54.753949" elapsed="0.000408"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:54.687151" elapsed="0.067269"/>
</kw>
<arg>f15.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:54.637598" elapsed="0.116879"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:54.630340" elapsed="0.124257"/>
</test>
<test id="s1-s3-s1-t15" name="Test Is Flow 16 Added" line="77">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:54.766082" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f16.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f16.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:54.766243" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:54.765929" elapsed="0.000344"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:54.766852" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7c310&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:54.766425" elapsed="0.000455"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:54.767337" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:54.767033" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:54.767781" level="INFO">${flow_id} = 139</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:54.767513" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:54.768238" level="INFO">${flow_priority} = 16</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:54.767955" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:54.769141" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:54.768413" elapsed="0.000759"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.769663" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.769329" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.770387" level="INFO">${flow_id} = 139</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.769898" elapsed="0.000532"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.770948" level="INFO">${flow_priority} = 16</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.770600" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.771491" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.771172" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.772015" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.771691" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.772555" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7c310&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.772231" elapsed="0.000366"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:54.765601" elapsed="0.007052"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.773204" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.772804" elapsed="0.000431"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.773627" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    &lt;priority&gt;16&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.773386" elapsed="0.000302"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.781433" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:54.781126" elapsed="0.000334"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:54.789871" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:54.790465" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '734'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:54.790574" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:54.781592" elapsed="0.009007"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.791049" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.790794" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.793224" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.791258" elapsed="0.002058"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.795193" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.793405" elapsed="0.001838"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.793381" elapsed="0.001884"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:54.799416" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:54.799481" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:54.795404" elapsed="0.004110"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:54.801988" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:54.799618" elapsed="0.002448"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.799592" elapsed="0.002526"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:54.802165" elapsed="0.000041"/>
</return>
<msg time="2026-05-25T01:52:54.802438" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:54.802498" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 139 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:54.780794" elapsed="0.021735"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.805245" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.803345" elapsed="0.001945"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.803320" elapsed="0.001992"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.805855" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.805459" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.806410" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.806045" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:54.806486" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:54.806684" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:54.802863" elapsed="0.003847"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:54.806866" elapsed="0.000402"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:54.780224" elapsed="0.027108"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.815089" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:54.814777" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:54.829849" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:54.830854" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:54.831559" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:54.815248" elapsed="0.016371"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.832576" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.831973" elapsed="0.000704"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.838093" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;238000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;857000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;311000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;999000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;865000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;979000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;15000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;271000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;502000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;457000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;504000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;23000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;817000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;789000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;872000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;968000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.832997" elapsed="0.007505"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.844221" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.840673" elapsed="0.003596"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.840627" elapsed="0.003664"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:54.872120" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:54.872168" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:54.844429" elapsed="0.027762"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:54.874092" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:54.872272" elapsed="0.001878"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.872252" elapsed="0.001921"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:54.874207" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:54.874400" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:54.874443" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 139 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:54.814376" elapsed="0.060101"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.876717" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.875051" elapsed="0.001744"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.875033" elapsed="0.001788"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.877404" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.876970" elapsed="0.000462"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.877982" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.877596" elapsed="0.000412"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:54.878059" elapsed="0.000044"/>
</return>
<msg time="2026-05-25T01:52:54.878254" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:54.874718" elapsed="0.003561"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:54.878435" elapsed="0.000415"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:54.813751" elapsed="0.065162"/>
</kw>
<arg>f16.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:54.762306" elapsed="0.116664"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:54.755058" elapsed="0.124048"/>
</test>
<test id="s1-s3-s1-t16" name="Test Is Flow 17 Added" line="79">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:54.890182" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f17.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f17.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:54.890321" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:54.890027" elapsed="0.000323"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:54.890918" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc092200&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:54.890501" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:54.891454" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:54.891170" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:54.891900" level="INFO">${flow_id} = 140</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:54.891632" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:54.892360" level="INFO">${flow_priority} = 17</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:54.892090" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:54.893213" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:54.892536" elapsed="0.000708"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.893732" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.893401" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.894320" level="INFO">${flow_id} = 140</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.893977" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.894857" level="INFO">${flow_priority} = 17</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.894515" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.895379" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.895050" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.895893" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.895575" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.896422" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc092200&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:54.896103" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:54.889702" elapsed="0.006816"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.897044" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.896667" elapsed="0.000421"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.897482" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    &lt;priority&gt;17&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;protocol-match-fields&gt;
            &lt;mpls-label&gt;567&lt;/mpls-label&gt;
            &lt;mpls-tc&gt;3&lt;/mpls-tc&gt;
            &lt;mpls-bos&gt;1&lt;/mpls-bos&gt;
        &lt;/protocol-match-fields&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.897242" elapsed="0.000300"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.905521" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:54.905221" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:54.913854" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=140?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=140?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:54.914415" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=140?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '728'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:54.914523" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:54.905677" elapsed="0.008871"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.914981" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.914728" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.917156" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.915186" elapsed="0.002059"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.919109" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.917316" elapsed="0.001843"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.917296" elapsed="0.001885"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:54.923052" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:54.923139" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:54.919320" elapsed="0.003852"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:54.925694" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:54.923276" elapsed="0.002495"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.923249" elapsed="0.002554"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:54.925849" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:52:54.926139" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:54.926201" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 140 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:54.904884" elapsed="0.021349"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.929228" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.926995" elapsed="0.002296"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.926970" elapsed="0.002352"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.930091" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.929523" elapsed="0.000607"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.930886" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.930358" elapsed="0.000564"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:54.930991" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:52:54.931260" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:54.926523" elapsed="0.004773"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:54.931512" elapsed="0.000429"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:54.904324" elapsed="0.027680"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.939896" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:54.939598" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:54.954893" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:54.955877" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:54.956555" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:54.940051" elapsed="0.016565"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.957575" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.956974" elapsed="0.000701"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:54.961810" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;238000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;857000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;311000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;999000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;865000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;979000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;15000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;271000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;502000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;457000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;504000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;23000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;817000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;789000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;872000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;968000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:54.957993" elapsed="0.005276"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.965793" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.963371" elapsed="0.002488"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.963343" elapsed="0.002547"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:54.995187" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:54.995235" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:54.966102" elapsed="0.029157"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:54.997029" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:54.995336" elapsed="0.001762"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.995317" elapsed="0.001806"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:54.997156" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:54.997351" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:54.997395" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 140 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:54.939223" elapsed="0.058194"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:54.999582" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:54.997959" elapsed="0.001668"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:54.997941" elapsed="0.001707"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.000211" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:54.999794" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.000752" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.000402" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:55.000827" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:55.001004" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:54.997630" elapsed="0.003399"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:55.001199" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:54.938595" elapsed="0.063065"/>
</kw>
<arg>f17.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:54.886313" elapsed="0.115404"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:54.879505" elapsed="0.122327"/>
</test>
<test id="s1-s3-s1-t17" name="Test Is Flow 18 Added" line="81">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:55.012630" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f18.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f18.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:55.012773" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:55.012493" elapsed="0.000310"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:55.013362" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1c400&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:55.012953" elapsed="0.000437"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:55.013834" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:55.013542" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:55.014300" level="INFO">${flow_id} = 141</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:55.014013" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:55.014788" level="INFO">${flow_priority} = 18</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:55.014476" elapsed="0.000339"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:55.015565" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:55.014965" elapsed="0.000630"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.016099" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.015755" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.016661" level="INFO">${flow_id} = 141</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.016332" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.017211" level="INFO">${flow_priority} = 18</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.016862" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.017723" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.017406" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.018255" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.017918" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.018785" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1c400&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.018451" elapsed="0.000376"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:55.012164" elapsed="0.006717"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.019443" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.019030" elapsed="0.000443"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.019872" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;18&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;18&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.019634" elapsed="0.000295"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.027776" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:55.027476" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:55.035815" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=141?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=141?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:55.036308" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=141?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '602'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;141&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:55.036413" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:55.027933" elapsed="0.008506"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.036932" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.036599" elapsed="0.000395"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.040083" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;141&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.037218" elapsed="0.002988"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.042763" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.040306" elapsed="0.002524"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.040278" elapsed="0.002584"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:55.047300" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:55.047366" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:55.043136" elapsed="0.004261"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:55.049263" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:55.047501" elapsed="0.001817"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.047474" elapsed="0.001868"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:55.049375" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:55.049567" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:55.049611" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 141 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:55.027150" elapsed="0.022484"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.051781" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.050188" elapsed="0.001638"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.050170" elapsed="0.001678"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.052406" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.051993" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.052942" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.052595" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:55.053017" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:55.053212" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:55.049841" elapsed="0.003396"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:55.053392" elapsed="0.000386"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:55.026554" elapsed="0.027287"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.061780" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:55.061481" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:55.077554" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:55.078519" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:55.079236" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:55.061935" elapsed="0.017363"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.080286" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.079660" elapsed="0.000730"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.085832" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;238000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;857000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;311000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;999000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;865000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;979000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;15000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;271000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;502000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;457000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;504000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;23000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;817000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;789000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;872000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;968000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.080712" elapsed="0.007232"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.089748" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.088018" elapsed="0.001779"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.087998" elapsed="0.001821"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:55.116496" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:55.116543" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:55.089960" elapsed="0.026606"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:55.118388" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:55.116646" elapsed="0.001798"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.116627" elapsed="0.001841"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:55.118500" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:55.118727" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:55.118771" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 141 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:55.061105" elapsed="0.057689"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.120923" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.119361" elapsed="0.001607"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.119342" elapsed="0.001647"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.121554" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.121151" elapsed="0.000430"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.122111" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.121745" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:55.122188" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:55.122363" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:55.119011" elapsed="0.003377"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:55.122543" elapsed="0.000394"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:55.060478" elapsed="0.062522"/>
</kw>
<arg>f18.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:55.008793" elapsed="0.114264"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:55.002009" elapsed="0.121185"/>
</test>
<test id="s1-s3-s1-t18" name="Test Is Flow 19 Added" line="83">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:55.133819" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f19.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f19.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:55.133956" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:55.133681" elapsed="0.000304"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:55.134542" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcfef20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:55.134151" elapsed="0.000435"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:55.135026" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:55.134740" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:55.135490" level="INFO">${flow_id} = 142</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:55.135220" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:55.135936" level="INFO">${flow_priority} = 19</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:55.135664" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:55.136692" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:55.136126" elapsed="0.000597"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.137222" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.136877" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.137776" level="INFO">${flow_id} = 142</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.137453" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.138315" level="INFO">${flow_priority} = 19</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.137970" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.138832" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.138508" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.139364" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.139028" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.139879" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcfef20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.139562" elapsed="0.000358"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:55.133355" elapsed="0.006619"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.140517" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.140140" elapsed="0.000407"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.140936" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;19&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;19&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.140698" elapsed="0.000296"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.150323" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:55.150007" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:55.157467" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=142?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=142?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:55.158095" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=142?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '549'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;142&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:55.158209" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:55.150477" elapsed="0.007758"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.158673" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.158391" elapsed="0.000327"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.161282" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;142&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.158861" elapsed="0.002542"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.163967" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.161503" elapsed="0.002532"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.161476" elapsed="0.002610"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:55.167837" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:55.167901" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:55.164281" elapsed="0.003652"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:55.170404" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:55.168035" elapsed="0.002444"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.168009" elapsed="0.002503"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:55.170591" elapsed="0.000041"/>
</return>
<msg time="2026-05-25T01:52:55.170873" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:55.170933" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 142 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:55.149693" elapsed="0.021271"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.173301" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.171726" elapsed="0.001619"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.171708" elapsed="0.001659"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.173911" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.173512" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.174462" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.174114" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:55.174538" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:52:55.174726" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:55.171274" elapsed="0.003478"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:55.174906" elapsed="0.000396"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:55.149138" elapsed="0.026227"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.183149" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:55.182835" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:55.201692" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:55.202662" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:55.203310" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:55.183305" elapsed="0.020064"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.204716" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.203717" elapsed="0.001104"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.209311" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;238000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;857000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;311000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;999000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;865000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;979000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;15000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;271000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;502000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;457000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;504000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;23000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;817000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;789000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;872000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;968000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.205174" elapsed="0.005534"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.213240" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.210809" elapsed="0.002497"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.210782" elapsed="0.002555"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:55.240792" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:55.240838" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:55.213531" elapsed="0.027331"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:55.242706" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:55.240940" elapsed="0.001822"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.240920" elapsed="0.001865"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:55.242817" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:55.243011" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:55.243054" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 142 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:55.182431" elapsed="0.060662"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.245221" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.243639" elapsed="0.001627"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.243621" elapsed="0.001667"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.245832" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.245434" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.246389" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.246021" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:55.246465" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:55.246651" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:55.243308" elapsed="0.003371"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:55.246837" elapsed="0.000399"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:55.181809" elapsed="0.065489"/>
</kw>
<arg>f19.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:55.130095" elapsed="0.117258"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:55.123377" elapsed="0.124089"/>
</test>
<test id="s1-s3-s1-t19" name="Test Is Flow 20 Added" line="85">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:55.258290" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f20.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f20.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:55.258461" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:55.258152" elapsed="0.000340"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:55.259043" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1c400&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:55.258654" elapsed="0.000433"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:55.259519" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:55.259241" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:55.259963" level="INFO">${flow_id} = 143</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:55.259696" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:55.260426" level="INFO">${flow_priority} = 20</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:55.260156" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:55.261167" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:55.260601" elapsed="0.000597"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.261682" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.261354" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.262254" level="INFO">${flow_id} = 143</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.261913" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.262806" level="INFO">${flow_priority} = 20</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.262448" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.263332" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.263000" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.263846" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.263528" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.264375" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1c400&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.264040" elapsed="0.000376"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:55.257806" elapsed="0.006664"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.264999" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.264619" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.265436" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;20&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;20&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xf0ff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.265197" elapsed="0.000296"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.273080" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:55.272768" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:55.283343" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=143?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=143?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:55.284348" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=143?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '556'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;143&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:55.284585" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:55.273242" elapsed="0.011400"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.285698" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.285004" elapsed="0.000798"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.291154" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;143&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.286159" elapsed="0.005192"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.295467" elapsed="0.000036"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.291514" elapsed="0.004062"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.291468" elapsed="0.004159"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:55.298353" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:55.298399" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:55.295798" elapsed="0.002624"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:55.300219" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:55.298495" elapsed="0.001780"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.298476" elapsed="0.001823"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:55.300333" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:55.300527" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:55.300570" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 143 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:55.272458" elapsed="0.028135"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.302735" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.301147" elapsed="0.001633"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.301129" elapsed="0.001673"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.303367" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.302949" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.303904" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.303557" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:55.303980" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:55.304174" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:55.300802" elapsed="0.003398"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:55.304357" elapsed="0.000383"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:55.271897" elapsed="0.032906"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.312543" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:55.312245" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:55.329118" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:55.330029" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:55.330705" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:55.312705" elapsed="0.018058"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.331723" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.331153" elapsed="0.000669"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.340589" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;238000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;857000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;311000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;999000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;865000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;979000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;15000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;271000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;502000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;457000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;504000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;23000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;817000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;789000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;872000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;968000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.332175" elapsed="0.009465"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.343480" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.341718" elapsed="0.001812"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.341696" elapsed="0.001856"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:55.368902" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:55.368949" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:55.343698" elapsed="0.025274"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:55.370781" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:55.369050" elapsed="0.001787"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.369031" elapsed="0.001830"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:55.370894" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:52:55.371107" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:55.371153" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 143 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:55.311855" elapsed="0.059320"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.373343" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.371771" elapsed="0.001617"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.371753" elapsed="0.001657"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.373965" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.373558" elapsed="0.000434"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.374522" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.374170" elapsed="0.000388"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:55.374609" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:55.374785" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:55.371402" elapsed="0.003408"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:55.374966" elapsed="0.000409"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:55.311249" elapsed="0.064188"/>
</kw>
<arg>f20.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:55.254502" elapsed="0.120993"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:55.247640" elapsed="0.127979"/>
</test>
<test id="s1-s3-s1-t20" name="Test Is Flow 21 Added" line="87">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:55.386447" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:55.386616" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:55.386306" elapsed="0.000339"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:55.387229" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfbd6ac0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:55.386796" elapsed="0.000462"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:55.387691" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:55.387411" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:55.388152" level="INFO">${flow_id} = 144</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:55.387867" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:55.388595" level="INFO">${flow_priority} = 21</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:55.388328" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:55.389471" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:55.388769" elapsed="0.000733"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.389992" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.389660" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.390578" level="INFO">${flow_id} = 144</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.390239" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.391118" level="INFO">${flow_priority} = 21</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.390774" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.391628" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.391313" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.392156" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.391825" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.392672" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfbd6ac0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.392354" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:55.385956" elapsed="0.006812"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.393317" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.392916" elapsed="0.000431"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.393738" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.393500" elapsed="0.000300"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.401422" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:55.401118" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:55.409214" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:55.409948" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '831'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:55.410056" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:55.401583" elapsed="0.008514"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.410511" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.410259" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.412729" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.410755" elapsed="0.002034"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.414633" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.412860" elapsed="0.001822"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.412840" elapsed="0.001864"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:55.418701" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:55.418764" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:55.414844" elapsed="0.003953"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:55.421339" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:55.418900" elapsed="0.002517"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.418874" elapsed="0.002575"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:55.421496" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:52:55.421766" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:55.421826" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:55.400788" elapsed="0.021069"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.424542" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.422664" elapsed="0.001923"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.422639" elapsed="0.001970"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.425168" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.424754" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.425705" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.425358" elapsed="0.000501"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:55.425912" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:55.426112" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:55.422170" elapsed="0.003969"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:55.426297" elapsed="0.000405"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:55.400234" elapsed="0.026532"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.434460" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:55.434162" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:55.451181" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:55.452114" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:55.452739" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:55.434638" elapsed="0.018161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.453755" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.453192" elapsed="0.000662"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.458186" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;238000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;857000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;311000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;999000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;865000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;979000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;15000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;271000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;502000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;457000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;504000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;23000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;817000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;789000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;872000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;968000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.454206" elapsed="0.005462"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.462225" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.459772" elapsed="0.002520"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.459744" elapsed="0.002579"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:55.540002" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:55.540080" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:55.462517" elapsed="0.077590"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:55.542100" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:55.540235" elapsed="0.001937"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.540203" elapsed="0.001996"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:55.542237" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:52:55.542460" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:55.542504" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:55.433773" elapsed="0.108767"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.544782" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.543194" elapsed="0.001634"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.543175" elapsed="0.001675"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.545494" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.545000" elapsed="0.000523"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.546082" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.545702" elapsed="0.000407"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:55.546159" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:55.546339" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:55.542798" elapsed="0.003567"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:55.546546" elapsed="0.000409"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:55.433166" elapsed="0.113867"/>
</kw>
<arg>f21.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:55.382717" elapsed="0.164398"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:55.375810" elapsed="0.171431"/>
</test>
<test id="s1-s3-s1-t21" name="Test Is Flow 22 Added" line="89">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:55.558029" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f22.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f22.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:55.558211" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:55.557887" elapsed="0.000354"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:55.558939" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1d620&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:55.558394" elapsed="0.000575"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:55.559426" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:55.559140" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:55.559876" level="INFO">${flow_id} = 145</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:55.559606" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:55.560338" level="INFO">${flow_priority} = 22</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:55.560052" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:55.561236" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:55.560515" elapsed="0.000752"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.561764" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.561423" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.562521" level="INFO">${flow_id} = 145</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.562017" elapsed="0.000548"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.563055" level="INFO">${flow_priority} = 22</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.562724" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.563585" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.563267" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.564120" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.563782" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.564643" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1d620&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.564319" elapsed="0.000366"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:55.557556" elapsed="0.007185"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.565287" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.564890" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.565712" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;22&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;22&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.565470" elapsed="0.000305"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.573377" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:55.573055" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:55.580315" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=145?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=145?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:55.580961" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=145?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '829'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;145&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:55.581088" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:55.573533" elapsed="0.007582"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.581528" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.581276" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.583786" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;145&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.581750" elapsed="0.002096"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.585645" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.583917" elapsed="0.001776"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.583897" elapsed="0.001818"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:55.589357" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:55.589422" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:55.585855" elapsed="0.003599"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:55.592150" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:55.589557" elapsed="0.002672"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.589531" elapsed="0.002731"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:55.592308" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:52:55.592576" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:55.592637" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 145 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:55.572740" elapsed="0.019928"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.595670" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.593437" elapsed="0.002284"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.593412" elapsed="0.002331"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.596303" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.595888" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.596877" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.596492" elapsed="0.000412"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:55.596954" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:55.597149" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:55.592956" elapsed="0.004219"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:55.597332" elapsed="0.000385"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:55.572190" elapsed="0.025589"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.605516" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:55.605216" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:55.620815" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:55.621768" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:55.622418" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:55.605673" elapsed="0.016805"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.623506" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.622893" elapsed="0.000717"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.626983" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;238000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;857000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;311000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;999000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;865000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;979000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;15000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;271000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;502000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;457000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;504000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;23000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;817000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;789000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;872000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;968000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.623840" elapsed="0.004557"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.630935" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.628499" elapsed="0.002503"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.628471" elapsed="0.002562"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:55.659095" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:55.659145" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:55.631247" elapsed="0.027922"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:55.660954" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:55.659248" elapsed="0.001762"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.659228" elapsed="0.001806"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:55.661082" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:52:55.661281" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:55.661325" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 145 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:55.604825" elapsed="0.056523"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.663481" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.661897" elapsed="0.001628"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.661879" elapsed="0.001668"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.664114" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.663694" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.664654" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.664305" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:55.664730" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:55.664909" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:55.661563" elapsed="0.003371"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:55.665107" elapsed="0.000387"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:55.604218" elapsed="0.061339"/>
</kw>
<arg>f22.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:55.554278" elapsed="0.111337"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:55.547441" elapsed="0.118288"/>
</test>
<test id="s1-s3-s1-t22" name="Test Is Flow 23 Added" line="91">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:55.676419" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f23.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f23.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:55.676577" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:55.676281" elapsed="0.000325"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:55.677194" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc092930&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:55.676758" elapsed="0.000465"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:55.677657" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:55.677377" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:55.678118" level="INFO">${flow_id} = 146</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:55.677833" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:55.678590" level="INFO">${flow_priority} = 23</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:55.678294" elapsed="0.000322"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:55.679628" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:55.678770" elapsed="0.000889"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.680168" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.679816" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.680734" level="INFO">${flow_id} = 146</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.680406" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.681270" level="INFO">${flow_priority} = 23</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.680929" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.681774" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.681462" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.682303" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.681968" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.682874" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc092930&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.682527" elapsed="0.000389"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:55.675939" elapsed="0.007033"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.683522" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.683140" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.683944" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;23&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;23&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.683705" elapsed="0.000301"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.691719" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:55.691416" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:55.697662" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=146?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=146?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:55.698327" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=146?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '883'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;146&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:55.698436" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:55.691877" elapsed="0.006584"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.698965" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.698707" elapsed="0.000343"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.701865" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;146&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.699221" elapsed="0.002728"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.704498" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.702047" elapsed="0.002519"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.702019" elapsed="0.002578"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:55.709059" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:55.709147" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:55.704794" elapsed="0.004387"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:55.711892" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:55.709285" elapsed="0.002666"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.709259" elapsed="0.002716"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:55.712009" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:55.712224" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:55.712268" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 146 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:55.691100" elapsed="0.021192"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.714434" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.712841" elapsed="0.001638"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.712824" elapsed="0.001688"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.715091" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.714667" elapsed="0.000452"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.715632" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.715280" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:55.715708" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:55.715888" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:55.712504" elapsed="0.003413"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:55.716093" elapsed="0.000394"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:55.690438" elapsed="0.026113"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.724365" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:55.724048" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:55.743223" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:55.744253" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:55.744931" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:55.724522" elapsed="0.020467"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.745941" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.745373" elapsed="0.000669"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.751604" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;238000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;857000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;311000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;999000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;865000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;979000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;15000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;271000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;502000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;457000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;504000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;23000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;817000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;789000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;872000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;968000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.746391" elapsed="0.006222"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.754439" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.752687" elapsed="0.001812"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.752667" elapsed="0.001856"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:55.785890" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:55.785940" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:55.754667" elapsed="0.031297"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:55.787807" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:55.786054" elapsed="0.001811"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.786031" elapsed="0.001859"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:55.787924" elapsed="0.000032"/>
</return>
<msg time="2026-05-25T01:52:55.788153" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:55.788198" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 146 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:55.723672" elapsed="0.064548"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.790447" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.788796" elapsed="0.001714"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.788778" elapsed="0.001755"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.791124" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.790684" elapsed="0.000468"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.791670" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.791316" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:55.791746" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:55.791925" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:55.788449" elapsed="0.003502"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:55.792123" elapsed="0.000395"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:55.723040" elapsed="0.069542"/>
</kw>
<arg>f23.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:55.672694" elapsed="0.119947"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:55.665911" elapsed="0.126851"/>
</test>
<test id="s1-s3-s1-t23" name="Test Is Flow 24 Added" line="93">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:55.803551" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f24.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f24.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:55.803721" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:55.803408" elapsed="0.000342"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:55.804314" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc358b30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:55.803901" elapsed="0.000441"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:55.804778" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:55.804493" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:55.805239" level="INFO">${flow_id} = 147</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:55.804953" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:55.805682" level="INFO">${flow_priority} = 24</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:55.805414" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:55.806430" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:55.805858" elapsed="0.000602"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.806968" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.806634" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.807555" level="INFO">${flow_id} = 147</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.807228" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.808243" level="INFO">${flow_priority} = 24</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.807755" elapsed="0.000531"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.808760" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.808441" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.809298" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.808959" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.809819" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc358b30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.809496" elapsed="0.000365"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:55.803078" elapsed="0.006838"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.810465" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.810081" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.810908" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;24&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;24&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                        &lt;output-action&gt;
                        &lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.810663" elapsed="0.000302"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.818595" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:55.818275" elapsed="0.000347"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:55.824739" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=147?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=147?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:55.825376" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=147?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '517'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;147&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:55.825527" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:55.818752" elapsed="0.006810"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.826339" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.825953" elapsed="0.000449"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.829358" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;147&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.826623" elapsed="0.002812"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.832012" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.829577" elapsed="0.002522"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.829547" elapsed="0.002585"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:55.835818" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:55.835863" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:55.832328" elapsed="0.003558"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:55.837641" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:55.835960" elapsed="0.001736"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.835941" elapsed="0.001779"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:55.837753" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:55.837946" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:55.837989" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 147 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:55.817944" elapsed="0.020068"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.840342" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.838581" elapsed="0.001806"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.838561" elapsed="0.001848"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.840950" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.840555" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.841508" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.841155" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:55.841584" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:55.841762" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:55.838236" elapsed="0.003550"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:55.841942" elapsed="0.000573"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:55.817389" elapsed="0.025195"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.850299" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:55.849981" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:55.863730" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:55.864684" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:55.865359" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:55.850457" elapsed="0.014961"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.866382" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.865775" elapsed="0.000730"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.871831" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;238000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;857000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;311000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;999000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;865000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;979000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;15000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;271000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;502000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;457000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;504000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;23000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;817000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;789000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;872000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;968000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.866833" elapsed="0.005949"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.874617" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.872854" elapsed="0.001812"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.872834" elapsed="0.001857"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:55.904775" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:55.904822" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:55.874846" elapsed="0.029999"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:55.906655" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:55.904924" elapsed="0.001789"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.904905" elapsed="0.001835"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:55.906773" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:55.906968" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:55.907011" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 147 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:55.849604" elapsed="0.057430"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.909178" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.907599" elapsed="0.001624"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.907581" elapsed="0.001663"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.909790" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.909390" elapsed="0.000427"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.910346" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.909979" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:55.910421" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:52:55.910614" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:55.907266" elapsed="0.003373"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:55.910796" elapsed="0.000402"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:55.848980" elapsed="0.062281"/>
</kw>
<arg>f24.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:55.799789" elapsed="0.111528"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:55.792987" elapsed="0.118448"/>
</test>
<test id="s1-s3-s1-t24" name="Test Is Flow 25 Added" line="95">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:55.922136" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f25.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f25.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:55.922271" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:55.921981" elapsed="0.000319"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:55.922885" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4db5b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:55.922451" elapsed="0.000462"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:55.923361" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:55.923080" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:55.923802" level="INFO">${flow_id} = 148</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:55.923537" elapsed="0.000290"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:55.924259" level="INFO">${flow_priority} = 25</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:55.923976" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:55.925180" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:55.924434" elapsed="0.000777"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.925700" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.925369" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.926279" level="INFO">${flow_id} = 148</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.925935" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.926835" level="INFO">${flow_priority} = 25</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.926500" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.927372" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.927033" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.927893" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.927571" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.928428" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4db5b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:55.928105" elapsed="0.000365"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:55.921649" elapsed="0.006876"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.929056" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.928676" elapsed="0.000427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.929664" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;25&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;25&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.929255" elapsed="0.000474"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.937488" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:55.937178" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:55.943623" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=148?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=148?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:55.944291" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=148?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '882'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;148&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:55.944401" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:55.937645" elapsed="0.006781"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.944869" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.944614" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.947252" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;148&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.945056" elapsed="0.002281"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.949924" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.947436" elapsed="0.002556"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.947407" elapsed="0.002616"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:55.954548" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:55.954613" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:55.950237" elapsed="0.004408"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:55.957123" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:55.954748" elapsed="0.002453"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.954721" elapsed="0.002513"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:55.957280" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:52:55.957549" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:55.957609" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 148 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:55.936841" elapsed="0.020800"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.960308" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.958414" elapsed="0.001940"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.958389" elapsed="0.001987"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.960919" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.960522" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.961482" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:55.961125" elapsed="0.000383"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:55.961558" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:55.961735" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:55.957935" elapsed="0.003825"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:55.961916" elapsed="0.000398"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:55.936283" elapsed="0.026095"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.970126" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:55.969815" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:55.985453" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:55.986394" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:55.987127" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:55.970283" elapsed="0.016905"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.988134" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.987542" elapsed="0.000696"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:55.993615" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;238000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;857000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;311000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;999000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;865000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;979000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;15000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;271000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;502000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;457000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;504000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;23000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;817000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;789000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;872000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;968000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:55.988553" elapsed="0.007713"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:55.999082" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:55.996505" elapsed="0.002648"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:55.996460" elapsed="0.002725"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:56.031320" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:56.031369" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:55.999399" elapsed="0.031994"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:56.033182" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:56.031472" elapsed="0.001767"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.031453" elapsed="0.001810"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:56.033297" elapsed="0.000033"/>
</return>
<msg time="2026-05-25T01:52:56.033499" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:56.033543" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 148 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:55.969437" elapsed="0.064129"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.035720" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.034137" elapsed="0.001628"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.034119" elapsed="0.001667"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.036366" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.035933" elapsed="0.000461"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.036909" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.036557" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:56.036985" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:56.037179" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:56.033788" elapsed="0.003417"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:56.037361" elapsed="0.000392"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:55.968811" elapsed="0.069006"/>
</kw>
<arg>f25.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:55.918384" elapsed="0.119489"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:55.911613" elapsed="0.126382"/>
</test>
<test id="s1-s3-s1-t25" name="Test Is Flow 31 Added" line="97">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:56.049160" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f31.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f31.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:56.049322" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:56.048995" elapsed="0.000357"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:56.049903" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e5210&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:56.049504" elapsed="0.000427"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:56.050380" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:56.050099" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:56.050857" level="INFO">${flow_id} = 154</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:56.050581" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:56.051318" level="INFO">${flow_priority} = 31</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:56.051032" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:56.052126" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:56.051493" elapsed="0.000664"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.052642" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.052312" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.053240" level="INFO">${flow_id} = 154</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.052895" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.053761" level="INFO">${flow_priority} = 31</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.053436" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.054279" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.053953" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.054812" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.054486" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.055485" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e5210&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.055006" elapsed="0.000523"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:56.048666" elapsed="0.006919"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.056135" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.055736" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.056558" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;154&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;31&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf31&lt;/flow-name&gt;
    &lt;priority&gt;31&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.056317" elapsed="0.000299"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.064213" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:56.063898" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:56.071580" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=154?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=154?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:56.072280" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=154?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '621'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;154&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:56.072426" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:56.064370" elapsed="0.008091"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.073036" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.072683" elapsed="0.000446"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.076143" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;154&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.073330" elapsed="0.002936"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.078839" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.076366" elapsed="0.002540"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.076338" elapsed="0.002599"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:56.082862" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:56.082908" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:56.079152" elapsed="0.003779"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:56.084687" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:56.083005" elapsed="0.001737"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.082986" elapsed="0.001780"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:56.084799" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:56.084991" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:56.085035" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 154 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:56.063581" elapsed="0.021476"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.087359" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.085615" elapsed="0.001789"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.085597" elapsed="0.001828"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.087970" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.087573" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.088526" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.088175" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:56.088601" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:56.088777" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:56.085286" elapsed="0.003516"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:56.088957" elapsed="0.000398"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:56.063016" elapsed="0.026403"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.097168" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:56.096850" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:56.111533" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:56.112398" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:56.113055" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:56.097326" elapsed="0.015820"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.114061" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.113503" elapsed="0.000690"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.119701" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;238000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;857000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;311000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;999000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;865000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;979000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;15000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;271000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;502000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;457000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;504000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;23000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;817000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;789000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;872000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;968000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.114537" elapsed="0.007287"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.124225" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.121985" elapsed="0.002289"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.121941" elapsed="0.002355"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:56.152213" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:56.152262" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:56.124434" elapsed="0.027851"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:56.154195" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:56.152363" elapsed="0.001889"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.152343" elapsed="0.001933"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:56.154309" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:52:56.154534" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:56.154581" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 154 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:56.096475" elapsed="0.058129"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.156756" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.155187" elapsed="0.001613"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.155169" elapsed="0.001653"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.157392" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.156968" elapsed="0.000452"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.157933" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.157583" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:56.158009" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:52:56.158202" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:56.154834" elapsed="0.003393"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:56.158383" elapsed="0.000407"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:56.095839" elapsed="0.063015"/>
</kw>
<arg>f31.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:56.045260" elapsed="0.113652"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:56.038421" elapsed="0.120606"/>
</test>
<test id="s1-s3-s1-t26" name="Test Is Flow 36 Added" line="99">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:56.169852" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f36.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f36.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:56.169994" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:56.169713" elapsed="0.000311"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:56.170611" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3eea20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:56.170191" elapsed="0.000448"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:56.171112" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:56.170799" elapsed="0.000341"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:56.171566" level="INFO">${flow_id} = 159</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:56.171294" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:56.172014" level="INFO">${flow_priority} = 36</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:56.171743" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:56.172805" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:56.172208" elapsed="0.000628"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.173346" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.172993" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.173913" level="INFO">${flow_id} = 159</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.173581" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.174635" level="INFO">${flow_priority} = 36</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.174125" elapsed="0.000622"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.175293" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.174942" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.175813" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.175494" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.176363" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3eea20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.176010" elapsed="0.000396"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:56.169382" elapsed="0.007080"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.176993" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.176612" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.177434" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;ip-match&gt;
                            &lt;ip-dscp&gt;1&lt;/ip-dscp&gt;
                        &lt;/ip-match&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;159&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;36&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf36&lt;/flow-name&gt;
    &lt;priority&gt;36&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.177193" elapsed="0.000301"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.185477" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:56.185173" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:56.192233" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=159?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=159?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:56.192723" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=159?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '607'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;159&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:56.192827" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:56.185636" elapsed="0.007216"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.193281" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.193011" elapsed="0.000315"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.195485" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;159&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.193469" elapsed="0.002113"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.197407" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.195655" elapsed="0.001801"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.195634" elapsed="0.001844"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:56.200993" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:56.201059" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:56.197617" elapsed="0.003496"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:56.203647" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:56.201217" elapsed="0.002511"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.201191" elapsed="0.002571"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:56.203810" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:52:56.204106" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:56.204171" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 159 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:56.184822" elapsed="0.019382"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.207152" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.204988" elapsed="0.002211"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.204963" elapsed="0.002258"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.207769" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.207367" elapsed="0.000429"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.208334" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.207961" elapsed="0.000399"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:56.208412" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:56.208706" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:56.204500" elapsed="0.004232"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:56.208892" elapsed="0.000409"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:56.184235" elapsed="0.025131"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.217275" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:56.216957" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:56.233884" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:56.234850" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:56.235540" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:56.217431" elapsed="0.018169"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.236683" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.235953" elapsed="0.000831"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.242384" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;238000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;857000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;311000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;999000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;865000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;979000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;15000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;271000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;502000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;457000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;504000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;23000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;817000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;789000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;872000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;968000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.237200" elapsed="0.006335"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.245350" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.243608" elapsed="0.001789"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.243588" elapsed="0.001831"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:56.276344" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:56.276391" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:56.245557" elapsed="0.030858"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:56.278202" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:56.276494" elapsed="0.001764"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.276474" elapsed="0.001809"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:56.278316" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:56.278583" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:56.278631" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 159 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:56.216582" elapsed="0.062072"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.280789" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.279229" elapsed="0.001605"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.279211" elapsed="0.001645"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.281434" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.281006" elapsed="0.000456"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.281982" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.281628" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:56.282059" elapsed="0.000044"/>
</return>
<msg time="2026-05-25T01:52:56.282255" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:56.278873" elapsed="0.003408"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:56.282450" elapsed="0.000394"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:56.215954" elapsed="0.066955"/>
</kw>
<arg>f36.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:56.166104" elapsed="0.116864"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:56.159304" elapsed="0.123797"/>
</test>
<test id="s1-s3-s1-t27" name="Test Is Flow 38 Added" line="101">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:56.293903" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f38.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f38.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:56.294054" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:56.293764" elapsed="0.000334"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:56.294700" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38af70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:56.294249" elapsed="0.000479"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:56.295306" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:56.295001" elapsed="0.000331"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:56.295752" level="INFO">${flow_id} = 161</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:56.295483" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:56.296211" level="INFO">${flow_priority} = 38</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:56.295927" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:56.296998" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:56.296387" elapsed="0.000641"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.297530" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.297200" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.298101" level="INFO">${flow_id} = 161</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.297762" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.298648" level="INFO">${flow_priority} = 38</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.298296" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.299169" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.298839" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.299681" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.299366" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.300211" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38af70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.299876" elapsed="0.000377"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:56.293435" elapsed="0.006873"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.300834" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.300458" elapsed="0.000406"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.301269" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-queue-action&gt;
                        &lt;queue-id&gt;1&lt;/queue-id&gt;
                    &lt;/set-queue-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;161&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;38&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf38&lt;/flow-name&gt;
    &lt;priority&gt;38&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.301014" elapsed="0.000314"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.309084" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:56.308770" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:56.315576" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=161?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=161?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:56.316121" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=161?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '666'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;161&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:56.316228" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:56.309242" elapsed="0.007011"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.316662" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.316411" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.318916" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;161&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.316853" elapsed="0.002190"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.321588" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.319167" elapsed="0.002488"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.319138" elapsed="0.002548"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:56.325675" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:56.325738" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:56.321879" elapsed="0.003891"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:56.327828" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:56.325874" elapsed="0.002010"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.325847" elapsed="0.002060"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:56.327940" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:56.328149" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:56.328193" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 161 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:56.308453" elapsed="0.019762"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.330336" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.328759" elapsed="0.001623"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.328741" elapsed="0.001662"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.330955" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.330561" elapsed="0.000420"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.331509" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.331159" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:56.331585" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:56.331761" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:56.328424" elapsed="0.003362"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:56.331942" elapsed="0.000398"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:56.307881" elapsed="0.024523"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.340317" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:56.340001" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:56.353461" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:56.354410" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:56.355106" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:56.340473" elapsed="0.014696"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.356125" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.355530" elapsed="0.000699"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.361676" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;238000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;857000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;311000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;999000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;865000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;979000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;15000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;271000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;502000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;457000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;504000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;23000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;817000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;789000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;872000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;968000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.356551" elapsed="0.006704"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.365057" elapsed="0.000029"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.363331" elapsed="0.001789"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.363310" elapsed="0.001832"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:56.396165" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:56.396214" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:56.365282" elapsed="0.030956"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:56.398079" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:56.396321" elapsed="0.001816"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.396301" elapsed="0.001860"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:56.398194" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:52:56.398393" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:56.398451" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 161 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:56.339622" elapsed="0.058852"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.400620" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.399043" elapsed="0.001622"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.399025" elapsed="0.001664"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.401280" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.400839" elapsed="0.000469"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.401820" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.401471" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:56.401896" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:56.402087" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:56.398702" elapsed="0.003413"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:56.402273" elapsed="0.000398"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:56.338995" elapsed="0.063740"/>
</kw>
<arg>f38.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:56.290197" elapsed="0.112595"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:56.283393" elapsed="0.119522"/>
</test>
<test id="s1-s3-s1-t28" name="Test Is Flow 43 Added" line="103">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:56.413790" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f43.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f43.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:56.413957" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:56.413645" elapsed="0.000341"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:56.414760" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe699e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:56.414153" elapsed="0.000645"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:56.415276" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:56.414967" elapsed="0.000335"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:56.415720" level="INFO">${flow_id} = 166</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:56.415453" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:56.416177" level="INFO">${flow_priority} = 43</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:56.415895" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:56.417029" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:56.416352" elapsed="0.000707"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.417647" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.417239" elapsed="0.000451"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.418239" level="INFO">${flow_id} = 166</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.417895" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.418838" level="INFO">${flow_priority} = 43</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.418453" elapsed="0.000427"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.419366" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.419035" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.419883" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.419564" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.420418" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe699e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.420094" elapsed="0.000365"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:56.413317" elapsed="0.007197"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.421043" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.420666" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.421484" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;166&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;43&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf43&lt;/flow-name&gt;
    &lt;priority&gt;43&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.421246" elapsed="0.000298"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.429334" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:56.429015" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:56.436166" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=166?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=166?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:56.436915" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=166?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '710'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;166&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:56.437063" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:56.429491" elapsed="0.007629"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.437695" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.437344" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.440752" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;166&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.437956" elapsed="0.002924"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.443465" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.440980" elapsed="0.002553"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.440952" elapsed="0.002612"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:56.447627" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:56.447692" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:56.443760" elapsed="0.003964"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:56.450206" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:56.447826" elapsed="0.002459"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.447800" elapsed="0.002518"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:56.450364" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:52:56.450680" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:56.450741" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 166 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:56.428701" elapsed="0.022073"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.453754" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.451550" elapsed="0.002267"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.451526" elapsed="0.002322"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.454667" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.454053" elapsed="0.000651"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.455236" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.454868" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:56.455314" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:56.455493" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:56.451085" elapsed="0.004434"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:56.455675" elapsed="0.000386"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:56.428147" elapsed="0.027995"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.464062" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:56.463761" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:56.477962" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:56.478926" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:56.479597" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:56.464239" elapsed="0.015418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.480621" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.480017" elapsed="0.000704"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.484866" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;238000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;857000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;311000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;999000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;865000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;979000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;15000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;271000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;502000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;457000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;504000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;23000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;817000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;789000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;872000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;968000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.481044" elapsed="0.005162"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.488763" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.486308" elapsed="0.002521"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.486280" elapsed="0.002581"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:56.520482" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:56.520530" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:56.489054" elapsed="0.031501"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:56.522347" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:56.520633" elapsed="0.001770"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.520614" elapsed="0.001830"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:56.522481" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:56.522677" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:56.522722" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 166 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:56.463381" elapsed="0.059364"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.524892" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.523313" elapsed="0.001624"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.523295" elapsed="0.001663"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.525525" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.525122" elapsed="0.000431"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.526085" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.525717" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:56.526163" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:56.526343" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:56.522960" elapsed="0.003409"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:56.526553" elapsed="0.000388"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:56.462745" elapsed="0.064260"/>
</kw>
<arg>f43.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:56.410028" elapsed="0.117034"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:56.403228" elapsed="0.123968"/>
</test>
<test id="s1-s3-s1-t29" name="Test Is Flow 45 Added" line="105">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:56.538003" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f45.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f45.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:56.538159" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:56.537867" elapsed="0.000321"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:56.538748" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7e6b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:56.538338" elapsed="0.000438"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:56.539227" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:56.538928" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:56.539672" level="INFO">${flow_id} = 168</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:56.539404" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:56.540130" level="INFO">${flow_priority} = 45</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:56.539845" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:56.540905" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:56.540306" elapsed="0.000629"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.541436" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.541107" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.541993" level="INFO">${flow_id} = 168</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.541668" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.542552" level="INFO">${flow_priority} = 45</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.542203" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.543078" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.542747" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.543601" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.543278" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.544143" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7e6b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.543804" elapsed="0.000381"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:56.537538" elapsed="0.006702"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.544771" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.544390" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.545212" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;168&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;1180719718&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xfff0ffff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
    &lt;cookie&gt;45&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf45&lt;/flow-name&gt;
    &lt;priority&gt;45&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.544953" elapsed="0.000318"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.554725" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:56.554407" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:56.564905" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=168?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=168?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:56.565386" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=168?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '585'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;168&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:56.565500" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:56.554883" elapsed="0.010642"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.565939" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.565685" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.569913" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;168&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.566142" elapsed="0.004017"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.574513" elapsed="0.000036"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.570319" elapsed="0.004305"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.570274" elapsed="0.004400"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:56.577546" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:56.577592" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:56.574834" elapsed="0.002780"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:56.579382" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:56.577689" elapsed="0.001747"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.577668" elapsed="0.001791"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:56.579492" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:56.579683" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:56.579726" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 168 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:56.554085" elapsed="0.025663"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.581873" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.580307" elapsed="0.001611"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.580289" elapsed="0.001650"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.582515" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.582101" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.583049" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.582705" elapsed="0.000385"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:56.583141" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:56.583317" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:56.579963" elapsed="0.003379"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:56.583497" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:56.553506" elapsed="0.030436"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.591769" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:56.591334" elapsed="0.000462"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:56.606112" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:56.607061" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:56.607737" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:56.591925" elapsed="0.015872"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.608760" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.608187" elapsed="0.000673"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.612951" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;238000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;857000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;311000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;999000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;865000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;979000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;15000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;271000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;502000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;457000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;504000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;23000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;817000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;789000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;872000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;968000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.609214" elapsed="0.005119"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.616888" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.614448" elapsed="0.002508"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.614419" elapsed="0.002568"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:56.643448" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:56.643495" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:56.617202" elapsed="0.026316"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:56.645317" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:56.643595" elapsed="0.001778"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.643576" elapsed="0.001820"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:56.645429" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:56.645622" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:56.645665" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 168 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:56.590944" elapsed="0.054743"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.647925" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.646251" elapsed="0.001719"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.646233" elapsed="0.001761"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.648559" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.648157" elapsed="0.000429"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.649112" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.648748" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:56.649189" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:56.649366" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:56.645903" elapsed="0.003489"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:56.649548" elapsed="0.000386"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:56.590321" elapsed="0.059676"/>
</kw>
<arg>f45.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:56.534251" elapsed="0.115802"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:56.527465" elapsed="0.122722"/>
</test>
<test id="s1-s3-s1-t30" name="Test Is Flow 101 Added" line="107">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:56.661169" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f101.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f101.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:56.661319" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:56.661015" elapsed="0.000334"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:56.661925" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6bbf0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:56.661507" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:56.662416" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:56.662122" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:56.662872" level="INFO">${flow_id} = 224</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:56.662599" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:56.663333" level="INFO">${flow_priority} = 101</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:56.663048" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:56.664242" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:56.663509" elapsed="0.000763"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.664757" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.664427" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.665348" level="INFO">${flow_id} = 224</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.665005" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.665867" level="INFO">${flow_priority} = 101</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.665542" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.666387" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.666058" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.666935" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.666609" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.667467" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6bbf0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.667147" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:56.660668" elapsed="0.006895"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.668114" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.667716" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.668537" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;101&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;101&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.668298" elapsed="0.000304"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.676340" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:56.676024" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:56.683167" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=224?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=224?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:56.684081" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=224?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '929'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;224&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:56.684192" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:56.676497" elapsed="0.007721"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.684662" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.684411" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.686970" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;224&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.684854" elapsed="0.002202"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.689604" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.687177" elapsed="0.002495"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.687149" elapsed="0.002554"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:56.694196" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:56.694260" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:56.689899" elapsed="0.004394"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:56.696196" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:56.694424" elapsed="0.001828"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.694369" elapsed="0.001907"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:56.696309" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:56.696500" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:56.696544" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 224 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:56.675712" elapsed="0.020854"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.700513" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.697120" elapsed="0.003439"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.697101" elapsed="0.003480"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.701146" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.700733" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.701689" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.701336" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:56.701764" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:56.701941" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:56.696774" elapsed="0.005193"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:56.702138" elapsed="0.000396"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:56.675159" elapsed="0.027439"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.710362" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:56.710047" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:56.726484" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:56.727511" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:56.728258" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:56.710535" elapsed="0.017787"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.729350" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.728708" elapsed="0.000750"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.735028" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;238000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;857000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;311000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;999000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;865000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;979000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;15000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;271000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;502000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;457000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;504000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;23000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;817000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;789000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;872000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;968000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.729805" elapsed="0.006566"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.738921" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.736472" elapsed="0.002517"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.736444" elapsed="0.002576"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:56.770833" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:56.770881" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:56.739233" elapsed="0.031672"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:56.772699" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:56.770984" elapsed="0.001772"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.770965" elapsed="0.001815"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:56.772813" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:52:56.773009" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:56.773053" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 224 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:56.709670" elapsed="0.063421"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.775279" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.773643" elapsed="0.001681"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.773624" elapsed="0.001722"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.775901" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.775495" elapsed="0.000434"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.776467" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.776109" elapsed="0.000385"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:56.776544" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:56.776729" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:56.773309" elapsed="0.003445"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:56.776914" elapsed="0.000406"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:56.709040" elapsed="0.068344"/>
</kw>
<arg>f101.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:56.657265" elapsed="0.120178"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:56.650494" elapsed="0.127070"/>
</test>
<test id="s1-s3-s1-t31" name="Test Is Flow 102 Added" line="109">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:56.788551" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f102.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f102.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:56.788702" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:56.788410" elapsed="0.000321"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:56.789335" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7c4f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:56.788888" elapsed="0.000475"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:56.789798" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:56.789517" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:56.790283" level="INFO">${flow_id} = 225</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:56.789974" elapsed="0.000335"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:56.790820" level="INFO">${flow_priority} = 102</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:56.790531" elapsed="0.000316"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:56.791762" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:56.790999" elapsed="0.000794"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.792298" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.791950" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.792859" level="INFO">${flow_id} = 225</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.792537" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.793393" level="INFO">${flow_priority} = 102</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.793052" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.793897" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.793586" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.794439" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.794107" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.795134" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7c4f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.794642" elapsed="0.000536"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:56.788078" elapsed="0.007157"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.795776" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.795389" elapsed="0.000418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.796220" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;102&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;102&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.795960" elapsed="0.000325"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.803877" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:56.803577" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:56.811004" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=225?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=225?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:56.812124" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=225?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '1002'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;225&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:56.812316" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:56.804034" elapsed="0.008318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.812975" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.812619" elapsed="0.000421"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.816036" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;225&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.813266" elapsed="0.002878"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.818697" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.816245" elapsed="0.002501"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.816216" elapsed="0.002553"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:56.821885" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:56.821932" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:56.818910" elapsed="0.003046"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:56.823738" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:56.822031" elapsed="0.001764"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.822011" elapsed="0.001807"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:56.823852" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:52:56.824047" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:56.824109" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 225 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:56.803262" elapsed="0.020871"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.826430" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.824674" elapsed="0.001802"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.824656" elapsed="0.001850"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.827060" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.826659" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.827647" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.827266" elapsed="0.000407"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:56.827724" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:56.827902" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:56.824344" elapsed="0.003583"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:56.828101" elapsed="0.000389"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:56.802691" elapsed="0.025862"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.836359" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:56.836046" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:56.850691" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:56.851642" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:56.852323" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:56.836517" elapsed="0.015866"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.853340" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.852741" elapsed="0.000702"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.858910" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;238000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;857000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;311000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;999000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;865000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;979000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;15000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;271000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;502000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;457000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;504000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;23000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;817000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;789000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;872000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;968000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.853764" elapsed="0.006110"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.861704" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.859947" elapsed="0.001805"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.859927" elapsed="0.001848"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:56.892781" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:56.892829" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:56.861917" elapsed="0.030935"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:56.894654" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:56.892933" elapsed="0.001778"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.892913" elapsed="0.001822"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:56.894767" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:52:56.894962" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:56.895006" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 225 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:56.835671" elapsed="0.059357"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.897174" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.895599" elapsed="0.001620"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.895581" elapsed="0.001660"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.897795" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.897388" elapsed="0.000435"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.898357" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.897986" elapsed="0.000612"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:56.898715" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:52:56.898940" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:56.895263" elapsed="0.003703"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:56.899157" elapsed="0.000412"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:56.835043" elapsed="0.064590"/>
</kw>
<arg>f102.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:56.784830" elapsed="0.114867"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:56.777851" elapsed="0.121965"/>
</test>
<test id="s1-s3-s1-t32" name="Test Is Flow 103 Added" line="111">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:56.910579" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f103.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f103.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:56.910732" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:56.910435" elapsed="0.000325"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:56.911375" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc307e70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:56.910912" elapsed="0.000492"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:56.911840" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:56.911559" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:56.912304" level="INFO">${flow_id} = 226</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:56.912017" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:56.912752" level="INFO">${flow_priority} = 103</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:56.912480" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:56.913692" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:56.912928" elapsed="0.000794"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.914232" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.913879" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.914831" level="INFO">${flow_id} = 226</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.914502" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.915381" level="INFO">${flow_priority} = 103</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.915026" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.915889" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.915575" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.916579" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.916099" elapsed="0.000527"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.917123" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc307e70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:56.916780" elapsed="0.000386"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:56.910091" elapsed="0.007132"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.917765" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.917375" elapsed="0.000420"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.918208" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;103&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;103&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;1&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.917947" elapsed="0.000327"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.925928" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:56.925626" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:56.932217" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=226?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=226?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:56.932928" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=226?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '996'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;226&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:56.933040" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:56.926101" elapsed="0.006983"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.933536" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.933279" elapsed="0.000304"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.936191" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;226&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.933734" elapsed="0.002546"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.938827" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.936382" elapsed="0.002515"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.936353" elapsed="0.002576"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:56.943205" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:56.943251" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:56.939193" elapsed="0.004081"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:56.945018" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:56.943348" elapsed="0.001740"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.943329" elapsed="0.001784"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:56.945147" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:52:56.945343" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:56.945387" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 226 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:56.925307" elapsed="0.020102"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.947701" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.945946" elapsed="0.001800"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.945928" elapsed="0.001840"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.948327" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.947915" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.948864" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:56.948517" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:56.948939" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:56.949132" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:56.945618" elapsed="0.003539"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:56.949314" elapsed="0.000385"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:56.924721" elapsed="0.025042"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.957497" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:56.957196" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:56.973530" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:56.974502" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:56.975183" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:56.957656" elapsed="0.017588"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.976198" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.975599" elapsed="0.000701"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:56.981719" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;238000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;857000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;311000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;999000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;865000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;979000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;15000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;271000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;502000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;457000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;504000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;23000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;817000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;789000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;872000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;968000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:56.976627" elapsed="0.006612"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:56.985048" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:56.983313" elapsed="0.001800"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:56.983293" elapsed="0.001842"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:57.066907" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:57.066972" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:56.985281" elapsed="0.081716"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:57.068945" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:57.067135" elapsed="0.001869"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.067103" elapsed="0.001926"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:57.069079" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:52:57.069302" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:57.069346" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 226 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:56.956801" elapsed="0.112569"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.071570" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.069974" elapsed="0.001642"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.069955" elapsed="0.001683"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.072261" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.071792" elapsed="0.000498"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.072807" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.072454" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:57.072883" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:57.073062" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:57.069613" elapsed="0.003490"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:57.073262" elapsed="0.000400"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:56.956187" elapsed="0.117543"/>
</kw>
<arg>f103.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:56.906776" elapsed="0.167011"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:56.900003" elapsed="0.173910"/>
</test>
<test id="s1-s3-s1-t33" name="Test Is Flow 104 Added" line="113">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:57.084782" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f104.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f104.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:57.084943" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:57.084640" elapsed="0.000332"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:57.085572" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3040e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:57.085141" elapsed="0.000459"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:57.086039" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:57.085758" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:57.086533" level="INFO">${flow_id} = 227</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:57.086234" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:57.086982" level="INFO">${flow_priority} = 104</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:57.086713" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:57.088037" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:57.087181" elapsed="0.000901"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.088585" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.088247" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.089186" level="INFO">${flow_id} = 227</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.088846" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.089707" level="INFO">${flow_priority} = 104</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.089381" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.090231" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.089901" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.090761" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.090442" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.091297" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3040e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.090957" elapsed="0.000381"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:57.084309" elapsed="0.007085"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.091928" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.091542" elapsed="0.000416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.092368" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;104&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;104&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.092124" elapsed="0.000307"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.100188" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:57.099864" elapsed="0.000351"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:57.106937" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=227?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=227?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:57.107994" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=227?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '929'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;227&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:57.108177" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:57.100346" elapsed="0.007867"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.108862" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.108505" elapsed="0.000422"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.111914" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;227&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.109149" elapsed="0.002852"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.114541" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.112122" elapsed="0.002488"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.112091" elapsed="0.002549"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:57.119030" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:57.119090" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:57.114832" elapsed="0.004283"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:57.121035" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:57.119189" elapsed="0.001917"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.119170" elapsed="0.001960"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:57.121164" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:57.121358" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:57.121401" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 227 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:57.099549" elapsed="0.021875"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.123554" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.121965" elapsed="0.001634"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.121947" elapsed="0.001674"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.124185" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.123772" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.124722" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.124374" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:57.124798" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:52:57.124975" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:57.121634" elapsed="0.003365"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:57.125171" elapsed="0.000385"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:57.098977" elapsed="0.026642"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.133534" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:57.133210" elapsed="0.000351"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:57.148684" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:57.149630" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:57.150290" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:57.133697" elapsed="0.016652"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.151371" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.150750" elapsed="0.000721"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.155822" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;238000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;857000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;311000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;999000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;865000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;979000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;15000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;271000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;502000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;457000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;504000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;23000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;817000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;789000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;872000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;968000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.151794" elapsed="0.004998"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.158705" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.156865" elapsed="0.001889"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.156844" elapsed="0.001932"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:57.188332" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:57.188382" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:57.158917" elapsed="0.029489"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:57.190219" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:57.188489" elapsed="0.001787"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.188468" elapsed="0.001833"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:57.190335" elapsed="0.000048"/>
</return>
<msg time="2026-05-25T01:52:57.190554" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:57.190598" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 227 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:57.132808" elapsed="0.057813"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.192762" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.191203" elapsed="0.001604"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.191184" elapsed="0.001645"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.193408" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.192978" elapsed="0.000457"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.193947" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.193598" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:57.194023" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:57.194219" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:57.190847" elapsed="0.003397"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:57.194414" elapsed="0.000391"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:57.132166" elapsed="0.062702"/>
</kw>
<arg>f104.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:57.081041" elapsed="0.113884"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:57.074224" elapsed="0.120821"/>
</test>
<test id="s1-s3-s1-t34" name="Test Is Flow 105 Added" line="115">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:57.205962" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f105.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f105.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:57.206140" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:57.205820" elapsed="0.000350"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:57.206783" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe69490&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:57.206324" elapsed="0.000487"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:57.207266" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:57.206966" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:57.207718" level="INFO">${flow_id} = 228</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:57.207446" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:57.208185" level="INFO">${flow_priority} = 105</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:57.207897" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:57.209235" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:57.208363" elapsed="0.000904"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.209764" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.209426" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.210380" level="INFO">${flow_id} = 228</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.210011" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.210909" level="INFO">${flow_priority} = 105</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.210580" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.211439" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.211123" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.211958" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.211639" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.212493" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe69490&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.212172" elapsed="0.000363"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:57.205485" elapsed="0.007106"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.213143" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.212742" elapsed="0.000432"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.213570" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;105&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;105&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.213326" elapsed="0.000309"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.221298" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:57.220979" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:57.228371" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=228?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=228?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:57.229051" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=228?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '935'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;228&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:57.229178" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:57.221454" elapsed="0.007749"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.229652" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.229395" elapsed="0.000306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.231856" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;228&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.229849" elapsed="0.002069"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.233733" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.231990" elapsed="0.001792"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.231969" elapsed="0.001835"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:57.237974" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:57.238038" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:57.233943" elapsed="0.004146"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:57.240882" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:57.238196" elapsed="0.002767"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.238168" elapsed="0.002829"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:57.241043" elapsed="0.000067"/>
</return>
<msg time="2026-05-25T01:52:57.241346" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:57.241406" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 228 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:57.220659" elapsed="0.020778"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.243987" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.242213" elapsed="0.001820"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.242187" elapsed="0.001868"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.244620" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.244222" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.245176" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.244809" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:57.245252" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:57.245429" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:57.241729" elapsed="0.003725"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:57.245608" elapsed="0.000384"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:57.220107" elapsed="0.025948"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.253805" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:57.253508" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:57.273140" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:57.274055" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:57.274737" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:57.253961" elapsed="0.020836"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.275749" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.275182" elapsed="0.000667"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.281426" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;238000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;857000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;311000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;999000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;865000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;979000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;15000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;271000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;502000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;457000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;504000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;23000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;817000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;789000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;872000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;968000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.276208" elapsed="0.006920"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.284926" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.283202" elapsed="0.001772"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.283181" elapsed="0.001815"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:57.314450" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:57.314500" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:57.285149" elapsed="0.029375"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:57.316326" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:57.314603" elapsed="0.001779"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.314583" elapsed="0.001823"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:57.316439" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:57.316635" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:57.316679" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 228 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:57.253133" elapsed="0.063569"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.318865" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.317283" elapsed="0.001627"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.317265" elapsed="0.001667"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.319499" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.319093" elapsed="0.000433"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.320041" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.319688" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:57.320133" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:52:57.320311" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:57.316930" elapsed="0.003407"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:57.320493" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:57.252502" elapsed="0.068439"/>
</kw>
<arg>f105.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:57.202211" elapsed="0.118785"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:57.195253" elapsed="0.125878"/>
</test>
<test id="s1-s3-s1-t35" name="Test Is Flow 106 Added" line="117">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:57.332247" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f106.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f106.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:57.332388" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:57.332104" elapsed="0.000313"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:57.332999" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3efce0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:57.332568" elapsed="0.000459"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:57.333483" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:57.333198" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:57.333933" level="INFO">${flow_id} = 229</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:57.333662" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:57.334411" level="INFO">${flow_priority} = 106</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:57.334123" elapsed="0.000322"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:57.335466" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:57.334595" elapsed="0.000902"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.335989" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.335655" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.336601" level="INFO">${flow_id} = 229</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.336271" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.337156" level="INFO">${flow_priority} = 106</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.336797" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.337667" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.337353" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.338198" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.337864" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.338739" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3efce0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.338414" elapsed="0.000367"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:57.331755" elapsed="0.007081"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.339384" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.338986" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.339806" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;106&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;106&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.339565" elapsed="0.000305"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.347660" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:57.347361" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:57.354464" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=229?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=229?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:57.355168" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=229?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '940'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;229&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:57.355278" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:57.347821" elapsed="0.007482"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.355753" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.355494" elapsed="0.000305"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.357947" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;229&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.355942" elapsed="0.002066"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.359837" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.358093" elapsed="0.001792"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.358058" elapsed="0.001849"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:57.363345" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:57.363408" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:57.360045" elapsed="0.003397"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:57.366127" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:57.363544" elapsed="0.002663"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.363518" elapsed="0.002722"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:57.366287" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:52:57.366575" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:57.366637" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 229 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:57.347021" elapsed="0.019647"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.369661" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.367447" elapsed="0.002278"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.367421" elapsed="0.002334"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.370560" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.369962" elapsed="0.000636"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.371350" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.370834" elapsed="0.000553"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:57.371458" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:52:57.371710" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:57.366961" elapsed="0.004787"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:57.371968" elapsed="0.000565"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:57.346470" elapsed="0.026153"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.381100" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:57.380785" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:57.394769" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:57.395730" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:57.396410" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:57.381259" elapsed="0.015211"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.397431" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.396825" elapsed="0.000709"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.402847" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;238000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;857000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;311000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;999000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;865000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;979000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;15000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;271000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;502000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;457000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;504000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;23000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;817000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;789000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;872000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;968000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.397853" elapsed="0.005974"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.405643" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.403901" elapsed="0.001790"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.403880" elapsed="0.001833"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:57.435058" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:57.435136" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:57.405851" elapsed="0.029317"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:57.436957" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:57.435250" elapsed="0.001763"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.435229" elapsed="0.001808"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:57.437085" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:52:57.437285" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:57.437329" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 229 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:57.380406" elapsed="0.056946"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.440515" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.438793" elapsed="0.001768"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.438773" elapsed="0.001810"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.441175" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.440733" elapsed="0.000470"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.441722" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.441368" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:57.441798" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:57.441979" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:57.437654" elapsed="0.004351"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:57.442178" elapsed="0.000424"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:57.379772" elapsed="0.062894"/>
</kw>
<arg>f106.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:57.328310" elapsed="0.114418"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:57.321420" elapsed="0.121427"/>
</test>
<test id="s1-s3-s1-t36" name="Test Is Flow 107 Added" line="119">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:57.453786" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f107.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f107.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:57.453924" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:57.453645" elapsed="0.000308"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:57.454573" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e71a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:57.454119" elapsed="0.000483"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:57.455040" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:57.454760" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:57.455506" level="INFO">${flow_id} = 230</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:57.455234" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:57.455947" level="INFO">${flow_priority} = 107</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:57.455680" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:57.457042" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:57.456135" elapsed="0.000952"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.457580" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.457246" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.458164" level="INFO">${flow_id} = 230</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.457819" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.458707" level="INFO">${flow_priority} = 107</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.458372" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.459229" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.458901" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.459745" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.459428" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.460278" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e71a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.459942" elapsed="0.000377"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:57.453316" elapsed="0.007058"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.460915" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.460522" elapsed="0.000424"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.461353" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;107&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;107&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.461110" elapsed="0.000308"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.468983" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:57.468685" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:57.475497" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=230?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=230?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:57.476248" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=230?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '1034'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;230&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:57.476359" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:57.469155" elapsed="0.007266"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.476844" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.476584" elapsed="0.000306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.479028" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;230&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.477033" elapsed="0.002073"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.480888" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.479177" elapsed="0.001759"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.479157" elapsed="0.001801"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:57.484716" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:57.484780" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:57.481110" elapsed="0.003702"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:57.487499" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:57.484916" elapsed="0.002661"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.484889" elapsed="0.002721"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:57.487656" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:52:57.487923" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:57.487983" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 230 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:57.468370" elapsed="0.019644"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.490941" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.488791" elapsed="0.002196"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.488767" elapsed="0.002242"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.491569" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.491170" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.492125" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.491758" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:57.492202" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:57.492380" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:57.488327" elapsed="0.004078"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:57.492559" elapsed="0.000385"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:57.467804" elapsed="0.025203"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.500779" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:57.500483" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:57.514507" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:57.515565" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:57.516226" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:57.500934" elapsed="0.015352"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.517236" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.516640" elapsed="0.000698"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.522782" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;556000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;592000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;638000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;202000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;238000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;272000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;857000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;311000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;999000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;865000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;979000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;15000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;271000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;469000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;502000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;457000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;504000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;23000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;622000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;817000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;839000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;789000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;872000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;907000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;936000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;968000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.517659" elapsed="0.006075"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.525549" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.523807" elapsed="0.001790"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.523787" elapsed="0.001832"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:57.554413" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:57.554461" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:57.525758" elapsed="0.028726"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:57.556289" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:57.554565" elapsed="0.001780"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.554544" elapsed="0.001825"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:57.556402" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:57.556596" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:57.556639" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 230 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:57.500107" elapsed="0.056555"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.558920" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.557335" elapsed="0.001630"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.557316" elapsed="0.001671"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.559554" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.559149" elapsed="0.000432"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.560112" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.559744" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:57.560190" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:57.560368" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:57.556876" elapsed="0.003517"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:57.560549" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:57.499485" elapsed="0.061511"/>
</kw>
<arg>f107.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:57.449887" elapsed="0.111165"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:57.443138" elapsed="0.118047"/>
</test>
<test id="s1-s3-s1-t37" name="Test Is Flow 108 Added" line="121">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:57.572039" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f108.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f108.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:57.572208" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:57.571901" elapsed="0.000337"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:57.572826" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4d89f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:57.572396" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:57.573305" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:57.573007" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:57.573749" level="INFO">${flow_id} = 231</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:57.573482" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:57.574207" level="INFO">${flow_priority} = 108</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:57.573923" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:57.575319" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:57.574397" elapsed="0.000953"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.575841" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.575509" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.576426" level="INFO">${flow_id} = 231</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.576097" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.576959" level="INFO">${flow_priority} = 108</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.576632" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.577484" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.577170" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.577998" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.577681" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.578563" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4d89f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.578210" elapsed="0.000395"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:57.571567" elapsed="0.007094"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.579228" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.578813" elapsed="0.000446"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.579656" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;108&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;108&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.579413" elapsed="0.000308"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.587438" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:57.587134" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:57.592742" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=231?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=231?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:57.593502" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=231?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '1041'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;231&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:57.593613" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:57.587604" elapsed="0.006092"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.594132" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.593862" elapsed="0.000317"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.596339" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;231&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.594339" elapsed="0.002063"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.598225" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.596477" elapsed="0.001798"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.596455" elapsed="0.001842"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:57.602704" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:57.602770" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:57.598480" elapsed="0.004322"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:57.605478" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:57.602906" elapsed="0.002650"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.602879" elapsed="0.002710"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:57.605635" elapsed="0.000041"/>
</return>
<msg time="2026-05-25T01:52:57.605904" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:57.605965" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 231 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:57.586801" elapsed="0.019195"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.608991" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.606786" elapsed="0.002269"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.606761" elapsed="0.002345"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.609881" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.609311" elapsed="0.000608"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.610883" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.610170" elapsed="0.000739"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:57.610984" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:57.611180" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:57.606310" elapsed="0.004896"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:57.611364" elapsed="0.000385"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:57.586147" elapsed="0.025665"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.619581" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:57.619282" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:57.629401" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:57.633695" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;et... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:57.634421" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:57.619737" elapsed="0.014747"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.635191" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.634802" elapsed="0.000453"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.638654" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;895000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;986000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;223000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;87000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;471000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;495000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;619000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;660000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;876000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;909000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;144000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;985000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;5000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.635458" elapsed="0.004517"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.642544" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.640095" elapsed="0.002518"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.640050" elapsed="0.002594"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:57.672462" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:57.672510" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:57.642846" elapsed="0.029689"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:57.674365" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:57.672616" elapsed="0.001807"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.672595" elapsed="0.001852"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:57.674480" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:57.674676" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:57.674721" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 231 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:57.618887" elapsed="0.055857"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.676888" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.675314" elapsed="0.001620"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.675296" elapsed="0.001659"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.677530" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.677119" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.678093" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.677724" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:57.678172" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:57.678363" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:57.674960" elapsed="0.003429"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:57.678546" elapsed="0.000389"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:57.618260" elapsed="0.060739"/>
</kw>
<arg>f108.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:57.568284" elapsed="0.110773"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:57.561442" elapsed="0.117751"/>
</test>
<test id="s1-s3-s1-t38" name="Test Is Flow 109 Added" line="123">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:57.690092" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f109.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f109.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:57.690244" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:57.689935" elapsed="0.000338"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:57.690888" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bee30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:57.690446" elapsed="0.000470"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:57.691372" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:57.691087" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:57.691822" level="INFO">${flow_id} = 232</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:57.691551" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:57.692292" level="INFO">${flow_priority} = 109</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:57.692000" elapsed="0.000319"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:57.693396" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:57.692470" elapsed="0.000957"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.693921" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.693587" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.694523" level="INFO">${flow_id} = 232</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.694179" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.695048" level="INFO">${flow_priority} = 109</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.694721" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.695583" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.695270" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.696113" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.695779" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.696630" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bee30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.696311" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:57.689604" elapsed="0.007121"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.697272" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.696874" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.697695" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;109&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;109&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.697454" elapsed="0.000306"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.705396" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:57.705094" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:57.712314" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=232?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=232?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:57.713042" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=232?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '1037'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;232&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:57.713170" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:57.705552" elapsed="0.007671"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.713642" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.713387" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.716332" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;232&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.713838" elapsed="0.002583"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.718979" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.716520" elapsed="0.002528"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.716492" elapsed="0.002608"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:57.723586" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:57.723650" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:57.719300" elapsed="0.004384"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:57.726392" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:57.723793" elapsed="0.002680"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.723766" elapsed="0.002741"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:57.726554" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:52:57.726829" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:57.726881" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 232 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:57.704766" elapsed="0.022138"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.729038" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.727466" elapsed="0.001631"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.727448" elapsed="0.001672"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.729667" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.729267" elapsed="0.000427"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.730226" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.729856" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:57.730303" elapsed="0.000181"/>
</return>
<msg time="2026-05-25T01:52:57.730641" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:57.727132" elapsed="0.003534"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:57.730825" elapsed="0.000404"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:57.704211" elapsed="0.027082"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.739132" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:57.738816" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:57.753582" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:57.754176" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;et... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:57.754586" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:57.739291" elapsed="0.015332"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.755229" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.754853" elapsed="0.000441"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.758660" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;895000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;986000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;223000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;87000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;471000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;495000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;619000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;660000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;876000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;909000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;144000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;985000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;5000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.755494" elapsed="0.004484"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.762525" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.760095" elapsed="0.002497"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.760050" elapsed="0.002573"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:57.792132" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:57.792180" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:57.762818" elapsed="0.029386"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:57.795408" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:57.792284" elapsed="0.003182"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.792264" elapsed="0.003227"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:57.795524" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:52:57.795730" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:57.795775" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 232 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:57.738432" elapsed="0.057366"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.797971" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.796383" elapsed="0.001633"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.796365" elapsed="0.001674"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.798667" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.798206" elapsed="0.000489"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.799239" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.798859" elapsed="0.000406"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:57.799315" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:57.799492" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:57.796021" elapsed="0.003496"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:57.799674" elapsed="0.000410"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:57.737776" elapsed="0.062375"/>
</kw>
<arg>f109.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:57.686290" elapsed="0.113918"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:57.679479" elapsed="0.120849"/>
</test>
<test id="s1-s3-s1-t39" name="Test Is Flow 110 Added" line="125">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:57.811171" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f110.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f110.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:57.811344" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:57.811016" elapsed="0.000358"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:57.811943" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc091b20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:57.811525" elapsed="0.000447"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:57.812420" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:57.812140" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:57.812863" level="INFO">${flow_id} = 233</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:57.812595" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:57.813319" level="INFO">${flow_priority} = 110</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:57.813036" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:57.814355" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:57.813493" elapsed="0.000900"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.814887" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.814551" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.815479" level="INFO">${flow_id} = 233</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.815153" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.816001" level="INFO">${flow_priority} = 110</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.815674" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.816524" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.816210" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.817037" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.816719" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.817569" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc091b20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.817249" elapsed="0.000362"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:57.810681" elapsed="0.006984"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.818211" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cooki...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.817813" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.818663" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;110&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;110&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;push-vlan-action&gt;
                        &lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;
                        &lt;vlan-id&gt;1234&lt;/vlan-id&gt;
                    &lt;/push-vlan-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.818421" elapsed="0.000304"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.826352" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:57.826017" elapsed="0.000365"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:57.832993" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=233?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=233?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:57.833637" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=233?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '855'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;233&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:57.833747" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:57.826513" elapsed="0.007260"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.834207" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.833934" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.836454" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;233&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.834451" elapsed="0.002065"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.838361" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.836589" elapsed="0.001823"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.836567" elapsed="0.001867"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:57.842695" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:57.842765" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:57.838575" elapsed="0.004223"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:57.845471" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:57.842902" elapsed="0.002647"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.842876" elapsed="0.002705"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:57.845628" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:52:57.845895" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:57.845955" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 233 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:57.825700" elapsed="0.020287"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.848361" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.846789" elapsed="0.001618"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.846771" elapsed="0.001658"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.848974" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.848573" elapsed="0.000428"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.849528" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.849179" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:57.849603" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:52:57.849778" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:57.846342" elapsed="0.003461"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:57.849958" elapsed="0.000409"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:57.825144" elapsed="0.025286"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.858188" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:57.857874" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:57.872447" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:57.873395" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;et... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:57.874023" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:57.858378" elapsed="0.015735"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.874955" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.874526" elapsed="0.000492"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.878426" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;895000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;986000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;223000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;87000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;471000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;495000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;619000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;660000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;876000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;909000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;144000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;985000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;5000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.875242" elapsed="0.004506"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.882375" elapsed="0.000029"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.879849" elapsed="0.002608"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.879821" elapsed="0.002667"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:57.911023" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:57.911085" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:57.882684" elapsed="0.028427"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:57.912894" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:57.911190" elapsed="0.001760"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.911171" elapsed="0.001803"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:57.913007" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:57.913240" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:57.913285" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 233 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:57.857499" elapsed="0.055810"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.915456" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.913857" elapsed="0.001644"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.913839" elapsed="0.001684"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.916091" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.915669" elapsed="0.000451"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.916634" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.916283" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:57.916710" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:57.916888" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:57.913525" elapsed="0.003389"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:57.917086" elapsed="0.000388"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:57.856874" elapsed="0.060664"/>
</kw>
<arg>f110.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:57.807419" elapsed="0.110176"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:57.800607" elapsed="0.117103"/>
</test>
<test id="s1-s3-s1-t40" name="Test Is Flow 113 Added" line="127">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:57.928686" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f113.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f113.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:57.928824" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:57.928548" elapsed="0.000309"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:57.929455" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3887c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:57.929012" elapsed="0.000471"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:57.929959" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:57.929636" elapsed="0.000349"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:57.930514" level="INFO">${flow_id} = 236</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:57.930193" elapsed="0.000347"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:57.930976" level="INFO">${flow_priority} = 113</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:57.930693" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:57.933801" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:57.931171" elapsed="0.002662"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.934414" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.933994" elapsed="0.000464"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.934986" level="INFO">${flow_id} = 236</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.934657" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.935528" level="INFO">${flow_priority} = 113</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.935198" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.936036" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.935722" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.936571" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.936249" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.937112" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3887c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:57.936768" elapsed="0.000388"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:57.928218" elapsed="0.008994"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.937750" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cooki...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.937364" elapsed="0.000416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.938191" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;113&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;113&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;push-mpls-action&gt;
                        &lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;
                    &lt;/push-mpls-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.937933" elapsed="0.000323"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.945983" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:57.945681" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:57.953657" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=236?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=236?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:57.954692" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=236?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '1007'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;236&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:57.954865" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:57.946157" elapsed="0.008744"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.955548" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.955189" elapsed="0.000422"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.958633" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;236&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.955817" elapsed="0.002903"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.961283" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.958820" elapsed="0.002531"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.958791" elapsed="0.002591"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:57.965766" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:57.965830" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:57.961577" elapsed="0.004286"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:57.968585" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:57.965968" elapsed="0.002694"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.965941" elapsed="0.002755"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:57.968741" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:52:57.969009" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:57.969090" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 236 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:57.945364" elapsed="0.023760"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:57.972102" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:57.969873" elapsed="0.002294"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:57.969848" elapsed="0.002349"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.972952" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.972400" elapsed="0.000589"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.973833" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:57.973236" elapsed="0.000623"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:57.973909" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:52:57.974107" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:57.969415" elapsed="0.004718"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:57.974290" elapsed="0.000424"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:57.944790" elapsed="0.029986"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.982500" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:57.982159" elapsed="0.000368"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:57.997323" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:57.998331" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;et... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:57.998968" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:57.982658" elapsed="0.016368"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:57.999983" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:57.999415" elapsed="0.000700"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.004468" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;895000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;986000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;223000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;87000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;471000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;495000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;619000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;660000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;876000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;909000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;144000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;985000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;5000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.000439" elapsed="0.005352"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.008341" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.005891" elapsed="0.002516"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.005863" elapsed="0.002575"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:58.040687" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:58.040735" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:58.008630" elapsed="0.032129"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:58.042589" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:58.040837" elapsed="0.001809"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.040817" elapsed="0.001853"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:58.042704" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:58.042901" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:58.042947" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 236 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:57.981769" elapsed="0.061201"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.045129" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.043538" elapsed="0.001637"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.043519" elapsed="0.001678"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.045750" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.045345" elapsed="0.000433"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.046337" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.045940" elapsed="0.000431"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:58.046421" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:58.046598" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:58.043203" elapsed="0.003421"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:58.046779" elapsed="0.000401"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:57.981160" elapsed="0.066083"/>
</kw>
<arg>f113.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:57.924884" elapsed="0.122415"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:57.917965" elapsed="0.129452"/>
</test>
<test id="s1-s3-s1-t41" name="Test Is Flow 156 Added" line="129">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:58.058314" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f156.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f156.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:58.058494" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:58.058150" elapsed="0.000376"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:58.059108" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38aed0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:58.058679" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:58.059570" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:58.059290" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:58.060014" level="INFO">${flow_id} = 279</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:58.059746" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:58.060472" level="INFO">${flow_priority} = 156</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:58.060205" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:58.061339" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:58.060646" elapsed="0.000723"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.061856" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.061526" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.062453" level="INFO">${flow_id} = 279</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.062109" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.062970" level="INFO">${flow_priority} = 156</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.062648" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.063489" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.063178" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.063998" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.063683" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.064525" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38aed0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.064207" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:58.057811" elapsed="0.006809"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.065164" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.064769" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.065583" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;279&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
      &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;156&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf156&lt;/flow-name&gt;
    &lt;priority&gt;156&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.065345" elapsed="0.000299"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.075790" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:58.075347" elapsed="0.000477"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:58.083246" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=279?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=279?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:58.083894" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=279?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '761'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:58.084060" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:58.076049" elapsed="0.008069"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.084703" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.084345" elapsed="0.000422"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.087846" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.084968" elapsed="0.003014"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.090565" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.088114" elapsed="0.002521"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.088062" elapsed="0.002605"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:58.094735" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:58.094781" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:58.090864" elapsed="0.003940"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:58.096562" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:58.094877" elapsed="0.001740"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.094858" elapsed="0.001783"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:58.096674" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:52:58.096869" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:58.096912" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 279 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:58.074954" elapsed="0.021980"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.099083" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.097491" elapsed="0.001640"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.097473" elapsed="0.001680"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.099700" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.099301" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.100252" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.099887" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:58.100328" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:58.100504" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:58.097162" elapsed="0.003367"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:58.100684" elapsed="0.000400"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:58.074221" elapsed="0.026928"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.109091" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:58.108772" elapsed="0.000351"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:58.124641" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:58.125589" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;et... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:58.126267" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:58.109254" elapsed="0.017112"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.127330" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.126727" elapsed="0.000703"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.132863" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;895000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;986000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;223000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;87000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;471000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;495000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;619000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;660000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;876000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;909000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;144000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;985000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;5000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.127750" elapsed="0.007220"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.136779" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.135044" elapsed="0.001783"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.135024" elapsed="0.001826"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:58.167275" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:58.167324" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:58.136991" elapsed="0.030357"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:58.169142" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:58.167427" elapsed="0.001772"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.167407" elapsed="0.001816"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:58.169256" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:52:58.169455" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:58.169499" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 279 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:58.108389" elapsed="0.061133"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.171750" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.170089" elapsed="0.001707"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.170055" elapsed="0.001764"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.172396" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.171968" elapsed="0.000456"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.172944" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.172589" elapsed="0.000382"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:58.173021" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:58.173215" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:58.169739" elapsed="0.003502"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:58.173396" elapsed="0.000388"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:58.107759" elapsed="0.066089"/>
</kw>
<arg>f156.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:58.054519" elapsed="0.119389"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:58.047692" elapsed="0.126341"/>
</test>
<test id="s1-s3-s1-t42" name="Test Is Flow 201 Added" line="131">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:58.185020" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f201.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f201.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:58.185186" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:58.184880" elapsed="0.000335"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:58.185794" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1d530&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:58.185366" elapsed="0.000456"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:58.186306" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:58.185981" elapsed="0.000358"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:58.186775" level="INFO">${flow_id} = 324</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:58.186501" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:58.187234" level="INFO">${flow_priority} = 201</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:58.186949" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:58.188116" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:58.187409" elapsed="0.000738"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.188636" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.188304" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.189218" level="INFO">${flow_id} = 324</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.188877" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.189745" level="INFO">${flow_priority} = 201</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.189414" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.190265" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.189937" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.190794" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.190477" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.191327" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1d530&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.190989" elapsed="0.000380"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:58.184547" elapsed="0.006877"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.191955" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cook...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.191572" elapsed="0.000414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.192390" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;201&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;201&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.192150" elapsed="0.000302"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.200286" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:58.199962" elapsed="0.000351"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:58.207847" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=324?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=324?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:58.208510" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=324?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '869'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;324&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:58.208620" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:58.200447" elapsed="0.008198"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.209057" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.208803" elapsed="0.000347"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.211592" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;324&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.209297" elapsed="0.002378"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.214212" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.211774" elapsed="0.002517"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.211746" elapsed="0.002577"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:58.218771" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:58.218836" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:58.214518" elapsed="0.004350"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:58.221366" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:58.218971" elapsed="0.002472"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.218945" elapsed="0.002531"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:58.221523" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:52:58.221792" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:58.221853" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 324 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:58.199643" elapsed="0.022242"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.226237" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.222692" elapsed="0.003603"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.222667" elapsed="0.003651"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.226865" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.226467" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.227422" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.227053" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:58.227498" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:58.227674" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:58.222196" elapsed="0.005503"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:58.227858" elapsed="0.000401"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:58.199083" elapsed="0.029240"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.236149" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:58.235835" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:58.250030" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:58.250681" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;et... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:58.251356" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:58.236305" elapsed="0.015112"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.252390" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.251782" elapsed="0.000708"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.257927" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;895000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;986000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;223000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;87000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;471000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;495000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;619000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;660000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;876000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;909000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;144000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;985000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;5000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.252816" elapsed="0.007286"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.263385" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.260265" elapsed="0.003169"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.260220" elapsed="0.003236"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:58.288194" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:58.288243" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:58.263595" elapsed="0.024672"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:58.290187" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:58.288345" elapsed="0.001900"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.288326" elapsed="0.001943"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:58.290334" elapsed="0.000032"/>
</return>
<msg time="2026-05-25T01:52:58.290535" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:58.290580" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 324 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:58.235458" elapsed="0.055145"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.292741" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.291172" elapsed="0.001614"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.291154" elapsed="0.001653"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.293374" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.292954" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.293921" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.293564" elapsed="0.000383"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:58.293996" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:58.294190" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:58.290824" elapsed="0.003391"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:58.294385" elapsed="0.000390"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:58.234828" elapsed="0.060010"/>
</kw>
<arg>f201.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:58.181219" elapsed="0.113675"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:58.174373" elapsed="0.120637"/>
</test>
<test id="s1-s3-s1-t43" name="Test Is Flow 202 Added" line="133">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:58.305798" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f202.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f202.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:58.305935" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:58.305661" elapsed="0.000303"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:58.306562" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1e700&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:58.306128" elapsed="0.000463"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:58.307023" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:58.306745" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:58.307486" level="INFO">${flow_id} = 325</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:58.307218" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:58.307925" level="INFO">${flow_priority} = 202</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:58.307661" elapsed="0.000289"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:58.308797" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:58.308114" elapsed="0.000713"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.309330" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.308981" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.309891" level="INFO">${flow_id} = 325</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.309562" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.310457" level="INFO">${flow_priority} = 202</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.310100" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.310963" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.310651" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.311496" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.311176" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.312008" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1e700&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.311691" elapsed="0.000358"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:58.305335" elapsed="0.006786"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.312647" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cook...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.312270" elapsed="0.000407"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.313083" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;202&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;202&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.312831" elapsed="0.000316"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.320939" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:58.320640" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:58.327116" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=325?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=325?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:58.327739" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=325?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '879'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;325&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:58.327846" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:58.321112" elapsed="0.006760"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.328299" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.328029" elapsed="0.000349"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.330542" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;325&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.328522" elapsed="0.002080"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.333134" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.330673" elapsed="0.002528"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.330653" elapsed="0.002579"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:58.337597" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:58.337662" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:58.333426" elapsed="0.004268"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:58.340211" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:58.337797" elapsed="0.002492"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.337770" elapsed="0.002551"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:58.340367" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:52:58.340636" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:58.340697" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 325 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:58.320326" elapsed="0.020402"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.343596" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.341502" elapsed="0.002140"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.341477" elapsed="0.002187"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.344226" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.343810" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.344771" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.344416" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:58.344846" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:52:58.345021" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:58.341022" elapsed="0.004024"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:58.345219" elapsed="0.000380"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:58.319759" elapsed="0.025904"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.353342" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:58.353028" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:58.369195" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:58.370145" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;et... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:58.370879" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:58.353498" elapsed="0.017440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.371919" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.371337" elapsed="0.000682"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.377516" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;895000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;986000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;223000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;87000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;471000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;495000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;619000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;660000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;876000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;909000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;144000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;985000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;5000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.372376" elapsed="0.007398"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.383331" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.379948" elapsed="0.003435"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.379901" elapsed="0.003505"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:58.410259" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:58.410329" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:58.383549" elapsed="0.026809"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:58.412152" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:58.410439" elapsed="0.001770"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.410419" elapsed="0.001814"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:58.412266" elapsed="0.000035"/>
</return>
<msg time="2026-05-25T01:52:58.412473" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:58.412516" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 325 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:58.352654" elapsed="0.059884"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.414740" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.413143" elapsed="0.001642"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.413125" elapsed="0.001682"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.415393" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.414957" elapsed="0.000463"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.415939" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.415588" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:58.416021" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:58.416216" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:58.412783" elapsed="0.003458"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:58.416398" elapsed="0.000394"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:58.352034" elapsed="0.064822"/>
</kw>
<arg>f202.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:58.302059" elapsed="0.114853"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:58.295269" elapsed="0.121767"/>
</test>
<test id="s1-s3-s1-t44" name="Test Is Flow 203 Added" line="135">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:58.427967" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f203.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f203.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:58.428144" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:58.427826" elapsed="0.000348"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:58.428744" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38ac50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:58.428326" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:58.429224" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:58.428925" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:58.429669" level="INFO">${flow_id} = 326</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:58.429401" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:58.430140" level="INFO">${flow_priority} = 203</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:58.429850" elapsed="0.000317"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:58.431025" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:58.430339" elapsed="0.000717"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.431567" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.431231" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.432150" level="INFO">${flow_id} = 326</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.431807" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.432679" level="INFO">${flow_priority} = 203</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.432348" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.433206" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.432875" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.433728" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.433407" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.434299" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38ac50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.433927" elapsed="0.000416"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:58.427497" elapsed="0.006906"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.434938" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cook...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.434555" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.435383" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;203&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;203&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.435140" elapsed="0.000306"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.443321" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:58.442996" elapsed="0.000352"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:58.450202" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=326?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=326?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:58.450946" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=326?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '870'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;326&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:58.451120" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:58.443479" elapsed="0.007679"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.451742" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.451382" elapsed="0.000472"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.454867" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;326&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.452059" elapsed="0.002894"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.457491" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.455053" elapsed="0.002506"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.455025" elapsed="0.002565"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:58.462056" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:58.462142" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:58.457783" elapsed="0.004393"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:58.464204" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:58.462309" elapsed="0.001951"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.462253" elapsed="0.002030"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:58.464316" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:58.464508" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:58.464552" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 326 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:58.442678" elapsed="0.021896"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.466719" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.465135" elapsed="0.001628"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.465117" elapsed="0.001668"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.467352" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.466931" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.467903" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.467542" elapsed="0.000387"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:58.467978" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:58.468172" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:58.464790" elapsed="0.003407"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:58.468353" elapsed="0.000383"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:58.442043" elapsed="0.026756"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.476880" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:58.476574" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:58.490702" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:58.491637" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;et... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:58.492361" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:58.477038" elapsed="0.015384"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.493397" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.492784" elapsed="0.000715"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.499015" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;895000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;986000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;223000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;87000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;471000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;495000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;619000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;660000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;876000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;909000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;144000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;985000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;5000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.493821" elapsed="0.007450"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.503965" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.501436" elapsed="0.002578"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.501391" elapsed="0.002645"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:58.580167" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:58.580233" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:58.504191" elapsed="0.076067"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:58.582271" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:58.580386" elapsed="0.001953"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.580353" elapsed="0.002016"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:58.582407" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:52:58.582632" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:58.582677" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 326 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:58.476148" elapsed="0.106551"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.584898" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.583338" elapsed="0.001605"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.583319" elapsed="0.001646"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.585606" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.585133" elapsed="0.000500"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.586167" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.585798" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:58.586243" elapsed="0.000068"/>
</return>
<msg time="2026-05-25T01:52:58.586477" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:58.582952" elapsed="0.003550"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:58.586700" elapsed="0.000427"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:58.475432" elapsed="0.111760"/>
</kw>
<arg>f203.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:58.424227" elapsed="0.163023"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:58.417354" elapsed="0.170022"/>
</test>
<test id="s1-s3-s1-t45" name="Test Is Flow 204 Added" line="137">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:58.598278" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f204.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f204.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:58.598445" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:58.598111" elapsed="0.000363"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:58.599049" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1c4f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:58.598626" elapsed="0.000469"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:58.599531" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:58.599250" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:58.599972" level="INFO">${flow_id} = 327</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:58.599706" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:58.600429" level="INFO">${flow_priority} = 204</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:58.600161" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:58.601451" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:58.600603" elapsed="0.000880"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.601977" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.601643" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.602719" level="INFO">${flow_id} = 327</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.602386" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.603277" level="INFO">${flow_priority} = 204</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.602918" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.603788" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.603473" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.604327" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.603986" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.604844" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1c4f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.604525" elapsed="0.000360"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:58.597752" elapsed="0.007189"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.605490" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cook...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.605106" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.605914" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;204&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;204&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.605673" elapsed="0.000303"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.613640" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:58.613332" elapsed="0.000335"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:58.620380" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=327?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=327?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:58.621037" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=327?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '880'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;327&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:58.621164" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:58.613800" elapsed="0.007390"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.621605" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.621351" elapsed="0.000335"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.623831" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;327&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.621834" elapsed="0.002058"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.625697" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.623964" elapsed="0.001787"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.623943" elapsed="0.001830"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:58.629916" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:58.629982" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:58.625913" elapsed="0.004102"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:58.632764" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:58.630140" elapsed="0.002701"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.630112" elapsed="0.002762"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:58.632919" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:52:58.633222" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:58.633283" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 327 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:58.612997" elapsed="0.020317"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.635955" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.634086" elapsed="0.001915"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.634042" elapsed="0.001981"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.636600" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.636186" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.637166" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.636794" elapsed="0.000398"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:58.637242" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:58.637419" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:58.633607" elapsed="0.003837"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:58.637600" elapsed="0.000388"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:58.612445" elapsed="0.025605"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.645831" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:58.645534" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:58.660527" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:58.661477" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;et... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:58.662132" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:58.645987" elapsed="0.016207"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.663017" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.662610" elapsed="0.000491"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.666501" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;895000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;986000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;223000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;87000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;471000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;495000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;619000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;660000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;876000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;909000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;144000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;985000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;5000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.663311" elapsed="0.004572"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.670447" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.667985" elapsed="0.002529"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.667956" elapsed="0.002589"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:58.696796" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:58.696843" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:58.670742" elapsed="0.026124"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:58.698718" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:58.696946" elapsed="0.001829"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.696926" elapsed="0.001873"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:58.698833" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:52:58.699031" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:58.699091" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 327 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:58.645157" elapsed="0.053958"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.701315" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.699673" elapsed="0.001687"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.699654" elapsed="0.001728"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.701943" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.701530" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.702526" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.702150" elapsed="0.000401"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:58.702601" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:52:58.702777" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:58.699337" elapsed="0.003465"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:58.702959" elapsed="0.000410"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:58.644532" elapsed="0.058900"/>
</kw>
<arg>f204.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:58.594514" elapsed="0.108976"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:58.587701" elapsed="0.115909"/>
</test>
<test id="s1-s3-s1-t46" name="Test Is Flow 205 Added" line="139">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:58.714740" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f205.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f205.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:58.714888" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:58.714596" elapsed="0.000321"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:58.715511" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38a430&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:58.715082" elapsed="0.000457"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:58.715974" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:58.715692" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:58.716439" level="INFO">${flow_id} = 328</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:58.716168" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:58.716889" level="INFO">${flow_priority} = 205</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:58.716615" elapsed="0.000301"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:58.717959" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:58.717081" elapsed="0.000908"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.718548" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.718165" elapsed="0.000426"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.719137" level="INFO">${flow_id} = 328</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.718794" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.719666" level="INFO">${flow_priority} = 205</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.719337" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.720188" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.719861" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.720707" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.720386" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.721240" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38a430&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.720902" elapsed="0.000380"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:58.714209" elapsed="0.007129"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.721877" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.721494" elapsed="0.000414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.722335" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;328&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;205&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;
    &lt;priority&gt;205&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.722060" elapsed="0.000341"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.730013" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:58.729710" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:58.735881" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=328?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=328?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:58.736612" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=328?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '999'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:58.736725" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:58.730192" elapsed="0.006559"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.737229" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.736956" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.739753" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.737418" elapsed="0.002422"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.742387" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.739940" elapsed="0.002516"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.739911" elapsed="0.002575"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:58.747040" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:58.747125" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:58.742825" elapsed="0.004334"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:58.749813" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:58.747264" elapsed="0.002626"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.747237" elapsed="0.002686"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:58.749969" elapsed="0.000042"/>
</return>
<msg time="2026-05-25T01:52:58.750302" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:58.750366" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 328 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:58.729394" elapsed="0.021004"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.752699" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.751128" elapsed="0.001616"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.751110" elapsed="0.001655"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.753330" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.752912" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.753867" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.753518" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:58.753943" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:52:58.754137" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:58.750697" elapsed="0.003466"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:58.754335" elapsed="0.000386"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:58.728821" elapsed="0.025969"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.762546" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:58.762195" elapsed="0.000378"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:58.777482" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:58.778490" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;et... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:58.779196" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:58.762703" elapsed="0.016554"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.780220" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.779612" elapsed="0.000711"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.785738" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;895000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;986000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;223000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;87000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;471000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;495000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;619000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;660000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;876000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;909000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;144000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;985000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;5000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.780648" elapsed="0.007233"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.791361" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.788044" elapsed="0.003365"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.787999" elapsed="0.003432"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:58.816358" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:58.816406" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:58.791570" elapsed="0.024860"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:58.818263" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:58.816510" elapsed="0.001810"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.816490" elapsed="0.001854"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:58.818385" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:58.818584" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:58.818628" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 328 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:58.761805" elapsed="0.056846"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.820791" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.819221" elapsed="0.001615"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.819203" elapsed="0.001655"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.821431" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.821005" elapsed="0.000454"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.821975" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.821622" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:58.822050" elapsed="0.000043"/>
</return>
<msg time="2026-05-25T01:52:58.822277" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:58.818869" elapsed="0.003435"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:58.822465" elapsed="0.000388"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:58.761193" elapsed="0.061724"/>
</kw>
<arg>f205.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:58.710937" elapsed="0.112038"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:58.704136" elapsed="0.118975"/>
</test>
<test id="s1-s3-s1-t47" name="Test Is Flow 206 Added" line="141">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:58.833992" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f206.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f206.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:58.834156" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:58.833853" elapsed="0.000332"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:58.834798" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bd800&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:58.834368" elapsed="0.000459"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:58.835283" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:58.834981" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:58.835733" level="INFO">${flow_id} = 329</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:58.835462" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:58.836195" level="INFO">${flow_priority} = 206</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:58.835910" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:58.837276" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:58.836373" elapsed="0.000934"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.837801" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.837466" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.838400" level="INFO">${flow_id} = 329</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.838036" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.838930" level="INFO">${flow_priority} = 206</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.838599" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.839462" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.839144" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.839980" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.839660" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.840518" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bd800&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.840194" elapsed="0.000366"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:58.833527" elapsed="0.007088"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.841166" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.840766" elapsed="0.000431"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.841592" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;329&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;206&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;
    &lt;priority&gt;206&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.841351" elapsed="0.000306"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.849452" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:58.849151" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:58.855711" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=329?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=329?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:58.856759" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=329?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '1007'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:58.856914" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:58.849608" elapsed="0.007342"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.857604" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.857243" elapsed="0.000425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.860712" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.857875" elapsed="0.002925"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.863361" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.860898" elapsed="0.002532"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.860870" elapsed="0.002596"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:58.867597" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:58.867644" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:58.863663" elapsed="0.004004"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:58.869587" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:58.867742" elapsed="0.001900"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.867723" elapsed="0.001943"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:58.869699" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:58.869892" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:58.869936" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 329 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:58.848820" elapsed="0.021139"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.872120" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.870530" elapsed="0.001635"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.870512" elapsed="0.001675"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.872730" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.872333" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.873283" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.872918" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:58.873359" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:52:58.873535" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:58.870185" elapsed="0.003375"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:58.873714" elapsed="0.000395"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:58.848265" elapsed="0.025908"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.882001" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:58.881592" elapsed="0.000437"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:58.894531" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:58.895482" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;et... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:58.896145" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:58.882175" elapsed="0.014031"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.897159" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.896560" elapsed="0.000702"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.902852" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;895000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;986000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;223000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;87000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;471000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;495000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;619000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;660000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;876000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;909000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;144000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;985000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;5000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.897583" elapsed="0.006229"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.905620" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.903885" elapsed="0.001783"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.903865" elapsed="0.001826"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:58.930334" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:58.930383" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:58.905829" elapsed="0.024577"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:58.932837" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:58.930486" elapsed="0.002429"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.930466" elapsed="0.002483"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:58.932995" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:52:58.933289" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:58.933351" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 329 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:58.881219" elapsed="0.052163"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.936037" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.934223" elapsed="0.001874"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.934197" elapsed="0.001922"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.936671" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.936267" elapsed="0.000431"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.937232" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.936865" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:58.937308" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:52:58.937485" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:58.933682" elapsed="0.003828"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:58.937668" elapsed="0.000388"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:58.880599" elapsed="0.057537"/>
</kw>
<arg>f206.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:58.830283" elapsed="0.107909"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:58.823476" elapsed="0.114857"/>
</test>
<test id="s1-s3-s1-t48" name="Test Is Flow 209 Added" line="143">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:58.949096" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f209.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f209.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:58.949237" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;co...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:58.948942" elapsed="0.000324"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:58.949841" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35b920&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:58.949420" elapsed="0.000449"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:58.950339" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:58.950022" elapsed="0.000343"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:58.950787" level="INFO">${flow_id} = 332</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:58.950518" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:58.951247" level="INFO">${flow_priority} = 209</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:58.950962" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:58.952283" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/co...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:58.951422" elapsed="0.000897"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.952828" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.952482" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.953411" level="INFO">${flow_id} = 332</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.953081" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.953938" level="INFO">${flow_priority} = 209</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.953608" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.954495" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;co...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.954148" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.955016" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/co...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.954694" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.955553" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35b920&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:58.955230" elapsed="0.000364"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:58.948613" elapsed="0.007037"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.956200" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;co...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.955800" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.956633" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;209&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;209&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tunnel&gt;
                            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;
                        &lt;/tunnel&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.956383" elapsed="0.000314"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.964350" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:58.964025" elapsed="0.000353"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:58.971733" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=332?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=332?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:58.972411" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=332?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '897'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;332&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:58.972522" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:58.964509" elapsed="0.008039"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.973002" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.972742" elapsed="0.000305"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.975432" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;332&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:58.973210" elapsed="0.002307"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.978040" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.975616" elapsed="0.002512"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.975588" elapsed="0.002573"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:58.982663" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:58.982727" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:58.978371" elapsed="0.004388"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:58.985441" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:58.982862" elapsed="0.002656"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.982836" elapsed="0.002715"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:58.985598" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:52:58.985869" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:58.985929" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 332 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:58.963709" elapsed="0.022252"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:58.988654" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:58.986778" elapsed="0.001922"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:58.986753" elapsed="0.001969"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.989288" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.988873" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.989829" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:58.989481" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:58.989906" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:52:58.990098" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:58.986308" elapsed="0.003817"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:58.990303" elapsed="0.000383"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:58.963151" elapsed="0.027599"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:58.998467" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:58.998144" elapsed="0.000350"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:59.011709" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:59.012653" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;et... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:59.013310" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:58.998624" elapsed="0.014745"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.014509" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.013725" elapsed="0.000891"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.020216" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;895000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;986000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;223000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;87000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;471000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;495000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;619000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;660000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;876000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;909000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;144000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;985000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;5000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.014952" elapsed="0.006588"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.023372" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.021614" elapsed="0.001806"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.021593" elapsed="0.001849"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:59.047112" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:59.047161" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:59.023581" elapsed="0.023603"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:59.048973" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:59.047261" elapsed="0.001768"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.047242" elapsed="0.001812"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:59.049103" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:59.049297" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:59.049341" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 332 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:58.997755" elapsed="0.051608"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.051508" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.049906" elapsed="0.001647"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.049888" elapsed="0.001686"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.052163" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.051720" elapsed="0.000471"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.052731" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.052374" elapsed="0.000383"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:59.052807" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:59.052984" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:59.049576" elapsed="0.003434"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:59.053181" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:58.997139" elapsed="0.056489"/>
</kw>
<arg>f209.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:58.945370" elapsed="0.108314"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:58.938599" elapsed="0.115202"/>
</test>
<test id="s1-s3-s1-t49" name="Test Is Flow 214 Added" line="145">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:59.064628" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f214.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f214.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:59.064776" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:59.064489" elapsed="0.000316"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:59.065383" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4c04f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:59.064957" elapsed="0.000453"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:59.065843" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:59.065564" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:59.066325" level="INFO">${flow_id} = 337</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:59.066021" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:59.066769" level="INFO">${flow_priority} = 214</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:59.066501" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:59.067629" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:59.066944" elapsed="0.000716"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.068328" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.067817" elapsed="0.000553"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.068888" level="INFO">${flow_id} = 337</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.068563" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.069431" level="INFO">${flow_priority} = 214</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.069099" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.069943" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.069625" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.070503" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.070153" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.071047" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4c04f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.070699" elapsed="0.000405"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:59.064162" elapsed="0.006998"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.071689" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cooki...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.071310" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.072125" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;214&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;214&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
		    &lt;ip-match&gt;
        		&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
		    &lt;/ip-match&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
		&lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
	    &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.071870" elapsed="0.000316"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.079849" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:59.079549" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:59.086040" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=337?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=337?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:59.086672" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=337?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '719'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;337&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:59.086829" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:59.080006" elapsed="0.006870"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.087494" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.087137" elapsed="0.000421"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.090544" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;337&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.087761" elapsed="0.002914"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.093229" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.090777" elapsed="0.002520"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.090748" elapsed="0.002580"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:59.097438" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:59.097502" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:59.093522" elapsed="0.004012"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:59.099678" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:59.097636" elapsed="0.002097"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.097610" elapsed="0.002147"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:59.099790" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:59.099982" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:59.100026" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 337 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:59.079235" elapsed="0.020813"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.102346" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.100602" elapsed="0.001790"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.100584" elapsed="0.001830"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.102960" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.102560" elapsed="0.000426"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.103516" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.103164" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:59.103594" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:52:59.103770" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:59.100274" elapsed="0.003521"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:59.103951" elapsed="0.000400"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:59.078668" elapsed="0.025746"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.112185" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:59.111873" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:59.125970" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:59.126601" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;et... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:59.127197" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:59.112343" elapsed="0.014915"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.128219" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.127618" elapsed="0.000703"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.133710" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;895000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;986000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;223000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;87000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;471000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;495000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;619000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;660000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;876000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;909000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;144000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;985000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;5000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.128643" elapsed="0.007250"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.139425" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.136056" elapsed="0.003417"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.136011" elapsed="0.003484"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:59.167005" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:59.167053" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:59.139633" elapsed="0.027457"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:59.168874" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:59.167175" elapsed="0.001755"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.167154" elapsed="0.001800"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:59.168987" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:59.169199" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:59.169243" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 337 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:59.111498" elapsed="0.057768"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.171437" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.169820" elapsed="0.001663"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.169802" elapsed="0.001703"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.172087" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.171652" elapsed="0.000464"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.172637" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.172279" elapsed="0.000384"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:59.172713" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:59.172889" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:59.169486" elapsed="0.003428"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:59.173085" elapsed="0.000387"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:59.110870" elapsed="0.062665"/>
</kw>
<arg>f214.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:59.060880" elapsed="0.112713"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:59.054083" elapsed="0.119632"/>
</test>
<test id="s1-s3-s1-t50" name="Test Is Flow 218 Added" line="147">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:59.184712" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f218.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f218.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:59.184855" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:59.184572" elapsed="0.000311"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:59.185441" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe693a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:59.185034" elapsed="0.000435"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:59.185907" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:59.185622" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:59.186404" level="INFO">${flow_id} = 341</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:59.186098" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:59.186848" level="INFO">${flow_priority} = 218</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:59.186581" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:59.187602" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:59.187023" elapsed="0.000609"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.188137" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.187788" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.188703" level="INFO">${flow_id} = 341</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.188379" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.189243" level="INFO">${flow_priority} = 218</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.188899" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.189754" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.189438" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.190325" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.189950" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.190844" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe693a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.190524" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:59.184242" elapsed="0.006699"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.191486" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.191107" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.191905" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;go-to-table&gt;
                &lt;table_id&gt;3&lt;/table_id&gt;
            &lt;/go-to-table&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;341&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-mask&gt;0xfff0&lt;/tunnel-mask&gt;
            &lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
    &lt;cookie&gt;218&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;
    &lt;priority&gt;218&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.191667" elapsed="0.000294"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.199795" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:59.199491" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:59.205324" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=341?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=341?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:59.205780" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=341?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '563'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;341&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:59.205885" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:59.199953" elapsed="0.005957"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.206361" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.206085" elapsed="0.000322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.208512" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;341&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.206553" elapsed="0.002048"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.210446" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.208674" elapsed="0.001822"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.208653" elapsed="0.001865"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:59.214310" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:59.214380" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:59.210657" elapsed="0.003756"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:59.216876" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:59.214516" elapsed="0.002438"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.214490" elapsed="0.002496"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:59.217033" elapsed="0.000060"/>
</return>
<msg time="2026-05-25T01:52:59.217329" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:59.217389" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 341 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:59.199174" elapsed="0.018247"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.219971" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.218195" elapsed="0.001822"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.218170" elapsed="0.001868"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.220597" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.220200" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.221154" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.220788" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:59.221230" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:52:59.221406" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:59.217711" elapsed="0.003720"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:59.221586" elapsed="0.000384"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:59.198605" elapsed="0.023427"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.230005" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:59.229709" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:59.243555" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:59.244498" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;et... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:59.245169" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:59.230180" elapsed="0.015051"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.246188" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.245590" elapsed="0.000753"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.249948" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;895000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;986000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;223000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;87000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;471000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;495000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;619000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;660000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;876000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;909000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;144000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;985000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;5000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.246666" elapsed="0.004704"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.253989" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.251475" elapsed="0.002581"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.251447" elapsed="0.002660"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:59.281977" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:59.282024" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:59.254321" elapsed="0.027728"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:59.283889" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:59.282142" elapsed="0.001805"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.282122" elapsed="0.001850"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:59.284006" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:59.284220" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:59.284265" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 341 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:59.229332" elapsed="0.054956"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.286442" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.284836" elapsed="0.001652"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.284818" elapsed="0.001693"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.287063" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.286659" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.287625" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.287272" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:59.287702" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:52:59.287879" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:59.284502" elapsed="0.003404"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:59.288063" elapsed="0.000405"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:59.228697" elapsed="0.059835"/>
</kw>
<arg>f218.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:59.180902" elapsed="0.107688"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:59.174000" elapsed="0.114704"/>
</test>
<test id="s1-s3-s1-t51" name="Test Is Flow 219 Added" line="149">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:59.299549" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f219.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f219.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:59.299683" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;c...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:59.299411" elapsed="0.000302"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:59.300284" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcffec0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:59.299865" elapsed="0.000448"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:59.300747" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:59.300467" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:59.301212" level="INFO">${flow_id} = 342</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:59.300924" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:59.301660" level="INFO">${flow_priority} = 219</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:59.301390" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:59.302544" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:59.301836" elapsed="0.000739"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.303078" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.302732" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.303643" level="INFO">${flow_id} = 342</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.303316" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.304192" level="INFO">${flow_priority} = 219</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.303844" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.304709" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;c...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.304389" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.305257" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.304919" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.305778" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcffec0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.305455" elapsed="0.000364"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:59.299062" elapsed="0.006813"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.306440" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;c...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.306025" elapsed="0.000446"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.306861" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
		&lt;/clear-actions&gt;
	&lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;342&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;10&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;219&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;
    &lt;priority&gt;219&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.306622" elapsed="0.000300"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.314773" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:59.314471" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:59.321503" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=342?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=342?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:59.322059" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=342?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '740'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;342&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:59.322188" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:59.314930" elapsed="0.007313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.322662" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.322409" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.325683" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;342&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.322899" elapsed="0.002915"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.328383" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.325915" elapsed="0.002537"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.325886" elapsed="0.002598"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:59.332490" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:59.332536" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:59.328678" elapsed="0.003881"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:59.334356" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:59.332633" elapsed="0.001780"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.332614" elapsed="0.001822"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:59.334470" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:59.334663" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:59.334707" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 342 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:59.314110" elapsed="0.020620"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.336843" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.335286" elapsed="0.001602"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.335268" elapsed="0.001642"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.337465" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.337055" elapsed="0.000436"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.337999" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.337653" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:59.338091" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:59.338284" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:59.334942" elapsed="0.003368"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:59.338464" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:59.313539" elapsed="0.025369"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.346862" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:59.346564" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:59.361558" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:59.362550" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;et... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:59.363250" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:59.347020" elapsed="0.016291"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.364266" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.363669" elapsed="0.000699"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.369786" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;895000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;986000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;223000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;87000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;471000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;495000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;619000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;660000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;876000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;909000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;144000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;985000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;5000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.364686" elapsed="0.007241"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.375375" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.372117" elapsed="0.003305"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.372045" elapsed="0.003399"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:59.401146" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:59.401193" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:59.375596" elapsed="0.025620"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:59.403029" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:59.401294" elapsed="0.001808"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.401275" elapsed="0.001851"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:59.403159" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:52:59.403354" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:59.403397" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 342 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:59.346151" elapsed="0.057268"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.405539" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.403963" elapsed="0.001620"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.403945" elapsed="0.001660"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.406166" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.405750" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.406740" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.406387" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:59.406816" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:52:59.406992" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:59.403633" elapsed="0.003384"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:59.407189" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:59.345521" elapsed="0.062116"/>
</kw>
<arg>f219.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:59.295785" elapsed="0.111910"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:59.288963" elapsed="0.118846"/>
</test>
<test id="s1-s3-s1-t52" name="Test Is Flow 220 Added" line="151">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:59.418598" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f220.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f220.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:59.418736" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:59.418462" elapsed="0.000302"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:59.419329" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7e340&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:59.418917" elapsed="0.000440"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:59.419833" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:59.419509" elapsed="0.000350"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:59.420298" level="INFO">${flow_id} = 343</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:59.420011" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:59.420740" level="INFO">${flow_priority} = 220</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:59.420473" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:59.421514" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:59.420918" elapsed="0.000625"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.422026" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.421698" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.422633" level="INFO">${flow_id} = 343</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.422303" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.423169" level="INFO">${flow_priority} = 220</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.422828" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.423676" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.423364" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.424206" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.423872" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.424729" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7e340&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.424410" elapsed="0.000360"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:59.418104" elapsed="0.006722"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.425369" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.424975" elapsed="0.000424"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.425786" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;write-metadata&gt;
                &lt;metadata-mask&gt;12&lt;/metadata-mask&gt;
                &lt;metadata&gt;10&lt;/metadata&gt;
            &lt;/write-metadata&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;343&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;220&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;
    &lt;priority&gt;220&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.425549" elapsed="0.000294"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.435359" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:59.435045" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:59.441312" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=343?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=343?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:59.441815" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=343?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '658'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;343&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:59.441928" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:59.435515" elapsed="0.006438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.442456" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.442127" elapsed="0.000374"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.444603" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;343&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.442644" elapsed="0.002050"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.446545" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.444767" elapsed="0.001827"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.444746" elapsed="0.001870"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:59.450521" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:59.450584" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:59.446767" elapsed="0.003849"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:59.453087" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:59.450718" elapsed="0.002448"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.450692" elapsed="0.002507"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:59.453245" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:52:59.453511" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:59.453570" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 343 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:59.434729" elapsed="0.018873"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.456145" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.454403" elapsed="0.001788"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.454378" elapsed="0.001835"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.456752" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.456358" elapsed="0.000420"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.457302" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.456939" elapsed="0.000389"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:59.457378" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:59.457555" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:59.453888" elapsed="0.003692"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:59.457734" elapsed="0.000399"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:59.434158" elapsed="0.024040"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.465916" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:59.465621" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:59.479114" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:59.480025" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;et... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:59.480695" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:59.466088" elapsed="0.014667"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.481731" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.481139" elapsed="0.000692"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.487223" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;895000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;986000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;223000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;87000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;471000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;495000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;619000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;660000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;876000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;909000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;144000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;985000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;5000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.482185" elapsed="0.005986"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.489967" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.488245" elapsed="0.001770"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.488225" elapsed="0.001812"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:59.514997" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:59.515044" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:59.490190" elapsed="0.024890"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:59.516855" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:59.515160" elapsed="0.001750"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.515141" elapsed="0.001793"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:59.516967" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:52:59.517175" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:59.517218" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 343 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:59.465232" elapsed="0.052009"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.519454" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.517784" elapsed="0.001715"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.517766" elapsed="0.001755"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.520083" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.519668" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.520628" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.520277" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:59.520703" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:59.520880" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:59.517453" elapsed="0.003452"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:59.521061" elapsed="0.000402"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:59.464610" elapsed="0.056916"/>
</kw>
<arg>f220.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:59.414874" elapsed="0.106708"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:59.408082" elapsed="0.113612"/>
</test>
<test id="s1-s3-s1-t53" name="Test Is Flow 221 Added" line="153">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:59.532499" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f221.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f221.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:59.532629" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:59.532364" elapsed="0.000294"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:59.533226" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcffd80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:59.532808" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:59.533684" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:59.533406" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:59.534145" level="INFO">${flow_id} = 344</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:59.533860" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:59.534615" level="INFO">${flow_priority} = 221</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:59.534345" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:59.535444" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:59.534790" elapsed="0.000684"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.535963" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.535633" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.536538" level="INFO">${flow_id} = 344</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.536213" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.537079" level="INFO">${flow_priority} = 221</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.536733" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.537589" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.537276" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.538116" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.537784" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.538651" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcffd80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.538330" elapsed="0.000362"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:59.532025" elapsed="0.006723"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.539293" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.538897" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.539714" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;1&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;344&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;10&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;221&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;
    &lt;priority&gt;221&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.539474" elapsed="0.000300"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.547604" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:59.547306" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:59.553997" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=344?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=344?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:59.554576" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=344?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '735'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;344&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:59.554684" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:59.547759" elapsed="0.006951"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.555323" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.554949" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.558349" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;344&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.555584" elapsed="0.002892"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.561016" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.558575" elapsed="0.002526"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.558547" elapsed="0.002587"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:59.564502" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:59.564547" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:59.561328" elapsed="0.003242"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:59.566342" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:59.564644" elapsed="0.001754"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.564625" elapsed="0.001796"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:59.566455" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:52:59.566645" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:59.566689" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 344 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:59.546977" elapsed="0.019734"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.568831" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.567263" elapsed="0.001612"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.567245" elapsed="0.001652"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.569456" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.569043" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.569990" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.569643" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:59.570079" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:59.570326" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:59.566917" elapsed="0.003436"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:59.570507" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:59.546429" elapsed="0.024522"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.580625" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:59.580329" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:59.593438" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:59.594452" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;et... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:59.595134" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:59.580780" elapsed="0.014415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.596142" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.595549" elapsed="0.000697"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.601675" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;895000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;986000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;223000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;87000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;471000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;495000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;619000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;660000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;876000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;909000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;144000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;985000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;5000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.596567" elapsed="0.006742"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.605110" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.603381" elapsed="0.001778"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.603361" elapsed="0.001820"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:59.634607" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:59.634654" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:59.605318" elapsed="0.029359"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:59.636476" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:59.634755" elapsed="0.001777"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.634735" elapsed="0.001821"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:59.636588" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:59.636782" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:59.636825" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 344 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:59.579938" elapsed="0.056909"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.638990" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.637404" elapsed="0.001631"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.637386" elapsed="0.001672"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.639620" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.639219" elapsed="0.000428"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.640177" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.639810" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:59.640254" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:59.640433" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:59.637058" elapsed="0.003400"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:59.640613" elapsed="0.000386"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:59.579322" elapsed="0.061740"/>
</kw>
<arg>f221.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:59.528769" elapsed="0.112369"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:59.521961" elapsed="0.119291"/>
</test>
<test id="s1-s3-s1-t54" name="Test Is Flow 222 Added" line="155">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:59.652158" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f222.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f222.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:59.652294" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:59.652005" elapsed="0.000317"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:59.652855" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc307c90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:59.652475" elapsed="0.000408"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:59.653330" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:59.653034" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:59.653774" level="INFO">${flow_id} = 345</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:59.653505" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:59.654254" level="INFO">${flow_priority} = 222</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:59.653948" elapsed="0.000335"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:59.654943" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:59.654436" elapsed="0.000537"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.655480" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.655146" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.656048" level="INFO">${flow_id} = 345</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.655721" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.656592" level="INFO">${flow_priority} = 222</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.656263" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.657113" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.656784" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.657629" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.657311" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.658158" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc307c90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.657824" elapsed="0.000399"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:59.651670" elapsed="0.006614"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.658946" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.658438" elapsed="0.000538"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.659399" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;id&gt;345&lt;/id&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                   &lt;order&gt;0&lt;/order&gt;
                   &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.659157" elapsed="0.000297"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.667280" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:59.666958" elapsed="0.000349"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:59.674504" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=345?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=345?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:59.674963" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=345?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '432'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;345&lt;/id&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:59.675135" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:59.667437" elapsed="0.007735"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.675744" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.675395" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.678775" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;345&lt;/id&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.676003" elapsed="0.002848"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.681376" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.678947" elapsed="0.002498"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.678920" elapsed="0.002555"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:59.685234" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:59.685297" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:59.681711" elapsed="0.003618"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:59.687540" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:59.685432" elapsed="0.002163"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.685405" elapsed="0.002214"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:59.687652" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:59.687846" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:59.687889" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 345 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:59.666637" elapsed="0.021275"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.690045" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.688468" elapsed="0.001637"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.688451" elapsed="0.001676"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.690702" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.690302" elapsed="0.000427"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.691258" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.690892" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:59.691334" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:59.691512" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:59.688136" elapsed="0.003401"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:59.691693" elapsed="0.000396"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:59.666026" elapsed="0.026129"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.699904" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:59.699607" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:59.716649" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:59.717600" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;et... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:59.718346" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:59.700059" elapsed="0.018352"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.719376" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.718772" elapsed="0.000705"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.724955" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;895000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;986000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;223000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;87000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;471000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;495000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;619000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;660000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;876000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;909000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;144000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;985000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;5000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.719796" elapsed="0.007180"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.728790" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.727050" elapsed="0.001788"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.727030" elapsed="0.001830"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:59.759701" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:59.759750" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:59.728999" elapsed="0.030775"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:59.761563" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:59.759854" elapsed="0.001766"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.759834" elapsed="0.001810"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:59.761678" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:59.761874" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:59.761920" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 345 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:59.699230" elapsed="0.062713"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.764116" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.762536" elapsed="0.001626"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.762518" elapsed="0.001666"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.764736" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.764331" elapsed="0.000433"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.765298" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.764928" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:59.765375" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:52:59.765553" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:59.762175" elapsed="0.003404"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:59.765734" elapsed="0.000403"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:59.698606" elapsed="0.067610"/>
</kw>
<arg>f222.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:59.648368" elapsed="0.117917"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:59.641502" elapsed="0.124910"/>
</test>
<test id="s1-s3-s1-t55" name="Test Is Flow 223 Added" line="157">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:59.777191" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f223.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f223.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:59.777327" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:59.777033" elapsed="0.000322"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:59.777884" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc304bd0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:59.777506" elapsed="0.000406"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:59.778383" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:59.778063" elapsed="0.000346"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:59.778833" level="INFO">${flow_id} = 346</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:59.778563" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:59.779289" level="INFO">${flow_priority} = 223</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:59.779005" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:59.779980" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:59.779465" elapsed="0.000545"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.780514" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.780185" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.781096" level="INFO">${flow_id} = 346</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.780751" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.781633" level="INFO">${flow_priority} = 223</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.781302" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.782164" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.781827" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.782747" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.782416" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.783286" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc304bd0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.782946" elapsed="0.000382"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:59.776706" elapsed="0.006679"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.783920" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.783536" elapsed="0.000414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.784361" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;
        &lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;
    &lt;/match&gt;
    &lt;id&gt;346&lt;/id&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                   &lt;order&gt;0&lt;/order&gt;
                   &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.784118" elapsed="0.000300"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.792380" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:59.792063" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:59.798558" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=346?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=346?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:59.799021" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=346?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '546'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;346&lt;/id&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:59.799156" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:59.792538" elapsed="0.006644"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.799593" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.799342" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.801731" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;346&lt;/id&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.799782" elapsed="0.002009"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.803674" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.801895" elapsed="0.001829"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.801873" elapsed="0.001874"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:59.806392" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:59.806438" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:59.803887" elapsed="0.002574"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:59.808817" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:59.806535" elapsed="0.002359"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.806516" elapsed="0.002411"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:59.808974" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:52:59.809265" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:59.809326" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 346 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:59.791746" elapsed="0.017611"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.812372" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.810138" elapsed="0.002296"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.810112" elapsed="0.002353"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.813253" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.812671" elapsed="0.000620"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.814045" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.813518" elapsed="0.000584"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:59.814174" elapsed="0.000054"/>
</return>
<msg time="2026-05-25T01:52:59.814443" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:59.809647" elapsed="0.004831"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:59.814697" elapsed="0.000557"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:59.791186" elapsed="0.024157"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.824105" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:59.823793" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:59.837942" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:59.838549" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;et... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:59.838960" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:59.824264" elapsed="0.014734"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.839596" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.839243" elapsed="0.000416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.843023" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;895000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;986000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;223000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;87000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;471000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;495000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;619000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;660000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;876000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;909000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;144000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;985000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;5000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.839860" elapsed="0.004501"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.846936" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.844462" elapsed="0.002522"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.844434" elapsed="0.002572"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:52:59.877244" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:59.877292" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:59.847162" elapsed="0.030154"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:59.879151" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:59.877396" elapsed="0.001812"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.877376" elapsed="0.001857"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:59.879267" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:52:59.879464" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:52:59.879508" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 346 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:59.823419" elapsed="0.056112"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.881663" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.880098" elapsed="0.001610"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.880078" elapsed="0.001652"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.882336" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.881876" elapsed="0.000488"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.882884" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.882530" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:59.882961" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:52:59.883172" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:59.879748" elapsed="0.003449"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:59.883354" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:59.822796" elapsed="0.061007"/>
</kw>
<arg>f223.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:59.773456" elapsed="0.110403"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:59.766673" elapsed="0.117306"/>
</test>
<test id="s1-s3-s1-t56" name="Test Is Flow 224 Added" line="159">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:52:59.894845" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f224.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f224.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:52:59.894990" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:52:59.894706" elapsed="0.000314"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:52:59.895578" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3edee0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:52:59.895189" elapsed="0.000417"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:59.896041" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:59.895760" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:59.896508" level="INFO">${flow_id} = 347</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:59.896237" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:52:59.896958" level="INFO">${flow_priority} = 224</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:52:59.896685" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:52:59.897681" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:52:59.897150" elapsed="0.000561"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.898244" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.897869" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.898814" level="INFO">${flow_id} = 347</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.898486" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.899354" level="INFO">${flow_priority} = 224</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.899008" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.899860" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.899546" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.900389" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.900054" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.900902" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3edee0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:52:59.900585" elapsed="0.000358"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:52:59.894379" elapsed="0.006619"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.901538" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.901162" elapsed="0.000406"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.901955" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;
        &lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;
    &lt;/match&gt;
    &lt;id&gt;347&lt;/id&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                   &lt;order&gt;0&lt;/order&gt;
                   &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.901719" elapsed="0.000292"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.909817" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:59.909518" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:59.916791" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=347?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=347?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:59.917299" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=347?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '606'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;347&lt;/id&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:52:59.917405" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:59.909973" elapsed="0.007457"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.917847" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.917591" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.920009" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;347&lt;/id&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.918036" elapsed="0.002075"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.921921" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.920183" elapsed="0.001786"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.920163" elapsed="0.001828"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:52:59.925426" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:52:59.925489" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:52:59.922144" elapsed="0.003377"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:52:59.928000" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:52:59.925623" elapsed="0.002474"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.925597" elapsed="0.002535"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:52:59.928180" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:52:59.928447" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:52:59.928507" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 347 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:59.909203" elapsed="0.019335"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.931375" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.929304" elapsed="0.002116"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.929280" elapsed="0.002162"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.931986" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.931588" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.932538" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:52:59.932190" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:52:59.932614" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:52:59.932790" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:52:59.928825" elapsed="0.003991"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:52:59.932970" elapsed="0.000399"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:59.908628" elapsed="0.024805"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.941161" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:52:59.940849" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:52:59.957026" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:52:59.957985" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;et... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:52:59.958798" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:52:59.941319" elapsed="0.017541"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.959885" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.959295" elapsed="0.000691"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:52:59.965458" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;895000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;986000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;223000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;87000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;471000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;495000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;619000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;660000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;876000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;909000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;144000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;985000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;5000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:52:59.960340" elapsed="0.006847"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:52:59.968987" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:52:59.967261" elapsed="0.001774"/>
</branch>
<status status="PASS" start="2026-05-25T01:52:59.967241" elapsed="0.001816"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:00.050151" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:00.050248" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:52:59.969210" elapsed="0.081068"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:00.052233" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:00.050399" elapsed="0.001894"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:00.050369" elapsed="0.001950"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:00.052356" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:53:00.052574" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:00.052619" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 347 and 1</doc>
<status status="PASS" start="2026-05-25T01:52:59.940474" elapsed="0.112168"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:00.054833" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:00.053258" elapsed="0.001622"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:00.053240" elapsed="0.001662"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.055523" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:00.055053" elapsed="0.000498"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.056086" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:00.055717" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:00.056165" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:00.056346" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:00.052885" elapsed="0.003487"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:00.056531" elapsed="0.000403"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:52:59.939849" elapsed="0.117149"/>
</kw>
<arg>f224.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:52:59.891143" elapsed="0.165913"/>
</kw>
<status status="PASS" start="2026-05-25T01:52:59.884332" elapsed="0.172864"/>
</test>
<test id="s1-s3-s1-t57" name="Test Is Flow 225 Added" line="161">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:00.068288" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f225.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f225.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:00.068451" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:00.068142" elapsed="0.000338"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:00.069030" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc307290&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:00.068633" elapsed="0.000427"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.069513" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.069230" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.069957" level="INFO">${flow_id} = 348</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.069689" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.070447" level="INFO">${flow_priority} = 225</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.070148" elapsed="0.000326"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:00.071186" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:00.070628" elapsed="0.000588"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.071705" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.071371" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.072301" level="INFO">${flow_id} = 348</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.071957" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.072824" level="INFO">${flow_priority} = 225</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.072497" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.073354" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.073018" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.073927" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.073552" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.074513" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc307290&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.074141" elapsed="0.000414"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:00.067797" elapsed="0.006814"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.075161" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:00.074761" elapsed="0.000431"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.075596" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;
        &lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;
    &lt;/match&gt;
    &lt;id&gt;348&lt;/id&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                   &lt;order&gt;0&lt;/order&gt;
                   &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.075345" elapsed="0.000309"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.083473" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:00.083167" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:00.090119" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=348?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=348?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:00.090684" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=348?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '586'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;348&lt;/id&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:00.090821" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:00.083631" elapsed="0.007234"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.091518" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.091155" elapsed="0.000427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.094568" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;348&lt;/id&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.091785" elapsed="0.002913"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:00.097293" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:00.094802" elapsed="0.002560"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:00.094772" elapsed="0.002621"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:00.101062" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:00.101149" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:00.097588" elapsed="0.003594"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:00.103490" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:00.101287" elapsed="0.002259"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:00.101260" elapsed="0.002310"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:00.103604" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:53:00.103800" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:00.103845" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 348 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:00.082833" elapsed="0.021036"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:00.106006" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:00.104434" elapsed="0.001618"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:00.104416" elapsed="0.001674"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.106689" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:00.106282" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.107263" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:00.106885" elapsed="0.000404"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:00.107341" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:00.107518" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:00.104099" elapsed="0.003446"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:00.107702" elapsed="0.000413"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:00.082279" elapsed="0.025901"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.116025" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:00.115725" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:00.127358" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:00.127939" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;et... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:00.128384" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:00.116208" elapsed="0.012213"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.129001" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.128647" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.132486" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;895000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;986000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;223000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;87000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;471000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;495000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;619000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;660000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;876000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;909000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;144000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;985000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;5000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.129289" elapsed="0.004524"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:00.136435" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:00.133914" elapsed="0.002589"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:00.133886" elapsed="0.002648"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:00.167985" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:00.168034" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:00.136730" elapsed="0.031328"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:00.169994" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:00.168181" elapsed="0.001870"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:00.168159" elapsed="0.001938"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:00.170133" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:53:00.170360" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:00.170405" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 348 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:00.115352" elapsed="0.055077"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:00.172573" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:00.170991" elapsed="0.001628"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:00.170972" elapsed="0.001669"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.173218" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:00.172789" elapsed="0.000458"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.173765" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:00.173411" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:00.173842" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:00.174019" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:00.170650" elapsed="0.003394"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:00.174246" elapsed="0.000396"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:00.114716" elapsed="0.059992"/>
</kw>
<arg>f225.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:00.064532" elapsed="0.110235"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:00.057561" elapsed="0.117335"/>
</test>
<test id="s1-s3-s1-t58" name="Test Is Flow 550 Added" line="163">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:00.185834" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f550.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f550.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:00.185986" level="INFO">${data} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;
    &lt;match&gt;
   ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:00.185692" elapsed="0.000323"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:00.186631" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6aed0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:00.186214" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.187119" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.186819" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.187566" level="INFO">${flow_id} = 550</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.187297" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.188009" level="INFO">${flow_priority} = 550</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.187741" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:00.188794" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;f...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:00.188200" elapsed="0.000624"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.189347" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.188987" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.189910" level="INFO">${flow_id} = 550</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.189586" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.190466" level="INFO">${flow_priority} = 550</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.190118" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.190982" level="INFO">${data} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;
    &lt;match&gt;
   ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.190660" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.191514" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;f...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.191195" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.192029" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6aed0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.191710" elapsed="0.000374"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:00.185364" elapsed="0.006777"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.192669" level="INFO">${det} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;
    &lt;match&gt;
   ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:00.192289" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.193107" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;
            &lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;
            &lt;extension&gt;
                &lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;
                    &lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;
                &lt;/nxm-nx-tun-ipv4-src&gt;
            &lt;/extension&gt;
        &lt;/extension-list&gt;
    &lt;/match&gt;
    &lt;id&gt;550&lt;/id&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;1&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.192850" elapsed="0.000317"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.200991" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:00.200693" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:00.207455" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=550?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=550?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:00.208327" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=550?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '817'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:00.208477" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:00.201165" elapsed="0.007348"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.209110" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.208734" elapsed="0.000442"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.212170" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.209378" elapsed="0.002918"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:00.214859" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:00.212397" elapsed="0.002531"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:00.212368" elapsed="0.002592"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:00.218889" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:00.218947" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:00.215182" elapsed="0.003794"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:00.220754" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:00.219055" elapsed="0.001755"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:00.219036" elapsed="0.001798"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:00.220867" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:00.221077" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:00.221124" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 550 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:00.200378" elapsed="0.020770"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:00.223289" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:00.221691" elapsed="0.001644"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:00.221673" elapsed="0.001684"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.223897" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:00.223502" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.224455" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:00.224103" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:00.224531" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:00.224710" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:00.221357" elapsed="0.003379"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:00.224897" elapsed="0.000404"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:00.199809" elapsed="0.025557"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.233342" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:00.233008" elapsed="0.000362"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:00.246310" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:00.246968" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;et... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:00.247666" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:00.233580" elapsed="0.014145"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.248682" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.248112" elapsed="0.000671"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.254388" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;594000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;140000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;630000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;676000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;714000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;204000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;240000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;808000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;895000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;349000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;986000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;223000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;17000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;87000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;471000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;507000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;vlan-id&gt;1234&lt;/vlan-id&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;495000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;542000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;619000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;660000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;876000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;102000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;909000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;144000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;951000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;985000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;973000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;5000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;461000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;428000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.249133" elapsed="0.007378"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:00.259695" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:00.256675" elapsed="0.003068"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:00.256629" elapsed="0.003136"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:00.288288" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:00.288336" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:00.259904" elapsed="0.028457"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:00.290182" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:00.288440" elapsed="0.001801"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:00.288420" elapsed="0.001845"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:00.290298" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:00.290495" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:00.290540" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 550 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:00.232627" elapsed="0.057937"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:00.292704" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:00.291136" elapsed="0.001614"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:00.291117" elapsed="0.001655"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.293345" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:00.292923" elapsed="0.000450"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.293893" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:00.293536" elapsed="0.000383"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:00.293969" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:00.294165" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:00.290786" elapsed="0.003414"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:00.294363" elapsed="0.000393"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:00.231994" elapsed="0.062835"/>
</kw>
<arg>f550.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:00.182108" elapsed="0.112779"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:00.175204" elapsed="0.119799"/>
</test>
<test id="s1-s3-s1-t59" name="Test Update Flows Group 0" line="165">
<for flavor="IN">
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.296200" level="INFO">f1.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.295892" elapsed="0.000354"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:00.299686" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f1.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f1.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:00.299824" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:00.299543" elapsed="0.000310"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:00.300416" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4da8e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:00.300002" elapsed="0.000442"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.300873" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.300597" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.301341" level="INFO">${flow_id} = 124</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.301052" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.301787" level="INFO">${flow_priority} = 1</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.301521" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:00.302570" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:00.301961" elapsed="0.000640"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.303139" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.302763" elapsed="0.000420"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.303654" level="INFO">${flow_id} = 124</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.303348" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.304174" level="INFO">${flow_priority} = 1</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.303848" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.304666" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.304367" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.305180" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.304860" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.305681" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4da8e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.305376" elapsed="0.000347"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:00.299211" elapsed="0.006565"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.313159" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;124&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;1&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf1&lt;/flow-name&gt;
    &lt;priority&gt;1&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.312894" elapsed="0.000330"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:00.325225" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=124 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=124 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '861', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;id&gt;124&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;2048&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;\n    &lt;/match&gt;\n    &lt;cookie&gt;1&lt;/cookie&gt;\n    &lt;flow-name&gt;FooXf1&lt;/flow-name&gt;\n    &lt;priority&gt;1&lt;/priority&gt;\n    &lt;barrier&gt;false&lt;/barrier&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:00.325285" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=124 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:00.325376" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:00.313362" elapsed="0.012039"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.329657" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.325560" elapsed="0.004193"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:00.312442" elapsed="0.017443"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:00.305957" elapsed="0.024048"/>
</kw>
<var name="${flowfile}">f1.xml</var>
<status status="PASS" start="2026-05-25T01:53:00.295763" elapsed="0.034363"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.331269" level="INFO">f2.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.330673" elapsed="0.000694"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:00.336712" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f2.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f2.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:00.336871" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:00.336578" elapsed="0.000322"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:00.337454" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc358180&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:00.337051" elapsed="0.000432"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.337913" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.337636" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.338392" level="INFO">${flow_id} = 125</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.338107" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.338848" level="INFO">${flow_priority} = 2</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.338574" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:00.339613" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:00.339023" elapsed="0.000621"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.340127" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.339798" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.340628" level="INFO">${flow_id} = 125</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.340323" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.341143" level="INFO">${flow_priority} = 2</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.340819" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.341633" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.341336" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.342153" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.341834" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.342667" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc358180&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.342362" elapsed="0.000347"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:00.336247" elapsed="0.006525"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.350116" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;125&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;
    &lt;/match&gt;
    &lt;cookie&gt;2&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf2&lt;/flow-name&gt;
    &lt;priority&gt;2&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.349851" elapsed="0.000335"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:00.362638" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=125 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=125 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '947', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;id&gt;125&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;2048&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;\n    &lt;/match&gt;\n    &lt;cookie&gt;2&lt;/cookie&gt;\n    &lt;flow-name&gt;FooXf2&lt;/flow-name&gt;\n    &lt;priority&gt;2&lt;/priority&gt;\n    &lt;barrier&gt;false&lt;/barrier&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:00.362770" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=125 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:00.362990" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:00.350316" elapsed="0.012730"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.367807" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.363444" elapsed="0.004458"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:00.349416" elapsed="0.018612"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:00.342919" elapsed="0.025266"/>
</kw>
<var name="${flowfile}">f2.xml</var>
<status status="PASS" start="2026-05-25T01:53:00.330385" elapsed="0.037888"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.369342" level="INFO">f3.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.368764" elapsed="0.000676"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:00.375847" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f3.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f3.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:00.375988" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:00.375715" elapsed="0.000301"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:00.376636" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc358c70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:00.376183" elapsed="0.000481"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.377121" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.376821" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.377585" level="INFO">${flow_id} = 126</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.377315" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.378027" level="INFO">${flow_priority} = 3</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.377759" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:00.378821" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:00.378254" elapsed="0.000596"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.379339" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.379006" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.379846" level="INFO">${flow_id} = 126</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.379534" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.380364" level="INFO">${flow_priority} = 3</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.380037" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.380857" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.380557" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.381374" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.381051" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.381873" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc358c70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.381568" elapsed="0.000345"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:00.375388" elapsed="0.006578"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.389174" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;126&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:00:01&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;3&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf3&lt;/flow-name&gt;
    &lt;priority&gt;3&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.388909" elapsed="0.000361"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:00.398269" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=126 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=126 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '923', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;id&gt;126&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-source&gt;\n                &lt;address&gt;00:00:00:00:00:01&lt;/address&gt;\n            &lt;/ethernet-source&gt;\n        &lt;/ethernet-match&gt;\n    &lt;/match&gt;\n    &lt;cookie&gt;3&lt;/cookie&gt;\n    &lt;flow-name&gt;FooXf3&lt;/flow-name&gt;\n    &lt;priority&gt;3&lt;/priority&gt;\n    &lt;barrier&gt;false&lt;/barrier&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:00.398353" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=126 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:00.398479" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:00.389401" elapsed="0.009114"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.401662" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.398735" elapsed="0.002989"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:00.388478" elapsed="0.013328"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:00.382127" elapsed="0.019755"/>
</kw>
<var name="${flowfile}">f3.xml</var>
<status status="PASS" start="2026-05-25T01:53:00.368485" elapsed="0.033452"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.402741" level="INFO">f4.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.402303" elapsed="0.000509"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:00.407693" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f4.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f4.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:00.407873" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:00.407506" elapsed="0.000409"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:00.408703" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4ba6b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:00.408149" elapsed="0.000594"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.409393" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.408957" elapsed="0.000475"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.410029" level="INFO">${flow_id} = 127</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.409647" elapsed="0.000419"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.410741" level="INFO">${flow_priority} = 4</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.410345" elapsed="0.000440"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:00.411901" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:00.410998" elapsed="0.000947"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.412634" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.412187" elapsed="0.000508"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.413411" level="INFO">${flow_id} = 127</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.412912" elapsed="0.000562"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.414156" level="INFO">${flow_priority} = 4</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.413691" elapsed="0.000560"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.414909" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.414469" elapsed="0.000489"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.415518" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.415192" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.416034" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4ba6b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.415721" elapsed="0.000373"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:00.407020" elapsed="0.009133"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.423572" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;127&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;4&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf4&lt;/flow-name&gt;
    &lt;priority&gt;4&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.423318" elapsed="0.000324"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:00.433714" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=127 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=127 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1043', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;id&gt;127&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;34887&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n            &lt;ethernet-destination&gt;\n                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;\n            &lt;/ethernet-destination&gt;\n            &lt;ethernet-source&gt;\n                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;\n            &lt;/ethernet-source&gt;\n        &lt;/ethernet-match&gt;\n    &lt;/match&gt;\n    &lt;cookie&gt;4&lt;/cookie&gt;\n    &lt;flow-name&gt;FooXf4&lt;/flow-name&gt;\n    &lt;priority&gt;4&lt;/priority&gt;\n    &lt;barrier&gt;false&lt;/barrier&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:00.433777" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=127 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:00.433867" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:00.423781" elapsed="0.010112"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.437948" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.434052" elapsed="0.003999"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:00.422860" elapsed="0.015398"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:00.416304" elapsed="0.022079"/>
</kw>
<var name="${flowfile}">f4.xml</var>
<status status="PASS" start="2026-05-25T01:53:00.402094" elapsed="0.036379"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.439579" level="INFO">f5.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.438980" elapsed="0.000701"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:00.444913" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f5.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f5.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:00.445040" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:00.444780" elapsed="0.000303"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:00.445645" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35aa70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:00.445241" elapsed="0.000432"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.446151" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.445824" elapsed="0.000369"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.446621" level="INFO">${flow_id} = 128</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.446348" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.447088" level="INFO">${flow_priority} = 5</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.446798" elapsed="0.000317"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:00.447890" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:00.447264" elapsed="0.000656"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.448406" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.448089" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.448913" level="INFO">${flow_id} = 128</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.448601" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.449431" level="INFO">${flow_priority} = 5</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.449120" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.449921" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.449623" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.450471" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.450136" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.450978" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35aa70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.450668" elapsed="0.000351"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:00.444446" elapsed="0.006643"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.458265" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;128&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;5&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;5&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.457979" elapsed="0.000347"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:00.468119" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=128 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=128 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1154', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;id&gt;128&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;0x800&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n            &lt;ethernet-destination&gt;\n                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;\n            &lt;/ethernet-destination&gt;\n            &lt;ethernet-source&gt;\n                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;\n            &lt;/ethernet-source&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;\n        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;\n        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;\n    &lt;/match&gt;\n    &lt;cookie&gt;5&lt;/cookie&gt;\n    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;\n    &lt;priority&gt;5&lt;/priority&gt;\n    &lt;barrier&gt;false&lt;/barrier&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:00.468183" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=128 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:00.468305" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:00.458460" elapsed="0.009871"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.470605" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.468515" elapsed="0.002135"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:00.457546" elapsed="0.013187"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:00.451241" elapsed="0.019582"/>
</kw>
<var name="${flowfile}">f5.xml</var>
<status status="PASS" start="2026-05-25T01:53:00.438689" elapsed="0.032237"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.472038" level="INFO">f6.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.471477" elapsed="0.000695"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:00.479378" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f6.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f6.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:00.479530" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:00.479244" elapsed="0.000316"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:00.480142" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bdcb0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:00.479710" elapsed="0.000461"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.480600" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.480324" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.481051" level="INFO">${flow_id} = 129</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.480778" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.481514" level="INFO">${flow_priority} = 6</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.481244" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:00.482344" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:00.481686" elapsed="0.000689"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.482857" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.482531" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.483380" level="INFO">${flow_id} = 129</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.483053" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.483885" level="INFO">${flow_priority} = 6</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.483573" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.484397" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.484093" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.484899" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.484592" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.485502" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bdcb0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.485114" elapsed="0.000431"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:00.478884" elapsed="0.006715"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.492871" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;129&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;6&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;6&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.492616" elapsed="0.000353"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:00.504664" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=129 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=129 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1114', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;id&gt;129&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;0x800&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n            &lt;ethernet-destination&gt;\n                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;\n            &lt;/ethernet-destination&gt;\n            &lt;ethernet-source&gt;\n                &lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;\n            &lt;/ethernet-source&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;\n        &lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;\n    &lt;/match&gt;\n    &lt;cookie&gt;6&lt;/cookie&gt;\n    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;\n    &lt;priority&gt;6&lt;/priority&gt;\n    &lt;barrier&gt;false&lt;/barrier&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:00.504752" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=129 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:00.504879" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:00.493118" elapsed="0.011797"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.508875" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.505167" elapsed="0.003808"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:00.492181" elapsed="0.016960"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:00.485750" elapsed="0.023517"/>
</kw>
<var name="${flowfile}">f6.xml</var>
<status status="PASS" start="2026-05-25T01:53:00.471187" elapsed="0.038169"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.510503" level="INFO">f7.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.509863" elapsed="0.000740"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:00.518463" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f7.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f7.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:00.518770" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:00.518100" elapsed="0.000744"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:00.519444" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc358ae0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:00.519013" elapsed="0.000459"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.519901" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.519625" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.520366" level="INFO">${flow_id} = 130</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.520093" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.520808" level="INFO">${flow_priority} = 7</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.520541" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:00.521700" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:00.520981" elapsed="0.000749"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.522262" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.521895" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.522785" level="INFO">${flow_id} = 130</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.522463" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.523322" level="INFO">${flow_priority} = 7</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.522986" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.523897" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.523536" elapsed="0.000467"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.524528" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.524210" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.525107" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc358ae0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.524727" elapsed="0.000429"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:00.517328" elapsed="0.007885"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.532532" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;130&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;15&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;7&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf7&lt;/flow-name&gt;
    &lt;priority&gt;7&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.532257" elapsed="0.000338"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:00.542671" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=130 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=130 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1299', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;id&gt;130&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;2048&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n            &lt;ethernet-destination&gt;\n                &lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;\n            &lt;/ethernet-destination&gt;\n            &lt;ethernet-source&gt;\n                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;\n            &lt;/ethernet-source&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;\n        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;\n        &lt;ip-match&gt;\n            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;\n            &lt;ip-dscp&gt;15&lt;/ip-dscp&gt;\n            &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;\n        &lt;/ip-match&gt;\n        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;\n    &lt;/match&gt;\n    &lt;cookie&gt;7&lt;/cookie&gt;\n    &lt;flow-name&gt;FooXf7&lt;/flow-name&gt;\n    &lt;priority&gt;7&lt;/priority&gt;\n    &lt;barrier&gt;false&lt;/barrier&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:00.542773" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=130 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:00.542905" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:00.532724" elapsed="0.010216"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.546020" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.543190" elapsed="0.002909"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:00.531794" elapsed="0.014485"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:00.525363" elapsed="0.021020"/>
</kw>
<var name="${flowfile}">f7.xml</var>
<status status="PASS" start="2026-05-25T01:53:00.509576" elapsed="0.036864"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.547155" level="INFO">f8.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.546767" elapsed="0.000452"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:00.551934" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f8.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f8.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:00.552133" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:00.551750" elapsed="0.000463"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:00.553022" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bdf30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:00.552432" elapsed="0.000629"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.553689" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.553298" elapsed="0.000426"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.554380" level="INFO">${flow_id} = 131</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.553934" elapsed="0.000483"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.555185" level="INFO">${flow_priority} = 8</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.554629" elapsed="0.000616"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:00.557259" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:00.555577" elapsed="0.001750"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.558458" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.557673" elapsed="0.000880"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.559204" level="INFO">${flow_id} = 131</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.558869" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.559711" level="INFO">${flow_priority} = 8</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.559398" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.560221" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.559905" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.560721" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.560416" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.561237" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bdf30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.560915" elapsed="0.000362"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:00.551289" elapsed="0.010043"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.568466" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;131&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:00&lt;/address&gt;
                &lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;8&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf8&lt;/flow-name&gt;
    &lt;priority&gt;8&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.568218" elapsed="0.000312"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:00.577867" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=131 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=131 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1453', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;id&gt;131&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;2048&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n            &lt;ethernet-destination&gt;\n                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;\n            &lt;/ethernet-destination&gt;\n            &lt;ethernet-source&gt;\n                &lt;address&gt;00:00:00:11:23:00&lt;/address&gt;\n                &lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;\n            &lt;/ethernet-source&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;\n        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;\n        &lt;ip-match&gt;\n            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;\n            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;\n            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;\n        &lt;/ip-match&gt;\n        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;\n        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;\n        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;\n    &lt;/match&gt;\n    &lt;cookie&gt;8&lt;/cookie&gt;\n    &lt;flow-name&gt;FooXf8&lt;/flow-name&gt;\n    &lt;priority&gt;8&lt;/priority&gt;\n    &lt;barrier&gt;false&lt;/barrier&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:00.577969" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=131 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:00.578062" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:00.568655" elapsed="0.009457"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.582638" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.578320" elapsed="0.004415"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:00.567771" elapsed="0.015094"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:00.561479" elapsed="0.021504"/>
</kw>
<var name="${flowfile}">f8.xml</var>
<status status="PASS" start="2026-05-25T01:53:00.546579" elapsed="0.036522"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.584195" level="INFO">f9.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.583614" elapsed="0.000686"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:00.591429" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f9.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f9.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:00.591556" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:00.591297" elapsed="0.000287"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:00.592163" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4e9350&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:00.591734" elapsed="0.000457"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.592618" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.592344" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.593062" level="INFO">${flow_id} = 132</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.592794" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.593525" level="INFO">${flow_priority} = 9</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.593257" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:00.594454" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:00.593698" elapsed="0.000786"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.594955" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.594639" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.595474" level="INFO">${flow_id} = 132</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.595166" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.595977" level="INFO">${flow_priority} = 9</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.595667" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.596485" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.596185" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.596990" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.596681" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.597515" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4e9350&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.597202" elapsed="0.000355"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:00.590941" elapsed="0.006669"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.604817" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;132&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;9&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf9&lt;/flow-name&gt;
    &lt;priority&gt;9&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.604568" elapsed="0.000347"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:00.617841" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=132 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=132 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1409', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;id&gt;132&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;0x800&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n            &lt;ethernet-destination&gt;\n                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;\n            &lt;/ethernet-destination&gt;\n            &lt;ethernet-source&gt;\n                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;\n            &lt;/ethernet-source&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;\n        &lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;\n        &lt;ip-match&gt;\n            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;\n            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;\n            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;\n        &lt;/ip-match&gt;\n        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;\n        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;\n        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;\n    &lt;/match&gt;\n    &lt;cookie&gt;9&lt;/cookie&gt;\n    &lt;flow-name&gt;FooXf9&lt;/flow-name&gt;\n    &lt;priority&gt;9&lt;/priority&gt;\n    &lt;barrier&gt;false&lt;/barrier&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:00.617933" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=132 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:00.618057" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:00.605044" elapsed="0.013081"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.624471" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.618420" elapsed="0.006148"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:00.604136" elapsed="0.020560"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:00.597756" elapsed="0.027061"/>
</kw>
<var name="${flowfile}">f9.xml</var>
<status status="PASS" start="2026-05-25T01:53:00.583323" elapsed="0.041581"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.625995" level="INFO">f10.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.625439" elapsed="0.000685"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:00.632175" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f10.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f10.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:00.632303" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:00.632026" elapsed="0.000305"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:00.632892" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc0917b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:00.632481" elapsed="0.000438"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.633362" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.633084" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.633805" level="INFO">${flow_id} = 133</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.633536" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.634306" level="INFO">${flow_priority} = 10</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.633986" elapsed="0.000346"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:00.635211" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:00.634480" elapsed="0.000761"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.635711" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.635395" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.636229" level="INFO">${flow_id} = 133</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.635905" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.636732" level="INFO">${flow_priority} = 10</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.636420" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.637279" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.636957" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.637782" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.637474" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.638325" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc0917b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.637977" elapsed="0.000389"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:00.631690" elapsed="0.006732"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.645565" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;133&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;10&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf10&lt;/flow-name&gt;
    &lt;priority&gt;10&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.645317" elapsed="0.000311"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:00.653834" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=133 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=133 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1413', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;id&gt;133&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;0x800&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n            &lt;ethernet-destination&gt;\n                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;\n            &lt;/ethernet-destination&gt;\n            &lt;ethernet-source&gt;\n                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;\n            &lt;/ethernet-source&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;\n        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;\n        &lt;ip-match&gt;\n            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;\n            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;\n            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;\n        &lt;/ip-match&gt;\n        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;\n        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;\n        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;\n    &lt;/match&gt;\n    &lt;cookie&gt;10&lt;/cookie&gt;\n    &lt;flow-name&gt;FooXf10&lt;/flow-name&gt;\n    &lt;priority&gt;10&lt;/priority&gt;\n    &lt;barrier&gt;false&lt;/barrier&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:00.653926" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=133 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:00.654048" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:00.645755" elapsed="0.008358"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.657220" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.654361" elapsed="0.002919"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:00.644871" elapsed="0.012490"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:00.638570" elapsed="0.018867"/>
</kw>
<var name="${flowfile}">f10.xml</var>
<status status="PASS" start="2026-05-25T01:53:00.625150" elapsed="0.032342"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.658243" level="INFO">f11.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.657848" elapsed="0.000458"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:00.663083" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f11.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f11.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:00.663261" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:00.662881" elapsed="0.000420"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:00.664098" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc093f60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:00.663508" elapsed="0.000631"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.664731" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.664350" elapsed="0.000418"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.665375" level="INFO">${flow_id} = 134</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.664977" elapsed="0.000433"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.665991" level="INFO">${flow_priority} = 11</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.665619" elapsed="0.000407"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:00.667336" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:00.666304" elapsed="0.001075"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.668038" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.667595" elapsed="0.000524"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.668764" level="INFO">${flow_id} = 134</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.668335" elapsed="0.000485"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.669489" level="INFO">${flow_priority} = 11</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.669030" elapsed="0.000516"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.670235" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.669756" elapsed="0.000544"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.670907" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.670512" elapsed="0.000439"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.671427" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc093f60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.671117" elapsed="0.000352"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:00.662420" elapsed="0.009103"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.678906" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;134&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;1&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;27&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv4-match&gt;
            &lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;
            &lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;
        &lt;/icmpv4-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;11&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf11&lt;/flow-name&gt;
    &lt;priority&gt;11&lt;/priority&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.678528" elapsed="0.000441"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:00.689368" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=134 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=134 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1404', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;id&gt;134&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;0x800&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n            &lt;ethernet-destination&gt;\n                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;\n            &lt;/ethernet-destination&gt;\n            &lt;ethernet-source&gt;\n                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;\n            &lt;/ethernet-source&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;\n        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;\n        &lt;ip-match&gt;\n            &lt;ip-protocol&gt;1&lt;/ip-protocol&gt;\n            &lt;ip-dscp&gt;27&lt;/ip-dscp&gt;\n            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;\n        &lt;/ip-match&gt;\n        &lt;icmpv4-match&gt;\n            &lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;\n            &lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;\n        &lt;/icmpv4-match&gt;\n        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;\n    &lt;/match&gt;\n    &lt;cookie&gt;11&lt;/cookie&gt;\n    &lt;flow-name&gt;FooXf11&lt;/flow-name&gt;\n    &lt;priority&gt;11&lt;/priority&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:00.689478" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=134 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:00.689577" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:00.679115" elapsed="0.010488"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.691882" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.689767" elapsed="0.002158"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:00.678081" elapsed="0.013902"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:00.671670" elapsed="0.020366"/>
</kw>
<var name="${flowfile}">f11.xml</var>
<status status="PASS" start="2026-05-25T01:53:00.657667" elapsed="0.034425"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.692573" level="INFO">f14.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.692325" elapsed="0.000292"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:00.696175" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f14.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f14.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:00.696309" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:00.696018" elapsed="0.000320"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:00.696905" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bea70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:00.696487" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.697379" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.697101" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.697823" level="INFO">${flow_id} = 137</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.697556" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.698316" level="INFO">${flow_priority} = 14</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.697997" elapsed="0.000345"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:00.699229" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:00.698490" elapsed="0.000769"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.699733" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.699416" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.700248" level="INFO">${flow_id} = 137</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.699926" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.700749" level="INFO">${flow_priority} = 14</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.700440" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.701254" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.700940" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.701755" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.701449" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.702294" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bea70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.701949" elapsed="0.000388"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:00.695575" elapsed="0.006817"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.709592" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;137&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x806&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;arp-op&gt;1&lt;/arp-op&gt;
        &lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;
        &lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;
        &lt;arp-source-hardware-address&gt;
            &lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;
        &lt;/arp-source-hardware-address&gt;
        &lt;arp-target-hardware-address&gt;
            &lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;
        &lt;/arp-target-hardware-address&gt;
    &lt;/match&gt;
    &lt;cookie&gt;14&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf14&lt;/flow-name&gt;
    &lt;priority&gt;14&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.709343" elapsed="0.000347"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:00.723015" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=137 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=137 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1460', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;id&gt;137&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;0x806&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n            &lt;ethernet-destination&gt;\n                &lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;\n            &lt;/ethernet-destination&gt;\n            &lt;ethernet-source&gt;\n                &lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;\n            &lt;/ethernet-source&gt;\n        &lt;/ethernet-match&gt;\n        &lt;arp-op&gt;1&lt;/arp-op&gt;\n        &lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;\n        &lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;\n        &lt;arp-source-hardware-address&gt;\n            &lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;\n        &lt;/arp-source-hardware-address&gt;\n        &lt;arp-target-hardware-address&gt;\n            &lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;\n        &lt;/arp-target-hardware-address&gt;\n    &lt;/match&gt;\n    &lt;cookie&gt;14&lt;/cookie&gt;\n    &lt;flow-name&gt;FooXf14&lt;/flow-name&gt;\n    &lt;priority&gt;14&lt;/priority&gt;\n    &lt;barrier&gt;false&lt;/barrier&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:00.723200" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=137 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:00.723399" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:00.709822" elapsed="0.013634"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.728448" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.723803" elapsed="0.004740"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:00.708895" elapsed="0.019775"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:00.702540" elapsed="0.026252"/>
</kw>
<var name="${flowfile}">f14.xml</var>
<status status="PASS" start="2026-05-25T01:53:00.692196" elapsed="0.036684"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.729959" level="INFO">f15.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.729411" elapsed="0.000645"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:00.735482" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f15.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f15.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:00.735665" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:00.735286" elapsed="0.000421"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:00.736535" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc0926b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:00.735928" elapsed="0.000648"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.737232" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.736802" elapsed="0.000468"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.737890" level="INFO">${flow_id} = 138</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.737494" elapsed="0.000434"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.738588" level="INFO">${flow_priority} = 15</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.738186" elapsed="0.000440"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:00.739821" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:00.738848" elapsed="0.001017"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.740583" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.740115" elapsed="0.000528"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.741346" level="INFO">${flow_id} = 138</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.740871" elapsed="0.000535"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.742112" level="INFO">${flow_priority} = 15</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.741630" elapsed="0.000619"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.742880" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.742481" elapsed="0.000444"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.743401" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.743091" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.743910" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc0926b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.743599" elapsed="0.000353"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:00.734771" elapsed="0.009236"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.751240" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;138&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;15&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf15&lt;/flow-name&gt;
    &lt;priority&gt;15&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.750971" elapsed="0.000331"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:00.761312" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=138 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=138 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1195', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;id&gt;138&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;34887&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n            &lt;ethernet-destination&gt;\n                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;\n            &lt;/ethernet-destination&gt;\n            &lt;ethernet-source&gt;\n                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;\n            &lt;/ethernet-source&gt;\n        &lt;/ethernet-match&gt;\n        &lt;vlan-match&gt;\n            &lt;vlan-id&gt;\n                &lt;vlan-id&gt;78&lt;/vlan-id&gt;\n                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;\n            &lt;/vlan-id&gt;\n        &lt;/vlan-match&gt;\n    &lt;/match&gt;\n    &lt;cookie&gt;15&lt;/cookie&gt;\n    &lt;flow-name&gt;FooXf15&lt;/flow-name&gt;\n    &lt;priority&gt;15&lt;/priority&gt;\n    &lt;barrier&gt;false&lt;/barrier&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:00.761375" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=138 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:00.761464" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:00.751431" elapsed="0.010059"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.764942" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.761650" elapsed="0.003388"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:00.750533" elapsed="0.014665"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:00.744173" elapsed="0.021147"/>
</kw>
<var name="${flowfile}">f15.xml</var>
<status status="PASS" start="2026-05-25T01:53:00.729126" elapsed="0.036282"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.766527" level="INFO">f16.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.765905" elapsed="0.000720"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:00.772358" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f16.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f16.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:00.772518" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:00.772225" elapsed="0.000322"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:00.773113" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc359b70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:00.772700" elapsed="0.000442"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.773570" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.773294" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.774021" level="INFO">${flow_id} = 139</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.773747" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.774498" level="INFO">${flow_priority} = 16</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.774227" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:00.775336" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:00.774673" elapsed="0.000693"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.775838" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.775521" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.776359" level="INFO">${flow_id} = 139</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.776033" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.776861" level="INFO">${flow_priority} = 16</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.776550" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.777368" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.777051" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.777866" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.777562" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.778398" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc359b70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.778059" elapsed="0.000380"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:00.771878" elapsed="0.006615"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.785726" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    &lt;priority&gt;16&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.785476" elapsed="0.000312"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:00.797159" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1200', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;\n    &lt;id&gt;139&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;cookie&gt;16&lt;/cookie&gt;\n    &lt;priority&gt;16&lt;/priority&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;2048&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n            &lt;ethernet-destination&gt;\n                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;\n            &lt;/ethernet-destination&gt;\n            &lt;ethernet-source&gt;\n                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;\n            &lt;/ethernet-source&gt;\n        &lt;/ethernet-match&gt;\n        &lt;vlan-match&gt;\n            &lt;vlan-id&gt;\n                &lt;vlan-id&gt;78&lt;/vlan-id&gt;\n                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;\n            &lt;/vlan-id&gt;\n            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;\n        &lt;/vlan-match&gt;\n    &lt;/match&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:00.797294" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:00.797429" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:00.785916" elapsed="0.011551"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.801847" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.797704" elapsed="0.004239"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:00.785029" elapsed="0.017069"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:00.778640" elapsed="0.023604"/>
</kw>
<var name="${flowfile}">f16.xml</var>
<status status="PASS" start="2026-05-25T01:53:00.765621" elapsed="0.036715"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.803418" level="INFO">f17.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.802836" elapsed="0.000679"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:00.810970" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f17.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f17.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:00.811112" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:00.810837" elapsed="0.000306"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:00.811694" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc091a30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:00.811294" elapsed="0.000428"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.812249" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.811955" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.812697" level="INFO">${flow_id} = 140</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.812428" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.813162" level="INFO">${flow_priority} = 17</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.812873" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:00.813961" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:00.813336" elapsed="0.000655"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.814504" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.814177" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.815010" level="INFO">${flow_id} = 140</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.814700" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.815529" level="INFO">${flow_priority} = 17</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.815220" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.816017" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.815719" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.816531" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.816227" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.817029" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc091a30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.816725" elapsed="0.000360"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:00.810116" elapsed="0.007025"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.824258" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    &lt;priority&gt;17&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;protocol-match-fields&gt;
            &lt;mpls-label&gt;567&lt;/mpls-label&gt;
            &lt;mpls-tc&gt;3&lt;/mpls-tc&gt;
            &lt;mpls-bos&gt;1&lt;/mpls-bos&gt;
        &lt;/protocol-match-fields&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.823992" elapsed="0.000365"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:00.837163" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=140 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=140 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1158', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;\n    &lt;id&gt;140&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;cookie&gt;17&lt;/cookie&gt;\n    &lt;priority&gt;17&lt;/priority&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;34887&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n            &lt;ethernet-destination&gt;\n                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;\n            &lt;/ethernet-destination&gt;\n            &lt;ethernet-source&gt;\n                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;\n            &lt;/ethernet-source&gt;\n        &lt;/ethernet-match&gt;\n        &lt;protocol-match-fields&gt;\n            &lt;mpls-label&gt;567&lt;/mpls-label&gt;\n            &lt;mpls-tc&gt;3&lt;/mpls-tc&gt;\n            &lt;mpls-bos&gt;1&lt;/mpls-bos&gt;\n        &lt;/protocol-match-fields&gt;\n    &lt;/match&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:00.837256" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=140 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:00.837387" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:00.824487" elapsed="0.012937"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.840732" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.837657" elapsed="0.003141"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:00.823557" elapsed="0.017325"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:00.817289" elapsed="0.023673"/>
</kw>
<var name="${flowfile}">f17.xml</var>
<status status="PASS" start="2026-05-25T01:53:00.802551" elapsed="0.038469"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.841739" level="INFO">f18.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.841374" elapsed="0.000429"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:00.846994" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f18.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f18.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:00.847201" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:00.846799" elapsed="0.000445"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:00.848030" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc359350&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:00.847468" elapsed="0.000622"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.848722" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.848318" elapsed="0.000441"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.849400" level="INFO">${flow_id} = 141</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.848981" elapsed="0.000457"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.850052" level="INFO">${flow_priority} = 18</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.849659" elapsed="0.000451"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:00.851185" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:00.850345" elapsed="0.000885"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.851924" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.851459" elapsed="0.000526"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.852688" level="INFO">${flow_id} = 141</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.852232" elapsed="0.000517"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.853459" level="INFO">${flow_priority} = 18</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.853001" elapsed="0.000514"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.854252" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.853726" elapsed="0.000644"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.854975" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.854598" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.855499" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc359350&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.855188" elapsed="0.000353"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:00.846306" elapsed="0.009290"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.862791" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;18&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;18&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.862539" elapsed="0.000310"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:00.873610" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=141 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=141 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '914', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;\n    &lt;id&gt;141&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;cookie&gt;18&lt;/cookie&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;priority&gt;18&lt;/priority&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;34525&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;\n        &lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;\n    &lt;/match&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:00.873669" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=141 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:00.873758" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:00.862976" elapsed="0.010831"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.878894" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.874221" elapsed="0.004769"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:00.862078" elapsed="0.017078"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:00.855744" elapsed="0.023535"/>
</kw>
<var name="${flowfile}">f18.xml</var>
<status status="PASS" start="2026-05-25T01:53:00.841183" elapsed="0.038185"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.880446" level="INFO">f19.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.879861" elapsed="0.000682"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:00.885265" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f19.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f19.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:00.885389" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:00.885130" elapsed="0.000288"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:00.885948" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7d8f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:00.885567" elapsed="0.000408"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.886435" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.886143" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.886921" level="INFO">${flow_id} = 142</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.886646" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.887388" level="INFO">${flow_priority} = 19</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.887114" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:00.888117" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:00.887563" elapsed="0.000584"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.888617" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.888302" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.889171" level="INFO">${flow_id} = 142</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.888848" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.889675" level="INFO">${flow_priority} = 19</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.889364" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.890191" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.889866" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.890694" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.890389" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.891209" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7d8f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.890888" elapsed="0.000364"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:00.884780" elapsed="0.006527"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.898514" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;19&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;19&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.898264" elapsed="0.000305"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:00.909393" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=142 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=142 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '714', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;\n    &lt;id&gt;142&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;cookie&gt;19&lt;/cookie&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;priority&gt;19&lt;/priority&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;match&gt;\n        &lt;metadata&gt;\n            &lt;metadata&gt;12345&lt;/metadata&gt;\n        &lt;/metadata&gt;\n    &lt;/match&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:00.909473" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=142 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:00.909606" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:00.898696" elapsed="0.010945"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.914121" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.909864" elapsed="0.004377"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:00.897804" elapsed="0.016566"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:00.891455" elapsed="0.023031"/>
</kw>
<var name="${flowfile}">f19.xml</var>
<status status="PASS" start="2026-05-25T01:53:00.879581" elapsed="0.035058"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.915715" level="INFO">f20.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.915167" elapsed="0.000645"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:00.923132" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f20.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f20.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:00.923258" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:00.922983" elapsed="0.000304"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:00.923817" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7fdd0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:00.923438" elapsed="0.000408"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.924292" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.923998" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.924736" level="INFO">${flow_id} = 143</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.924468" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.925195" level="INFO">${flow_priority} = 20</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.924910" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:00.925905" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:00.925369" elapsed="0.000566"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.926447" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.926104" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.926948" level="INFO">${flow_id} = 143</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.926643" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.927468" level="INFO">${flow_priority} = 20</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.927157" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.927955" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.927659" elapsed="0.000340"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.928471" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.928166" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.928976" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7fdd0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.928667" elapsed="0.000349"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:00.922465" elapsed="0.006619"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.936251" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;20&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;20&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xf0ff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.935985" elapsed="0.000322"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:00.944371" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=143 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=143 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '764', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;\n    &lt;id&gt;143&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;cookie&gt;20&lt;/cookie&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;priority&gt;20&lt;/priority&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;match&gt;\n        &lt;metadata&gt;\n            &lt;metadata&gt;12345&lt;/metadata&gt;\n            &lt;metadata-mask&gt;0xf0ff&lt;/metadata-mask&gt;\n        &lt;/metadata&gt;\n    &lt;/match&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:00.944501" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=143 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:00.944636" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:00.936434" elapsed="0.008240"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.947973" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.944906" elapsed="0.003130"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:00.935551" elapsed="0.012590"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:00.929237" elapsed="0.018984"/>
</kw>
<var name="${flowfile}">f20.xml</var>
<status status="PASS" start="2026-05-25T01:53:00.914854" elapsed="0.033424"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.948969" level="INFO">f21.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.948608" elapsed="0.000425"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:00.954290" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:00.954498" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:00.954036" elapsed="0.000505"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:00.955203" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7df30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:00.954765" elapsed="0.000466"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.955659" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.955384" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.956119" level="INFO">${flow_id} = 144</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.955836" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.956562" level="INFO">${flow_priority} = 21</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.956295" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:00.957431" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:00.956733" elapsed="0.000728"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.957934" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.957619" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.958476" level="INFO">${flow_id} = 144</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.958144" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.958980" level="INFO">${flow_priority} = 21</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.958670" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.959488" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.959189" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.959990" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.959683" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.960508" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7df30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.960201" elapsed="0.000348"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:00.953539" elapsed="0.007063"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.967806" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.967557" elapsed="0.000349"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:00.977656" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1249', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;\n    &lt;id&gt;144&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;cookie&gt;21&lt;/cookie&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;priority&gt;21&lt;/priority&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;34525&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;\n        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;\n        &lt;metadata&gt;\n            &lt;metadata&gt;12345&lt;/metadata&gt;\n        &lt;/metadata&gt;\n        &lt;ip-match&gt;\n            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;\n            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;\n            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;\n        &lt;/ip-match&gt;\n        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;\n        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;\n    &lt;/match&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:00.977831" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:00.977964" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:00.968035" elapsed="0.009966"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.981402" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.978346" elapsed="0.003121"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:00.967125" elapsed="0.014426"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:00.960751" elapsed="0.020879"/>
</kw>
<var name="${flowfile}">f21.xml</var>
<status status="PASS" start="2026-05-25T01:53:00.948419" elapsed="0.033270"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.982418" level="INFO">f22.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:00.982018" elapsed="0.000465"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:00.987591" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f22.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f22.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:00.987805" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:00.987395" elapsed="0.000452"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:00.988688" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcfcfe0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:00.988089" elapsed="0.000640"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.989385" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.988953" elapsed="0.000470"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.990042" level="INFO">${flow_id} = 145</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.989646" elapsed="0.000454"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:00.990768" level="INFO">${flow_priority} = 22</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:00.990364" elapsed="0.000442"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:00.992053" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:00.991027" elapsed="0.001090"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.992814" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.992350" elapsed="0.000524"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.993576" level="INFO">${flow_id} = 145</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.993122" elapsed="0.000513"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.994376" level="INFO">${flow_priority} = 22</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.993859" elapsed="0.000578"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.995050" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.994710" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.995576" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.995267" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:00.996093" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcfcfe0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:00.995772" elapsed="0.000364"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:00.986886" elapsed="0.009305"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.003402" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;22&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;22&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.003152" elapsed="0.000312"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:01.012876" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=145 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=145 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1247', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;\n    &lt;id&gt;145&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;cookie&gt;22&lt;/cookie&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;priority&gt;22&lt;/priority&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;34525&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;\n        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;\n        &lt;metadata&gt;\n            &lt;metadata&gt;12345&lt;/metadata&gt;\n        &lt;/metadata&gt;\n        &lt;ip-match&gt;\n            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;\n            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;\n            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;\n        &lt;/ip-match&gt;\n        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;\n        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;\n    &lt;/match&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:01.012939" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=145 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:01.013026" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:01.003590" elapsed="0.009461"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.016267" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.013232" elapsed="0.003130"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:01.002703" elapsed="0.013788"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:00.996340" elapsed="0.020269"/>
</kw>
<var name="${flowfile}">f22.xml</var>
<status status="PASS" start="2026-05-25T01:53:00.981832" elapsed="0.034865"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.017774" level="INFO">f23.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.017225" elapsed="0.000645"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:01.024058" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f23.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f23.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:01.024230" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:01.023925" elapsed="0.000335"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:01.024820" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcffa60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:01.024410" elapsed="0.000439"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.025298" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.025001" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.025794" level="INFO">${flow_id} = 146</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.025517" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.026274" level="INFO">${flow_priority} = 23</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.025973" elapsed="0.000327"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:01.027180" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:01.026453" elapsed="0.000758"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.027682" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.027367" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.028199" level="INFO">${flow_id} = 146</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.027877" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.028702" level="INFO">${flow_priority} = 23</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.028392" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.029209" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.028893" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.029711" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.029405" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.030247" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcffa60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.029911" elapsed="0.000378"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:01.023592" elapsed="0.006752"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.037556" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;23&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;23&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.037306" elapsed="0.000313"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:01.047663" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=146 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=146 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1332', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;\n    &lt;id&gt;146&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;cookie&gt;23&lt;/cookie&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;priority&gt;23&lt;/priority&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;34525&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;\n        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;\n        &lt;metadata&gt;\n            &lt;metadata&gt;12345&lt;/metadata&gt;\n        &lt;/metadata&gt;\n        &lt;ipv6-label&gt;\n            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;\n        &lt;/ipv6-label&gt;\n        &lt;ip-match&gt;\n            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;\n            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;\n            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;\n        &lt;/ip-match&gt;\n        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;\n        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;\n    &lt;/match&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:01.047799" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=146 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:01.047933" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:01.037745" elapsed="0.010226"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.052537" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.048229" elapsed="0.004372"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:01.036861" elapsed="0.015825"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:01.030493" elapsed="0.022273"/>
</kw>
<var name="${flowfile}">f23.xml</var>
<status status="PASS" start="2026-05-25T01:53:01.016913" elapsed="0.035912"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.053548" level="INFO">f24.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.053181" elapsed="0.000432"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:01.058735" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f24.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f24.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:01.058953" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:01.058540" elapsed="0.000455"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:01.059757" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcfede0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:01.059227" elapsed="0.000568"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.060413" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.060007" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.061040" level="INFO">${flow_id} = 147</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.060662" elapsed="0.000433"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.061683" level="INFO">${flow_priority} = 24</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.061307" elapsed="0.000412"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:01.062706" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:01.061924" elapsed="0.000824"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.063292" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.062953" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.063793" level="INFO">${flow_id} = 147</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.063485" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.064319" level="INFO">${flow_priority} = 24</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.063988" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.064811" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.064512" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.065339" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.065006" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.065843" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcfede0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.065534" elapsed="0.000350"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:01.058015" elapsed="0.007923"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.073153" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;24&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;24&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                        &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.072888" elapsed="0.000357"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:01.083358" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=147 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=147 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '715', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;\n    &lt;id&gt;147&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;cookie&gt;24&lt;/cookie&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;priority&gt;24&lt;/priority&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                        &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;match&gt;\n        &lt;tunnel&gt;\n            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;\n        &lt;/tunnel&gt;\n    &lt;/match&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:01.083489" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=147 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:01.083688" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:01.073382" elapsed="0.010362"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.089156" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.084138" elapsed="0.005123"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:01.072454" elapsed="0.016944"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:01.066100" elapsed="0.023428"/>
</kw>
<var name="${flowfile}">f24.xml</var>
<status status="PASS" start="2026-05-25T01:53:01.052967" elapsed="0.036657"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.090829" level="INFO">f25.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.090260" elapsed="0.000613"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:01.094411" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f25.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f25.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:01.094542" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:01.094276" elapsed="0.000295"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:01.095169" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcfdb70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:01.094722" elapsed="0.000475"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.095673" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.095393" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.096144" level="INFO">${flow_id} = 148</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.095851" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.096634" level="INFO">${flow_priority} = 25</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.096322" elapsed="0.000339"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:01.097564" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:01.096812" elapsed="0.000783"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.098090" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.097753" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.098616" level="INFO">${flow_id} = 148</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.098303" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.099151" level="INFO">${flow_priority} = 25</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.098814" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.099649" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.099345" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.100172" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.099845" elapsed="0.000419"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.100736" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcfdb70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.100421" elapsed="0.000358"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:01.093910" elapsed="0.006926"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.108184" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;25&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;25&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.107916" elapsed="0.000334"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:01.118886" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=148 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=148 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1357', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;\n    &lt;id&gt;148&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;cookie&gt;25&lt;/cookie&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;priority&gt;25&lt;/priority&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;34525&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;\n        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;\n        &lt;metadata&gt;\n            &lt;metadata&gt;12345&lt;/metadata&gt;\n        &lt;/metadata&gt;\n        &lt;ipv6-label&gt;\n            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;\n        &lt;/ipv6-label&gt;\n        &lt;ip-match&gt;\n            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;\n            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;\n            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;\n        &lt;/ip-match&gt;\n        &lt;icmpv6-match&gt;\n            &lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;\n            &lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;\n        &lt;/icmpv6-match&gt;\n    &lt;/match&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:01.119035" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=148 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:01.119288" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:01.108382" elapsed="0.010962"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.123862" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.119704" elapsed="0.004218"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:01.107476" elapsed="0.016526"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:01.100988" elapsed="0.023112"/>
</kw>
<var name="${flowfile}">f25.xml</var>
<status status="PASS" start="2026-05-25T01:53:01.089861" elapsed="0.034297"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.124835" level="INFO">f31.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.124481" elapsed="0.000416"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:01.129712" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f31.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f31.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:01.129896" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:01.129522" elapsed="0.000454"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:01.130793" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcfdc60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:01.130233" elapsed="0.000599"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.131462" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.131047" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.132105" level="INFO">${flow_id} = 154</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.131709" elapsed="0.000434"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.132730" level="INFO">${flow_priority} = 31</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.132355" elapsed="0.000410"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:01.133834" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:01.132972" elapsed="0.000905"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.134597" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.134115" elapsed="0.000542"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.135215" level="INFO">${flow_id} = 154</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.134881" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.135721" level="INFO">${flow_priority} = 31</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.135409" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.136228" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.135913" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.136732" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.136425" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.137257" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcfdc60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.136933" elapsed="0.000365"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:01.129031" elapsed="0.008324"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.144561" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;154&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;31&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf31&lt;/flow-name&gt;
    &lt;priority&gt;31&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.144312" elapsed="0.000309"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:01.153426" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=154 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=154 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1034', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;id&gt;154&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;2048&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;\n    &lt;/match&gt;\n    &lt;cookie&gt;31&lt;/cookie&gt;\n    &lt;flow-name&gt;FooXf31&lt;/flow-name&gt;\n    &lt;priority&gt;31&lt;/priority&gt;\n    &lt;barrier&gt;false&lt;/barrier&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:01.153521" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=154 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:01.153613" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:01.144748" elapsed="0.008890"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.157304" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.153794" elapsed="0.003607"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:01.143863" elapsed="0.013667"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:01.137504" elapsed="0.020146"/>
</kw>
<var name="${flowfile}">f31.xml</var>
<status status="PASS" start="2026-05-25T01:53:01.124299" elapsed="0.033440"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.158852" level="INFO">f36.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.158293" elapsed="0.000658"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:01.166757" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f36.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f36.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:01.166947" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:01.166459" elapsed="0.000516"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:01.167530" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7c680&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:01.167141" elapsed="0.000417"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.167984" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.167710" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.168447" level="INFO">${flow_id} = 159</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.168177" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.168893" level="INFO">${flow_priority} = 36</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.168621" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:01.169666" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:01.169065" elapsed="0.000631"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.170198" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.169851" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.170703" level="INFO">${flow_id} = 159</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.170395" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.171223" level="INFO">${flow_priority} = 36</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.170895" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.171716" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.171416" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.172242" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.171916" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.172743" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7c680&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.172437" elapsed="0.000347"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:01.165639" elapsed="0.007199"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.180057" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;159&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;36&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf36&lt;/flow-name&gt;
    &lt;priority&gt;36&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.179808" elapsed="0.000357"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:01.191595" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=159 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=159 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '864', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;id&gt;159&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;2048&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;\n    &lt;/match&gt;\n    &lt;cookie&gt;36&lt;/cookie&gt;\n    &lt;flow-name&gt;FooXf36&lt;/flow-name&gt;\n    &lt;priority&gt;36&lt;/priority&gt;\n    &lt;barrier&gt;false&lt;/barrier&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:01.191679" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=159 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:01.191805" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:01.180369" elapsed="0.011471"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.195053" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.192061" elapsed="0.003077"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:01.179373" elapsed="0.015848"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:01.172986" elapsed="0.022310"/>
</kw>
<var name="${flowfile}">f36.xml</var>
<status status="PASS" start="2026-05-25T01:53:01.157956" elapsed="0.037396"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.196096" level="INFO">f38.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.195722" elapsed="0.000439"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:01.201007" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f38.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f38.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:01.201209" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:01.200818" elapsed="0.000432"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:01.202023" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace530c20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:01.201460" elapsed="0.000603"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.202718" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.202318" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.203393" level="INFO">${flow_id} = 161</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.202981" elapsed="0.000448"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.204036" level="INFO">${flow_priority} = 38</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.203641" elapsed="0.000453"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:01.205200" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:01.204308" elapsed="0.000936"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.205948" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.205463" elapsed="0.000559"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.206748" level="INFO">${flow_id} = 161</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.206308" elapsed="0.000527"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.207371" level="INFO">${flow_priority} = 38</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.207036" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.207878" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.207567" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.208444" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.208130" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.208966" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace530c20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.208642" elapsed="0.000366"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:01.200335" elapsed="0.008729"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.216542" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;161&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;38&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf38&lt;/flow-name&gt;
    &lt;priority&gt;38&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.216288" elapsed="0.000313"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:01.229508" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=161 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=161 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '946', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;id&gt;161&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;2048&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;\n    &lt;/match&gt;\n    &lt;cookie&gt;38&lt;/cookie&gt;\n    &lt;flow-name&gt;FooXf38&lt;/flow-name&gt;\n    &lt;priority&gt;38&lt;/priority&gt;\n    &lt;barrier&gt;false&lt;/barrier&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:01.229641" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=161 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:01.229842" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:01.216855" elapsed="0.013042"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.235052" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.230343" elapsed="0.004845"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:01.215812" elapsed="0.019525"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:01.209235" elapsed="0.026225"/>
</kw>
<var name="${flowfile}">f38.xml</var>
<status status="PASS" start="2026-05-25T01:53:01.195489" elapsed="0.040057"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.236670" level="INFO">f43.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.236053" elapsed="0.000717"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:01.242416" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f43.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f43.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:01.242605" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:01.242226" elapsed="0.000419"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:01.243441" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bad40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:01.242857" elapsed="0.000632"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.244135" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.243714" elapsed="0.000459"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.244840" level="INFO">${flow_id} = 166</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.244436" elapsed="0.000441"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.245526" level="INFO">${flow_priority} = 43</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.245134" elapsed="0.000439"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:01.246744" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:01.245791" elapsed="0.000996"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.247480" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.247010" elapsed="0.000529"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.248234" level="INFO">${flow_id} = 166</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.247773" elapsed="0.000520"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.248960" level="INFO">${flow_priority} = 43</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.248508" elapsed="0.000509"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.249694" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.249257" elapsed="0.000502"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.250475" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.249972" elapsed="0.000566"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.251141" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bad40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.250767" elapsed="0.000417"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:01.241720" elapsed="0.009519"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.258476" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;166&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;43&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf43&lt;/flow-name&gt;
    &lt;priority&gt;43&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.258224" elapsed="0.000312"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:01.267371" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=166 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=166 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1094', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;id&gt;166&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;34525&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n        &lt;/ethernet-match&gt;\n        &lt;icmpv6-match&gt;\n            &lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;\n            &lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;\n        &lt;/icmpv6-match&gt;\n        &lt;ip-match&gt;\n            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;\n        &lt;/ip-match&gt;\n    &lt;/match&gt;\n    &lt;cookie&gt;43&lt;/cookie&gt;\n    &lt;flow-name&gt;FooXf43&lt;/flow-name&gt;\n    &lt;priority&gt;43&lt;/priority&gt;\n    &lt;barrier&gt;false&lt;/barrier&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:01.267433" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=166 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:01.267524" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:01.258665" elapsed="0.008884"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.269845" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.267742" elapsed="0.002148"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:01.257755" elapsed="0.012207"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:01.251389" elapsed="0.018629"/>
</kw>
<var name="${flowfile}">f43.xml</var>
<status status="PASS" start="2026-05-25T01:53:01.235765" elapsed="0.034292"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.270591" level="INFO">f45.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.270341" elapsed="0.000294"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:01.278387" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f45.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f45.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:01.278671" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:01.277976" elapsed="0.000758"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:01.279378" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4beb60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:01.278962" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.279835" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.279559" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.280314" level="INFO">${flow_id} = 168</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.280012" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.280764" level="INFO">${flow_priority} = 45</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.280493" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:01.281563" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:01.280940" elapsed="0.000653"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.282205" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.281749" elapsed="0.000505"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.282724" level="INFO">${flow_id} = 168</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.282412" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.283255" level="INFO">${flow_priority} = 45</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.282917" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.283755" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.283451" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.284285" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.283951" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.284799" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4beb60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.284486" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:01.277196" elapsed="0.007705"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.292234" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;168&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;1180719718&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xfff0ffff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
    &lt;cookie&gt;45&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf45&lt;/flow-name&gt;
    &lt;priority&gt;45&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.291957" elapsed="0.000380"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:01.305384" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=168 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=168 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '980', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;id&gt;168&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;\n    &lt;match&gt;\n        &lt;metadata&gt;\n            &lt;metadata&gt;1180719718&lt;/metadata&gt;\n            &lt;metadata-mask&gt;0xfff0ffff&lt;/metadata-mask&gt;\n        &lt;/metadata&gt;\n    &lt;/match&gt;\n    &lt;cookie&gt;45&lt;/cookie&gt;\n    &lt;flow-name&gt;FooXf45&lt;/flow-name&gt;\n    &lt;priority&gt;45&lt;/priority&gt;\n    &lt;barrier&gt;false&lt;/barrier&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:01.305470" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=168 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:01.305611" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:01.292478" elapsed="0.013170"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.308830" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.305876" elapsed="0.003013"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:01.291515" elapsed="0.017455"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:01.285052" elapsed="0.023993"/>
</kw>
<var name="${flowfile}">f45.xml</var>
<status status="PASS" start="2026-05-25T01:53:01.270209" elapsed="0.038914"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.309811" level="INFO">f101.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.309446" elapsed="0.000433"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:01.314804" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f101.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f101.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:01.314988" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:01.314602" elapsed="0.000426"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:01.315871" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7c220&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:01.315266" elapsed="0.000644"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.316548" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.316153" elapsed="0.000430"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.317220" level="INFO">${flow_id} = 224</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.316810" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.317862" level="INFO">${flow_priority} = 101</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.317468" elapsed="0.000430"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:01.319119" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:01.318129" elapsed="0.001022"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.319630" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.319309" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.320183" level="INFO">${flow_id} = 224</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.319850" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.320695" level="INFO">${flow_priority} = 101</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.320380" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.321312" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.320903" elapsed="0.000489"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.321874" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.321550" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.322432" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7c220&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.322099" elapsed="0.000376"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:01.314108" elapsed="0.008423"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.329789" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;101&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;101&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.329536" elapsed="0.000316"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:01.338294" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=224 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=224 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1250', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;\n    &lt;id&gt;224&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;cookie&gt;101&lt;/cookie&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;priority&gt;101&lt;/priority&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;34525&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;\n        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;\n        &lt;metadata&gt;\n            &lt;metadata&gt;12345&lt;/metadata&gt;\n        &lt;/metadata&gt;\n        &lt;ip-match&gt;\n            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;\n            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;\n            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;\n        &lt;/ip-match&gt;\n        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;\n        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;\n    &lt;/match&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:01.338359" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=224 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:01.338449" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:01.329992" elapsed="0.008482"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.342452" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.338635" elapsed="0.003916"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:01.329097" elapsed="0.013585"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:01.322682" elapsed="0.020120"/>
</kw>
<var name="${flowfile}">f101.xml</var>
<status status="PASS" start="2026-05-25T01:53:01.309264" elapsed="0.033629"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.344026" level="INFO">f102.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.343460" elapsed="0.000710"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:01.351423" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f102.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f102.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:01.351552" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:01.351280" elapsed="0.000336"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:01.352215" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5accb77970&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:01.351774" elapsed="0.000469"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.352699" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.352414" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.353168" level="INFO">${flow_id} = 225</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.352878" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.353631" level="INFO">${flow_priority} = 102</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.353347" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:01.354575" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:01.353808" elapsed="0.000798"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.355107" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.354764" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.355629" level="INFO">${flow_id} = 225</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.355307" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.356156" level="INFO">${flow_priority} = 102</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.355825" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.356664" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.356350" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.357185" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.356861" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.357711" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5accb77970&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.357384" elapsed="0.000368"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:01.350919" elapsed="0.006894"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.365154" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;102&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;102&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.364885" elapsed="0.000333"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:01.375957" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=225 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=225 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1376', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;\n    &lt;id&gt;225&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;cookie&gt;102&lt;/cookie&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;priority&gt;102&lt;/priority&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;2048&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n            &lt;ethernet-destination&gt;\n                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;\n            &lt;/ethernet-destination&gt;\n            &lt;ethernet-source&gt;\n                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;\n            &lt;/ethernet-source&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;\n        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;\n        &lt;ip-match&gt;\n            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;\n            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;\n            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;\n        &lt;/ip-match&gt;\n        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;\n        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;\n    &lt;/match&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:01.376121" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=225 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:01.376253" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:01.365347" elapsed="0.010943"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.379958" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.376515" elapsed="0.003543"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:01.364434" elapsed="0.015792"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:01.357961" elapsed="0.022387"/>
</kw>
<var name="${flowfile}">f102.xml</var>
<status status="PASS" start="2026-05-25T01:53:01.343159" elapsed="0.037278"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.381576" level="INFO">f103.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.380976" elapsed="0.000702"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:01.389574" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f103.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f103.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:01.389858" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:01.389266" elapsed="0.000658"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:01.391107" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc092980&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:01.390362" elapsed="0.000781"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.391586" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.391302" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.392039" level="INFO">${flow_id} = 226</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.391765" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.392520" level="INFO">${flow_priority} = 103</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.392245" elapsed="0.000301"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:01.393447" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:01.392696" elapsed="0.000782"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.393954" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.393635" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.394511" level="INFO">${flow_id} = 226</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.394190" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.395016" level="INFO">${flow_priority} = 103</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.394705" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.395549" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.395244" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.396232" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.395894" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.396740" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc092980&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.396431" elapsed="0.000350"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:01.388468" elapsed="0.008367"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.404168" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;103&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;103&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.403895" elapsed="0.000371"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:01.415678" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=226 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=226 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1376', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;\n    &lt;id&gt;226&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;cookie&gt;103&lt;/cookie&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;priority&gt;103&lt;/priority&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;2048&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n            &lt;ethernet-destination&gt;\n                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;\n            &lt;/ethernet-destination&gt;\n            &lt;ethernet-source&gt;\n                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;\n            &lt;/ethernet-source&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;\n        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;\n        &lt;ip-match&gt;\n            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;\n            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;\n            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;\n        &lt;/ip-match&gt;\n        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;\n        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;\n    &lt;/match&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:01.415770" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=226 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:01.415897" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:01.404407" elapsed="0.011526"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.419157" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.416189" elapsed="0.003030"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:01.403428" elapsed="0.015872"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:01.396985" elapsed="0.022390"/>
</kw>
<var name="${flowfile}">f103.xml</var>
<status status="PASS" start="2026-05-25T01:53:01.380655" elapsed="0.038774"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.420135" level="INFO">f104.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.419762" elapsed="0.000436"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:01.425024" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f104.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f104.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:01.425234" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:01.424835" elapsed="0.000441"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:01.426129" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc0904a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:01.425488" elapsed="0.000697"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.426812" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.426409" elapsed="0.000441"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.427465" level="INFO">${flow_id} = 227</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.427062" elapsed="0.000439"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.428141" level="INFO">${flow_priority} = 104</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.427731" elapsed="0.000448"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:01.429402" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:01.428392" elapsed="0.001053"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.430140" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.429663" elapsed="0.000579"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.430880" level="INFO">${flow_id} = 227</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.430461" elapsed="0.000460"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.431476" level="INFO">${flow_priority} = 104</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.431157" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.432021" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.431705" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.432553" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.432246" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.433087" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc0904a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.432750" elapsed="0.000382"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:01.424352" elapsed="0.008836"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.440671" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;104&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;104&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.440419" elapsed="0.000314"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:01.450380" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=227 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=227 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1250', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;\n    &lt;id&gt;227&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;cookie&gt;104&lt;/cookie&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;priority&gt;104&lt;/priority&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;34525&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;\n        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;\n        &lt;metadata&gt;\n            &lt;metadata&gt;12345&lt;/metadata&gt;\n        &lt;/metadata&gt;\n        &lt;ip-match&gt;\n            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;\n            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;\n            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;\n        &lt;/ip-match&gt;\n        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;\n        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;\n    &lt;/match&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:01.450445" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=227 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:01.450534" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:01.440865" elapsed="0.009694"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.455420" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.450721" elapsed="0.004798"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:01.439957" elapsed="0.015693"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:01.433340" elapsed="0.022432"/>
</kw>
<var name="${flowfile}">f104.xml</var>
<status status="PASS" start="2026-05-25T01:53:01.419579" elapsed="0.036286"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.456996" level="INFO">f105.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.456437" elapsed="0.000702"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:01.463828" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f105.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f105.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:01.463957" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:01.463657" elapsed="0.000330"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:01.464591" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1e2f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:01.464158" elapsed="0.000461"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.465053" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.464774" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.465539" level="INFO">${flow_id} = 228</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.465250" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.465992" level="INFO">${flow_priority} = 105</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.465719" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:01.466910" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:01.466204" elapsed="0.000737"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.467442" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.467116" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.467953" level="INFO">${flow_id} = 228</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.467640" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.468493" level="INFO">${flow_priority} = 105</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.468165" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.468992" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.468690" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.469520" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.469206" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.470027" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1e2f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.469719" elapsed="0.000365"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:01.463312" elapsed="0.006924"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.477549" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;105&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;105&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.477294" elapsed="0.000317"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:01.486870" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=228 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=228 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1255', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;\n    &lt;id&gt;228&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;cookie&gt;105&lt;/cookie&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;priority&gt;105&lt;/priority&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;34525&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;\n        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;\n        &lt;metadata&gt;\n            &lt;metadata&gt;12345&lt;/metadata&gt;\n        &lt;/metadata&gt;\n        &lt;ip-match&gt;\n            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;\n            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;\n            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;\n        &lt;/ip-match&gt;\n        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;\n        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;\n    &lt;/match&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:01.486967" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=228 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:01.487059" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:01.477740" elapsed="0.009365"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.490093" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.487266" elapsed="0.002873"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:01.476838" elapsed="0.013374"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:01.470452" elapsed="0.019813"/>
</kw>
<var name="${flowfile}">f105.xml</var>
<status status="PASS" start="2026-05-25T01:53:01.456131" elapsed="0.034173"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.490777" level="INFO">f106.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.490530" elapsed="0.000291"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:01.494219" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f106.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f106.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:01.494357" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:01.494060" elapsed="0.000326"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:01.494955" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1d7b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:01.494538" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.495430" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.495153" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.495977" level="INFO">${flow_id} = 229</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.495609" elapsed="0.000393"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.496441" level="INFO">${flow_priority} = 106</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.496170" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:01.497316" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:01.496616" elapsed="0.000730"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.497813" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.497501" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.498367" level="INFO">${flow_id} = 229</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.498007" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.498869" level="INFO">${flow_priority} = 106</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.498560" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.499374" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.499059" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.499879" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.499568" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.500395" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1d7b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.500088" elapsed="0.000348"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:01.493724" elapsed="0.006766"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.507709" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;106&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;106&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.507457" elapsed="0.000347"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:01.519361" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=229 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=229 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1261', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;\n    &lt;id&gt;229&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;cookie&gt;106&lt;/cookie&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;priority&gt;106&lt;/priority&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;34525&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;\n        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;\n        &lt;metadata&gt;\n            &lt;metadata&gt;12345&lt;/metadata&gt;\n        &lt;/metadata&gt;\n        &lt;ip-match&gt;\n            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;\n            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;\n            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;\n        &lt;/ip-match&gt;\n        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;\n        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;\n    &lt;/match&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:01.519424" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=229 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:01.519514" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:01.507932" elapsed="0.011607"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.521761" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.519697" elapsed="0.002109"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:01.507010" elapsed="0.014856"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:01.500637" elapsed="0.021283"/>
</kw>
<var name="${flowfile}">f106.xml</var>
<status status="PASS" start="2026-05-25T01:53:01.490401" elapsed="0.031558"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.522477" level="INFO">f107.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.522227" elapsed="0.000294"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:01.525933" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f107.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f107.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:01.526062" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:01.525800" elapsed="0.000308"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:01.526702" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1c090&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:01.526280" elapsed="0.000450"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.527178" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.526883" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.527624" level="INFO">${flow_id} = 230</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.527355" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.528095" level="INFO">${flow_priority} = 107</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.527803" elapsed="0.000318"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:01.529003" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:01.528271" elapsed="0.000763"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.529522" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.529207" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.530022" level="INFO">${flow_id} = 230</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.529717" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.530593" level="INFO">${flow_priority} = 107</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.530277" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.531150" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.530831" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.531672" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.531364" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.532194" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1c090&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.531867" elapsed="0.000370"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:01.525467" elapsed="0.006825"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.539657" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;107&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;107&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.539408" elapsed="0.000314"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:01.548350" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=230 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=230 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1421', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;\n    &lt;id&gt;230&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;cookie&gt;107&lt;/cookie&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;priority&gt;107&lt;/priority&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;2048&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n            &lt;ethernet-destination&gt;\n                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;\n            &lt;/ethernet-destination&gt;\n            &lt;ethernet-source&gt;\n                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;\n            &lt;/ethernet-source&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;\n        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;\n        &lt;ip-match&gt;\n            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;\n            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;\n            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;\n        &lt;/ip-match&gt;\n        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;\n        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;\n        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;\n    &lt;/match&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:01.548416" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=230 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:01.548505" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:01.539850" elapsed="0.008680"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.551592" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.548689" elapsed="0.002964"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:01.538956" elapsed="0.012777"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:01.532442" elapsed="0.019365"/>
</kw>
<var name="${flowfile}">f107.xml</var>
<status status="PASS" start="2026-05-25T01:53:01.522057" elapsed="0.029804"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.552552" level="INFO">f108.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.552195" elapsed="0.000418"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:01.557464" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f108.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f108.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:01.557641" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:01.557280" elapsed="0.000402"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:01.558543" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6aca0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:01.557891" elapsed="0.000692"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.559096" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.558798" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.559546" level="INFO">${flow_id} = 231</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.559277" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.559990" level="INFO">${flow_priority} = 108</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.559723" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:01.560926" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:01.560181" elapsed="0.000776"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.561446" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.561130" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.561949" level="INFO">${flow_id} = 231</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.561642" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.562486" level="INFO">${flow_priority} = 108</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.562172" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.562983" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.562679" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.563502" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.563194" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.564005" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6aca0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.563699" elapsed="0.000347"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:01.556794" elapsed="0.007324"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.571354" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;108&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;108&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.571102" elapsed="0.000316"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:01.579980" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=231 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=231 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1421', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;\n    &lt;id&gt;231&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;cookie&gt;108&lt;/cookie&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;priority&gt;108&lt;/priority&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;2048&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n            &lt;ethernet-destination&gt;\n                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;\n            &lt;/ethernet-destination&gt;\n            &lt;ethernet-source&gt;\n                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;\n            &lt;/ethernet-source&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;\n        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;\n        &lt;ip-match&gt;\n            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;\n            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;\n            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;\n        &lt;/ip-match&gt;\n        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;\n        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;\n        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;\n    &lt;/match&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:01.580143" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=231 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:01.580273" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:01.571544" elapsed="0.008765"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.583495" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.580528" elapsed="0.003029"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:01.570652" elapsed="0.012985"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:01.564269" elapsed="0.019444"/>
</kw>
<var name="${flowfile}">f108.xml</var>
<status status="PASS" start="2026-05-25T01:53:01.551995" elapsed="0.031773"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.584456" level="INFO">f109.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.584107" elapsed="0.000411"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:01.589322" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f109.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f109.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:01.589499" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:01.589134" elapsed="0.000404"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:01.590397" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bf6f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:01.589747" elapsed="0.000690"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.591040" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.590651" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.591609" level="INFO">${flow_id} = 232</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.591312" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.592054" level="INFO">${flow_priority} = 109</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.591785" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:01.592981" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:01.592245" elapsed="0.000766"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.593498" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.593183" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.593998" level="INFO">${flow_id} = 232</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.593692" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.594555" level="INFO">${flow_priority} = 109</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.594236" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.595054" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.594748" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.595576" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.595269" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.596095" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bf6f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.595773" elapsed="0.000364"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:01.588642" elapsed="0.007550"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.603373" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;109&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;109&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.603122" elapsed="0.000361"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:01.617320" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=232 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=232 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1421', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;\n    &lt;id&gt;232&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;cookie&gt;109&lt;/cookie&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;priority&gt;109&lt;/priority&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;2048&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n            &lt;ethernet-destination&gt;\n                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;\n            &lt;/ethernet-destination&gt;\n            &lt;ethernet-source&gt;\n                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;\n            &lt;/ethernet-source&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;\n        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;\n        &lt;ip-match&gt;\n            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;\n            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;\n            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;\n        &lt;/ip-match&gt;\n        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;\n        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;\n        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;\n    &lt;/match&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:01.617468" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=232 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:01.617668" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:01.603616" elapsed="0.014109"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.622819" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.618108" elapsed="0.004774"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:01.602674" elapsed="0.020288"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:01.596340" elapsed="0.026697"/>
</kw>
<var name="${flowfile}">f109.xml</var>
<status status="PASS" start="2026-05-25T01:53:01.583909" elapsed="0.039205"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.623775" level="INFO">f110.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.623429" elapsed="0.000407"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:01.628623" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f110.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f110.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:01.628819" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:01.628439" elapsed="0.000421"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:01.629655" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3598a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:01.629090" elapsed="0.000605"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.630334" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.629907" elapsed="0.000463"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.630959" level="INFO">${flow_id} = 233</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.630583" elapsed="0.000412"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.631613" level="INFO">${flow_priority} = 110</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.631235" elapsed="0.000413"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:01.632785" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:01.631862" elapsed="0.000971"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.633514" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.633053" elapsed="0.000519"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.634275" level="INFO">${flow_id} = 233</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.633788" elapsed="0.000547"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.634938" level="INFO">${flow_priority} = 110</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.634551" elapsed="0.000461"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.635490" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.635185" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.635998" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.635688" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.636525" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3598a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.636214" elapsed="0.000353"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:01.627954" elapsed="0.008668"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.643956" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;110&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;110&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.643703" elapsed="0.000313"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:01.654047" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=233 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=233 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1146', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;\n    &lt;id&gt;233&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;cookie&gt;110&lt;/cookie&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;priority&gt;110&lt;/priority&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;34525&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;\n        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;\n        &lt;ip-match&gt;\n            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;\n            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;\n        &lt;/ip-match&gt;\n        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;\n        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;\n    &lt;/match&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:01.654133" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=233 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:01.654242" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:01.644167" elapsed="0.010100"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.658640" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.654425" elapsed="0.004313"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:01.643155" elapsed="0.015726"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:01.636771" elapsed="0.022247"/>
</kw>
<var name="${flowfile}">f110.xml</var>
<status status="PASS" start="2026-05-25T01:53:01.623252" elapsed="0.035890"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.660225" level="INFO">f113.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.659642" elapsed="0.000682"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:01.665231" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f113.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f113.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:01.665389" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:01.665095" elapsed="0.000324"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:01.665986" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bdda0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:01.665571" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.666477" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.666193" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.666923" level="INFO">${flow_id} = 236</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.666654" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.667387" level="INFO">${flow_priority} = 113</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.667116" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:01.668302" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:01.667562" elapsed="0.000771"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.668817" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.668489" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.669364" level="INFO">${flow_id} = 236</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.669024" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.669904" level="INFO">${flow_priority} = 113</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.669577" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.670454" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.670121" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.670968" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.670654" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.671490" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bdda0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.671181" elapsed="0.000351"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:01.664747" elapsed="0.006840"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.678807" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;113&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;113&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.678558" elapsed="0.000313"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:01.687209" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=236 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=236 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1429', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;\n    &lt;id&gt;236&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;cookie&gt;113&lt;/cookie&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;priority&gt;113&lt;/priority&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;2048&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n            &lt;ethernet-destination&gt;\n                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;\n            &lt;/ethernet-destination&gt;\n            &lt;ethernet-source&gt;\n                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;\n            &lt;/ethernet-source&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;\n        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;\n        &lt;ip-match&gt;\n            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;\n            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;\n            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;\n        &lt;/ip-match&gt;\n        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;\n        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;\n        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;\n    &lt;/match&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:01.687344" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=236 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:01.687473" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:01.678998" elapsed="0.008510"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.690683" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.687726" elapsed="0.003018"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:01.678113" elapsed="0.012710"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:01.671736" elapsed="0.019163"/>
</kw>
<var name="${flowfile}">f113.xml</var>
<status status="PASS" start="2026-05-25T01:53:01.659360" elapsed="0.031593"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.691631" level="INFO">f156.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.691288" elapsed="0.000405"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:01.696493" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f156.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f156.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:01.696686" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:01.696307" elapsed="0.000419"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:01.697524" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7c400&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:01.696936" elapsed="0.000627"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.698208" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.697777" elapsed="0.000474"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.698847" level="INFO">${flow_id} = 279</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.698468" elapsed="0.000415"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.699498" level="INFO">${flow_priority} = 156</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.699114" elapsed="0.000419"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:01.700732" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:01.699744" elapsed="0.001030"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.701456" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.700993" elapsed="0.000521"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.702214" level="INFO">${flow_id} = 279</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.701729" elapsed="0.000545"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.702947" level="INFO">${flow_priority} = 156</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.702488" elapsed="0.000509"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.703469" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.703168" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.703975" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.703670" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.704494" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7c400&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.704187" elapsed="0.000349"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:01.695821" elapsed="0.008768"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.711771" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;279&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
      &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;156&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf156&lt;/flow-name&gt;
    &lt;priority&gt;156&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.711524" elapsed="0.000349"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:01.725805" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=279 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=279 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1230', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;id&gt;279&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;2048&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n            &lt;ethernet-destination&gt;\n                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;\n            &lt;/ethernet-destination&gt;\n            &lt;ethernet-source&gt;\n                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;\n            &lt;/ethernet-source&gt;\n        &lt;/ethernet-match&gt;\n        &lt;vlan-match&gt;\n            &lt;vlan-id&gt;\n                &lt;vlan-id&gt;78&lt;/vlan-id&gt;\n                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;\n            &lt;/vlan-id&gt;\n            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;\n      &lt;/vlan-match&gt;\n    &lt;/match&gt;\n    &lt;cookie&gt;156&lt;/cookie&gt;\n    &lt;flow-name&gt;FooXf156&lt;/flow-name&gt;\n    &lt;priority&gt;156&lt;/priority&gt;\n    &lt;barrier&gt;false&lt;/barrier&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:01.725947" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=279 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:01.726229" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:01.712004" elapsed="0.014290"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.731223" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.726651" elapsed="0.004632"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:01.711092" elapsed="0.020271"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:01.704736" elapsed="0.026701"/>
</kw>
<var name="${flowfile}">f156.xml</var>
<status status="PASS" start="2026-05-25T01:53:01.691108" elapsed="0.040383"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.732178" level="INFO">f201.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.731805" elapsed="0.000435"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:01.736988" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f201.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f201.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:01.737188" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:01.736803" elapsed="0.000426"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:01.738001" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcff3d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:01.737439" elapsed="0.000601"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.738678" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.738291" elapsed="0.000422"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.739327" level="INFO">${flow_id} = 324</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.738926" elapsed="0.000437"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.739955" level="INFO">${flow_priority} = 201</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.739574" elapsed="0.000417"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:01.741171" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:01.740224" elapsed="0.000990"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.741871" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.741429" elapsed="0.000499"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.742634" level="INFO">${flow_id} = 324</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.742198" elapsed="0.000492"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.743377" level="INFO">${flow_priority} = 201</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.742903" elapsed="0.000544"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.743995" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.743645" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.744521" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.744210" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.745028" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcff3d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.744718" elapsed="0.000366"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:01.736340" elapsed="0.008802"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.752476" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;201&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;201&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.752224" elapsed="0.000314"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:01.761600" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=324 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=324 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1225', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;\n    &lt;id&gt;324&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;cookie&gt;201&lt;/cookie&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;priority&gt;201&lt;/priority&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;34525&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;\n        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;\n        &lt;metadata&gt;\n            &lt;metadata&gt;12345&lt;/metadata&gt;\n        &lt;/metadata&gt;\n        &lt;ip-match&gt;\n            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;\n            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;\n        &lt;/ip-match&gt;\n        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;\n        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;\n    &lt;/match&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:01.761689" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=324 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:01.761813" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:01.752668" elapsed="0.009181"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.764973" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.762095" elapsed="0.002938"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:01.751774" elapsed="0.013359"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:01.745293" elapsed="0.019917"/>
</kw>
<var name="${flowfile}">f201.xml</var>
<status status="PASS" start="2026-05-25T01:53:01.731629" elapsed="0.033635"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.765923" level="INFO">f202.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.765580" elapsed="0.000404"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:01.770787" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f202.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f202.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:01.771002" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:01.770602" elapsed="0.000440"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:01.771845" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bdbc0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:01.771281" elapsed="0.000604"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.772509" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.772123" elapsed="0.000422"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.773165" level="INFO">${flow_id} = 325</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.772756" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.773793" level="INFO">${flow_priority} = 202</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.773415" elapsed="0.000413"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:01.775000" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:01.774038" elapsed="0.001005"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.775728" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.775288" elapsed="0.000499"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.776455" level="INFO">${flow_id} = 325</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.776000" elapsed="0.000513"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.777180" level="INFO">${flow_priority} = 202</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.776725" elapsed="0.000514"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.777868" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.777450" elapsed="0.000480"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.778599" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.778171" elapsed="0.000491"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.779318" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bdbc0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.778871" elapsed="0.000506"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:01.770104" elapsed="0.009348"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.787687" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;202&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;202&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.787439" elapsed="0.000309"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:01.797755" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=325 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=325 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1225', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;\n    &lt;id&gt;325&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;cookie&gt;202&lt;/cookie&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;priority&gt;202&lt;/priority&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;34525&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;\n        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;\n        &lt;metadata&gt;\n            &lt;metadata&gt;12345&lt;/metadata&gt;\n        &lt;/metadata&gt;\n        &lt;ip-match&gt;\n            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;\n            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;\n        &lt;/ip-match&gt;\n        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;\n        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;\n    &lt;/match&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:01.797853" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=325 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:01.797945" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:01.787875" elapsed="0.010095"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.802095" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.798182" elapsed="0.004038"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:01.786986" elapsed="0.015361"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:01.779660" elapsed="0.022808"/>
</kw>
<var name="${flowfile}">f202.xml</var>
<status status="PASS" start="2026-05-25T01:53:01.765403" elapsed="0.037152"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.803659" level="INFO">f203.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.803058" elapsed="0.000700"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:01.811220" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f203.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f203.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:01.811347" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:01.811084" elapsed="0.000291"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:01.811933" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bfa10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:01.811526" elapsed="0.000435"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.812408" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.812131" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.812854" level="INFO">${flow_id} = 326</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.812585" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.813317" level="INFO">${flow_priority} = 203</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.813031" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:01.814185" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:01.813492" elapsed="0.000724"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.814691" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.814374" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.815228" level="INFO">${flow_id} = 326</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.814902" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.815734" level="INFO">${flow_priority} = 203</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.815422" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.816242" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.815927" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.816746" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.816439" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.817268" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bfa10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.816943" elapsed="0.000366"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:01.810471" elapsed="0.006892"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.824647" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;203&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;203&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.824397" elapsed="0.000349"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:01.836897" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=326 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=326 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1226', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;\n    &lt;id&gt;326&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;cookie&gt;203&lt;/cookie&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;priority&gt;203&lt;/priority&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;34525&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;\n        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;\n        &lt;metadata&gt;\n            &lt;metadata&gt;12345&lt;/metadata&gt;\n        &lt;/metadata&gt;\n        &lt;ip-match&gt;\n            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;\n            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;\n        &lt;/ip-match&gt;\n        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;\n        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;\n    &lt;/match&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:01.836986" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=326 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:01.837143" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:01.824878" elapsed="0.012303"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.841269" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.837402" elapsed="0.003965"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:01.823952" elapsed="0.017543"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:01.817514" elapsed="0.024101"/>
</kw>
<var name="${flowfile}">f203.xml</var>
<status status="PASS" start="2026-05-25T01:53:01.802774" elapsed="0.038927"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.842991" level="INFO">f204.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.842254" elapsed="0.000869"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:01.848678" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f204.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f204.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:01.848804" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:01.848540" elapsed="0.000292"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:01.849511" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3894e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:01.848983" elapsed="0.000557"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.849970" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.849694" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.850453" level="INFO">${flow_id} = 327</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.850182" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.850896" level="INFO">${flow_priority} = 204</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.850629" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:01.851751" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:01.851083" elapsed="0.000699"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.852269" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.851936" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.852771" level="INFO">${flow_id} = 327</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.852463" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.853291" level="INFO">${flow_priority} = 204</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.852962" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.853821" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.853482" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.854356" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.854019" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.854860" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3894e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.854553" elapsed="0.000348"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:01.848208" elapsed="0.006747"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.862206" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;204&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;204&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.861928" elapsed="0.000339"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:01.872416" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=327 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=327 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1226', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;\n    &lt;id&gt;327&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;cookie&gt;204&lt;/cookie&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;priority&gt;204&lt;/priority&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;34525&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;\n        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;\n        &lt;metadata&gt;\n            &lt;metadata&gt;12345&lt;/metadata&gt;\n        &lt;/metadata&gt;\n        &lt;ip-match&gt;\n            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;\n            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;\n        &lt;/ip-match&gt;\n        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;\n        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;\n    &lt;/match&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:01.872505" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=327 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:01.872628" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:01.862396" elapsed="0.010268"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.876472" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.872885" elapsed="0.003683"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:01.861494" elapsed="0.015201"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:01.855120" elapsed="0.021695"/>
</kw>
<var name="${flowfile}">f204.xml</var>
<status status="PASS" start="2026-05-25T01:53:01.841918" elapsed="0.034986"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.877991" level="INFO">f205.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.877437" elapsed="0.000682"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:01.885782" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f205.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f205.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:01.886214" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:01.885486" elapsed="0.000804"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:01.887237" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38b3d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:01.886631" elapsed="0.000634"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.887695" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.887419" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.888163" level="INFO">${flow_id} = 328</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.887876" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.888611" level="INFO">${flow_priority} = 205</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.888341" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:01.889530" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:01.888785" elapsed="0.000776"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.890035" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.889717" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.890569" level="INFO">${flow_id} = 328</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.890260" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.891095" level="INFO">${flow_priority} = 205</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.890764" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.891589" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.891289" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.892107" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.891784" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.892614" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38b3d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.892304" elapsed="0.000352"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:01.884709" elapsed="0.008002"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.899912" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;328&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;205&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;
    &lt;priority&gt;205&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.899661" elapsed="0.000315"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:01.910255" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=328 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=328 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1430', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;id&gt;328&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;2048&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n            &lt;ethernet-destination&gt;\n                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;\n            &lt;/ethernet-destination&gt;\n            &lt;ethernet-source&gt;\n                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;\n            &lt;/ethernet-source&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;\n        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;\n        &lt;ip-match&gt;\n            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;\n            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;\n            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;\n        &lt;/ip-match&gt;\n        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;\n        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;\n        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;\n    &lt;/match&gt;\n    &lt;cookie&gt;205&lt;/cookie&gt;\n    &lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;\n    &lt;priority&gt;205&lt;/priority&gt;\n    &lt;barrier&gt;false&lt;/barrier&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:01.910350" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=328 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:01.910443" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:01.900120" elapsed="0.010348"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.916699" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.910625" elapsed="0.006170"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:01.899226" elapsed="0.017696"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:01.892859" elapsed="0.024182"/>
</kw>
<var name="${flowfile}">f205.xml</var>
<status status="PASS" start="2026-05-25T01:53:01.877151" elapsed="0.040011"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.918300" level="INFO">f206.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.917669" elapsed="0.000731"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:01.922147" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f206.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f206.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:01.922274" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:01.921988" elapsed="0.000315"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:01.922872" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38b240&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:01.922453" elapsed="0.000447"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.923348" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.923053" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.923794" level="INFO">${flow_id} = 329</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.923525" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.924256" level="INFO">${flow_priority} = 206</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.923970" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:01.925169" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:01.924430" elapsed="0.000769"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.925674" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.925357" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.926210" level="INFO">${flow_id} = 329</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.925868" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.926721" level="INFO">${flow_priority} = 206</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.926405" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.927230" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.926912" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.927731" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.927425" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.928255" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38b240&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.927925" elapsed="0.000371"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:01.921656" elapsed="0.006695"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.936246" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;329&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;206&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;
    &lt;priority&gt;206&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.935829" elapsed="0.000524"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:01.947612" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=329 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=329 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1428', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;id&gt;329&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;2048&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n            &lt;ethernet-destination&gt;\n                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;\n            &lt;/ethernet-destination&gt;\n            &lt;ethernet-source&gt;\n                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;\n            &lt;/ethernet-source&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;\n        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;\n        &lt;ip-match&gt;\n            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;\n            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;\n            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;\n        &lt;/ip-match&gt;\n        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;\n        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;\n        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;\n    &lt;/match&gt;\n    &lt;cookie&gt;206&lt;/cookie&gt;\n    &lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;\n    &lt;priority&gt;206&lt;/priority&gt;\n    &lt;barrier&gt;false&lt;/barrier&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:01.947677" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=329 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:01.947768" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:01.936486" elapsed="0.011314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.952895" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.948219" elapsed="0.004772"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:01.935393" elapsed="0.017763"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:01.928500" elapsed="0.024782"/>
</kw>
<var name="${flowfile}">f206.xml</var>
<status status="PASS" start="2026-05-25T01:53:01.917382" elapsed="0.035989"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.954491" level="INFO">f209.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.953876" elapsed="0.000716"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:01.960532" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f209.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f209.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:01.960658" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;co...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:01.960399" elapsed="0.000289"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:01.961270" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcff6a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:01.960843" elapsed="0.000455"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.961727" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.961450" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.962205" level="INFO">${flow_id} = 332</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.961904" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.962653" level="INFO">${flow_priority} = 209</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.962384" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:01.963530" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/co...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:01.962827" elapsed="0.000733"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.964035" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.963715" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.964555" level="INFO">${flow_id} = 332</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.964247" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.965057" level="INFO">${flow_priority} = 209</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.964746" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.965611" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;co...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.965301" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.966132" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/co...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.965807" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.966651" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcff6a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:01.966342" elapsed="0.000350"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:01.960050" elapsed="0.006698"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.973943" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;209&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;209&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.973692" elapsed="0.000312"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:01.984300" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=332 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=332 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1261', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;\n    &lt;id&gt;332&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;cookie&gt;209&lt;/cookie&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;priority&gt;209&lt;/priority&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;34525&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;\n        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;\n        &lt;metadata&gt;\n            &lt;metadata&gt;12345&lt;/metadata&gt;\n        &lt;/metadata&gt;\n        &lt;ip-match&gt;\n            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;\n            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;\n            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;\n        &lt;/ip-match&gt;\n        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;\n        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;\n    &lt;/match&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:01.984388" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=332 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:01.984511" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:01.974160" elapsed="0.010386"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.988258" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.984764" elapsed="0.003593"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:01.973260" elapsed="0.015226"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:01.966903" elapsed="0.021704"/>
</kw>
<var name="${flowfile}">f209.xml</var>
<status status="PASS" start="2026-05-25T01:53:01.953589" elapsed="0.035107"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:01.989788" level="INFO">f214.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:01.989231" elapsed="0.000655"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:01.997719" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f214.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f214.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:01.998002" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:01.997419" elapsed="0.000647"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:01.999177" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38b470&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:01.998481" elapsed="0.000725"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:01.999636" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.999360" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:02.000100" level="INFO">${flow_id} = 337</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:01.999814" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:02.000551" level="INFO">${flow_priority} = 214</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:02.000280" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:02.001382" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:02.000727" elapsed="0.000686"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.001889" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.001567" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.002827" level="INFO">${flow_id} = 337</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.002104" elapsed="0.000770"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.003364" level="INFO">${flow_priority} = 214</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.003033" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.003855" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.003556" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.004371" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.004050" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.004895" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38b470&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.004576" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:01.996569" elapsed="0.008423"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.012239" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;214&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;214&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
		&lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
	    &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:02.011972" elapsed="0.000326"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:02.021879" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=337 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=337 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1026', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;\n    &lt;id&gt;337&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;cookie&gt;214&lt;/cookie&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;priority&gt;214&lt;/priority&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;2048&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;\n        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;\n\t\t&lt;ip-match&gt;\n            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;\n            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;\n\t    &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;\n        &lt;/ip-match&gt;\n    &lt;/match&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:02.021977" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=337 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:02.022088" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:02.012425" elapsed="0.009691"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.024965" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:02.022288" elapsed="0.002738"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:02.011530" elapsed="0.013598"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:02.005155" elapsed="0.020050"/>
</kw>
<var name="${flowfile}">f214.xml</var>
<status status="PASS" start="2026-05-25T01:53:01.988913" elapsed="0.036347"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.025922" level="INFO">f218.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:02.025576" elapsed="0.000407"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:02.030865" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f218.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f218.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:02.031008" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:02.030682" elapsed="0.000359"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:02.031604" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7e7a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:02.031214" elapsed="0.000418"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:02.032079" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:02.031785" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:02.032528" level="INFO">${flow_id} = 341</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:02.032259" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:02.032979" level="INFO">${flow_priority} = 218</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:02.032704" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:02.033699" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:02.033168" elapsed="0.000561"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.034233" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.033883" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.034739" level="INFO">${flow_id} = 341</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.034430" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.035265" level="INFO">${flow_priority} = 218</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.034930" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.035756" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.035457" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.036280" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.035955" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.036783" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7e7a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.036475" elapsed="0.000349"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:02.030215" elapsed="0.006663"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.044140" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;go-to-table&gt;
                &lt;table_id&gt;3&lt;/table_id&gt;
            &lt;/go-to-table&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;341&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-mask&gt;0xfff0&lt;/tunnel-mask&gt;
            &lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
    &lt;cookie&gt;218&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;
    &lt;priority&gt;218&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:02.043867" elapsed="0.000368"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:02.057487" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=341 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=341 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '804', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n            &lt;go-to-table&gt;\n                &lt;table_id&gt;3&lt;/table_id&gt;\n            &lt;/go-to-table&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;id&gt;341&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;\n    &lt;match&gt;\n        &lt;tunnel&gt;\n            &lt;tunnel-mask&gt;0xfff0&lt;/tunnel-mask&gt;\n            &lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;\n        &lt;/tunnel&gt;\n    &lt;/match&gt;\n    &lt;cookie&gt;218&lt;/cookie&gt;\n    &lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;\n    &lt;priority&gt;218&lt;/priority&gt;\n    &lt;barrier&gt;false&lt;/barrier&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:02.057568" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=341 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:02.057693" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:02.044368" elapsed="0.013361"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.062222" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:02.057955" elapsed="0.004372"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:02.043429" elapsed="0.019028"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:02.037027" elapsed="0.025550"/>
</kw>
<var name="${flowfile}">f218.xml</var>
<status status="PASS" start="2026-05-25T01:53:02.025396" elapsed="0.037268"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.063768" level="INFO">f219.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:02.063205" elapsed="0.000663"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:02.068990" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f219.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f219.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:02.069132" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;c...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:02.068858" elapsed="0.000303"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:02.069711" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcfc590&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:02.069312" elapsed="0.000427"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:02.070206" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:02.069892" elapsed="0.000340"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:02.070656" level="INFO">${flow_id} = 342</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:02.070385" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:02.071124" level="INFO">${flow_priority} = 219</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:02.070837" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:02.071920" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:02.071301" elapsed="0.000648"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.072437" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.072119" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.072938" level="INFO">${flow_id} = 342</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.072631" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.073457" level="INFO">${flow_priority} = 219</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.073144" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.073954" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;c...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.073648" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.074550" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.074234" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.075059" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcfc590&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.074750" elapsed="0.000367"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:02.068524" elapsed="0.006649"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.082398" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
		&lt;/clear-actions&gt;
	&lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;342&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;10&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;219&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;
    &lt;priority&gt;219&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:02.082124" elapsed="0.000333"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:02.091140" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=342 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=342 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '937', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n        \t&lt;order&gt;0&lt;/order&gt;\n\t\t&lt;clear-actions&gt;\n\t\t&lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n\t\t&lt;/clear-actions&gt;\n\t&lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;id&gt;342&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;\n    &lt;match&gt;\n        &lt;vlan-match&gt;\n            &lt;vlan-id&gt;\n                &lt;vlan-id&gt;10&lt;/vlan-id&gt;\n                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;\n            &lt;/vlan-id&gt;\n            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;\n        &lt;/vlan-match&gt;\n    &lt;/match&gt;\n    &lt;cookie&gt;219&lt;/cookie&gt;\n    &lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;\n    &lt;priority&gt;219&lt;/priority&gt;\n    &lt;barrier&gt;false&lt;/barrier&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:02.091229" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=342 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:02.091360" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:02.082585" elapsed="0.008811"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.094711" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:02.091626" elapsed="0.003145"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:02.081676" elapsed="0.013181"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:02.075323" elapsed="0.019608"/>
</kw>
<var name="${flowfile}">f219.xml</var>
<status status="PASS" start="2026-05-25T01:53:02.062884" elapsed="0.032103"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.095671" level="INFO">f220.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:02.095327" elapsed="0.000404"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:02.100544" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f220.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f220.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:02.100724" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:02.100357" elapsed="0.000407"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:02.101553" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7e250&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:02.100973" elapsed="0.000619"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:02.102229" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:02.101805" elapsed="0.000466"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:02.102924" level="INFO">${flow_id} = 343</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:02.102537" elapsed="0.000423"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:02.103574" level="INFO">${flow_priority} = 220</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:02.103195" elapsed="0.000415"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:02.104641" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:02.103820" elapsed="0.000864"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.105374" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.104902" elapsed="0.000533"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.106104" level="INFO">${flow_id} = 343</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.105650" elapsed="0.000545"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.106850" level="INFO">${flow_priority} = 220</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.106412" elapsed="0.000480"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.107364" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.107045" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.107867" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.107561" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.108390" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7e250&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.108065" elapsed="0.000366"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:02.099863" elapsed="0.008624"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.115678" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;write-metadata&gt;
                &lt;metadata-mask&gt;12&lt;/metadata-mask&gt;
                &lt;metadata&gt;10&lt;/metadata&gt;
            &lt;/write-metadata&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;343&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;220&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;
    &lt;priority&gt;220&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:02.115428" elapsed="0.000309"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:02.125305" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=343 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=343 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '941', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n            &lt;write-metadata&gt;\n                &lt;metadata-mask&gt;12&lt;/metadata-mask&gt;\n                &lt;metadata&gt;10&lt;/metadata&gt;\n            &lt;/write-metadata&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;id&gt;343&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;2048&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;\n    &lt;/match&gt;\n    &lt;cookie&gt;220&lt;/cookie&gt;\n    &lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;\n    &lt;priority&gt;220&lt;/priority&gt;\n    &lt;barrier&gt;false&lt;/barrier&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:02.125366" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=343 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:02.125456" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:02.115864" elapsed="0.009617"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.128875" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:02.125640" elapsed="0.003331"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:02.114981" elapsed="0.014222"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:02.108636" elapsed="0.020689"/>
</kw>
<var name="${flowfile}">f220.xml</var>
<status status="PASS" start="2026-05-25T01:53:02.095148" elapsed="0.034264"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.130536" level="INFO">f221.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:02.129914" elapsed="0.000720"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:02.136403" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f221.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f221.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:02.136529" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:02.136269" elapsed="0.000289"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:02.137128" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35bd80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:02.136708" elapsed="0.000448"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:02.137589" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:02.137309" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:02.138038" level="INFO">${flow_id} = 344</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:02.137768" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:02.138515" level="INFO">${flow_priority} = 221</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:02.138245" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:02.139370" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:02.138688" elapsed="0.000712"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.139884" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.139559" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.140404" level="INFO">${flow_id} = 344</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.140094" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.140907" level="INFO">${flow_priority} = 221</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.140596" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.141414" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.141113" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.141914" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.141609" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.142449" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35bd80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.142126" elapsed="0.000364"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:02.135920" elapsed="0.006626"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.149956" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;344&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;10&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;221&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;
    &lt;priority&gt;221&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:02.149696" elapsed="0.000320"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:02.160564" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=344 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=344 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '981', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;strict&gt;false&lt;/strict&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;id&gt;344&lt;/id&gt;\n    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;\n    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;\n    &lt;installHw&gt;false&lt;/installHw&gt;\n    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;\n    &lt;match&gt;\n        &lt;vlan-match&gt;\n            &lt;vlan-id&gt;\n                &lt;vlan-id&gt;10&lt;/vlan-id&gt;\n                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;\n            &lt;/vlan-id&gt;\n            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;\n        &lt;/vlan-match&gt;\n    &lt;/match&gt;\n    &lt;cookie&gt;221&lt;/cookie&gt;\n    &lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;\n    &lt;priority&gt;221&lt;/priority&gt;\n    &lt;barrier&gt;false&lt;/barrier&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:02.160650" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=344 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:02.160780" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:02.150171" elapsed="0.010645"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.164891" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:02.161039" elapsed="0.003962"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:02.149243" elapsed="0.015928"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:02.142697" elapsed="0.022598"/>
</kw>
<var name="${flowfile}">f221.xml</var>
<status status="PASS" start="2026-05-25T01:53:02.129629" elapsed="0.035755"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.166510" level="INFO">f222.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:02.165901" elapsed="0.000711"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:02.174575" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f222.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f222.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:02.174890" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:02.174233" elapsed="0.000717"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:02.175526" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4b9e90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:02.175135" elapsed="0.000420"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:02.175992" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:02.175707" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:02.176455" level="INFO">${flow_id} = 345</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:02.176186" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:02.176899" level="INFO">${flow_priority} = 222</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:02.176631" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:02.177600" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:02.177093" elapsed="0.000537"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.178129" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.177789" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.178671" level="INFO">${flow_id} = 345</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.178355" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.179193" level="INFO">${flow_priority} = 222</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.178866" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.179685" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.179387" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.180260" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.179921" elapsed="0.000449"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.180874" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4b9e90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.180538" elapsed="0.000380"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:02.173319" elapsed="0.007654"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.188235" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;id&gt;345&lt;/id&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                   &lt;order&gt;0&lt;/order&gt;
                   &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:02.187963" elapsed="0.000327"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:02.199142" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=345 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=345 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '713', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;priority&gt;222&lt;/priority&gt;\n    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;2048&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;\n    &lt;/match&gt;\n    &lt;id&gt;345&lt;/id&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                   &lt;order&gt;0&lt;/order&gt;\n                   &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:02.199222" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=345 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:02.199346" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:02.188419" elapsed="0.010962"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.202511" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:02.199604" elapsed="0.002968"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:02.187519" elapsed="0.015133"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:02.181144" elapsed="0.021583"/>
</kw>
<var name="${flowfile}">f222.xml</var>
<status status="PASS" start="2026-05-25T01:53:02.165612" elapsed="0.037170"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.203482" level="INFO">f223.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:02.203125" elapsed="0.000418"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:02.208334" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f223.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f223.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:02.208514" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:02.208144" elapsed="0.000410"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:02.209310" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc093ce0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:02.208763" elapsed="0.000586"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:02.209943" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:02.209560" elapsed="0.000419"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:02.210625" level="INFO">${flow_id} = 346</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:02.210243" elapsed="0.000418"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:02.211273" level="INFO">${flow_priority} = 223</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:02.210872" elapsed="0.000438"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:02.212292" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:02.211563" elapsed="0.000774"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.213025" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.212579" elapsed="0.000527"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.213755" level="INFO">${flow_id} = 346</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.213324" elapsed="0.000488"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.214532" level="INFO">${flow_priority} = 223</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.214023" elapsed="0.000567"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.215195" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.214811" elapsed="0.000430"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.215708" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.215402" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.216227" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc093ce0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.215904" elapsed="0.000365"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:02.207662" elapsed="0.008661"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.223530" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;
        &lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;
    &lt;/match&gt;
    &lt;id&gt;346&lt;/id&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                   &lt;order&gt;0&lt;/order&gt;
                   &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:02.223275" elapsed="0.000312"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:02.231515" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=346 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=346 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '836', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;priority&gt;223&lt;/priority&gt;\n    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;2048&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;\n        &lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;\n    &lt;/match&gt;\n    &lt;id&gt;346&lt;/id&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                   &lt;order&gt;0&lt;/order&gt;\n                   &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:02.231573" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=346 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:02.231662" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:02.223715" elapsed="0.007973"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.233914" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:02.231849" elapsed="0.002108"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:02.222826" elapsed="0.011187"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:02.216472" elapsed="0.017610"/>
</kw>
<var name="${flowfile}">f223.xml</var>
<status status="PASS" start="2026-05-25T01:53:02.202924" elapsed="0.031199"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.234630" level="INFO">f224.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:02.234383" elapsed="0.000291"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:02.242427" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f224.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f224.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:02.242707" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:02.242039" elapsed="0.000731"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:02.243459" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7eed0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:02.243060" elapsed="0.000426"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:02.243913" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:02.243638" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:02.244384" level="INFO">${flow_id} = 347</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:02.244113" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:02.244831" level="INFO">${flow_priority} = 224</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:02.244560" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:02.245525" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:02.245007" elapsed="0.000548"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.246211" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.245711" elapsed="0.000544"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.246718" level="INFO">${flow_id} = 347</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.246410" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.247238" level="INFO">${flow_priority} = 224</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.246911" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.247730" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.247430" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.248251" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.247929" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.248764" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7eed0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.248457" elapsed="0.000348"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:02.241296" elapsed="0.007563"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.256152" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;
        &lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;
    &lt;/match&gt;
    &lt;id&gt;347&lt;/id&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                   &lt;order&gt;0&lt;/order&gt;
                   &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:02.255884" elapsed="0.000326"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:02.264379" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=347 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=347 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '896', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;priority&gt;224&lt;/priority&gt;\n    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;34525&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;\n        &lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;\n    &lt;/match&gt;\n    &lt;id&gt;347&lt;/id&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                   &lt;order&gt;0&lt;/order&gt;\n                   &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:02.264467" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=347 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:02.264560" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:02.256338" elapsed="0.008247"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.267617" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:02.264744" elapsed="0.002933"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:02.255449" elapsed="0.012308"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:02.249009" elapsed="0.018823"/>
</kw>
<var name="${flowfile}">f224.xml</var>
<status status="PASS" start="2026-05-25T01:53:02.234254" elapsed="0.033633"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.268567" level="INFO">f225.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:02.268221" elapsed="0.000407"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:02.273399" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f225.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f225.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:02.273590" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:02.273214" elapsed="0.000416"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:02.274423" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc091fd0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:02.273838" elapsed="0.000624"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:02.275049" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:02.274673" elapsed="0.000417"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:02.275510" level="INFO">${flow_id} = 348</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:02.275242" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:02.275952" level="INFO">${flow_priority} = 225</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:02.275681" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:02.276651" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:02.276140" elapsed="0.000541"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.277167" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.276836" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.277668" level="INFO">${flow_id} = 348</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.277362" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.278193" level="INFO">${flow_priority} = 225</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.277859" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.278685" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.278386" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.279204" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.278885" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.279710" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc091fd0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.279400" elapsed="0.000351"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:02.272733" elapsed="0.007071"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.287043" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;
        &lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;
    &lt;/match&gt;
    &lt;id&gt;348&lt;/id&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                   &lt;order&gt;0&lt;/order&gt;
                   &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:02.286793" elapsed="0.000356"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:02.299492" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=348 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=348 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '876', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;priority&gt;225&lt;/priority&gt;\n    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;\n    &lt;match&gt;\n        &lt;ethernet-match&gt;\n            &lt;ethernet-type&gt;\n                &lt;type&gt;34525&lt;/type&gt;\n            &lt;/ethernet-type&gt;\n        &lt;/ethernet-match&gt;\n        &lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;\n        &lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;\n    &lt;/match&gt;\n    &lt;id&gt;348&lt;/id&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                   &lt;order&gt;0&lt;/order&gt;\n                   &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:02.299550" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=348 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:02.299640" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:02.287281" elapsed="0.012384"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.303859" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:02.299822" elapsed="0.004133"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:02.286352" elapsed="0.017760"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:02.279953" elapsed="0.024287"/>
</kw>
<var name="${flowfile}">f225.xml</var>
<status status="PASS" start="2026-05-25T01:53:02.268022" elapsed="0.036307"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.305425" level="INFO">f550.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:02.304833" elapsed="0.000690"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:02.311997" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f550.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f550.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:02.312139" level="INFO">${data} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;
    &lt;match&gt;
   ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:02.311864" elapsed="0.000304"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:02.312702" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1f5b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:02.312317" elapsed="0.000413"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:02.313175" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:02.312882" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:02.313620" level="INFO">${flow_id} = 550</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:02.313352" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:02.314064" level="INFO">${flow_priority} = 550</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:02.313796" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:02.314836" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;f...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:02.314269" elapsed="0.000597"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.315356" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.315022" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.315862" level="INFO">${flow_id} = 550</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.315552" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.316382" level="INFO">${flow_priority} = 550</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.316054" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.316880" level="INFO">${data} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;
    &lt;match&gt;
   ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.316574" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.317448" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;f...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.317133" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.317956" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1f5b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:02.317647" elapsed="0.000350"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:02.311531" elapsed="0.006521"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.325292" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;
            &lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;
            &lt;extension&gt;
                &lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;
                    &lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;
                &lt;/nxm-nx-tun-ipv4-src&gt;
            &lt;/extension&gt;
        &lt;/extension-list&gt;
    &lt;/match&gt;
    &lt;id&gt;550&lt;/id&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
&lt;/flow&gt;</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:02.325016" elapsed="0.000335"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:02.335857" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=550 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=550 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '1086', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=b'&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;\n    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;\n    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;\n    &lt;priority&gt;550&lt;/priority&gt;\n    &lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;\n    &lt;match&gt;\n        &lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;\n            &lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;\n            &lt;extension&gt;\n                &lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;\n                    &lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;\n                &lt;/nxm-nx-tun-ipv4-src&gt;\n            &lt;/extension&gt;\n        &lt;/extension-list&gt;\n    &lt;/match&gt;\n    &lt;id&gt;550&lt;/id&gt;\n    &lt;table_id&gt;2&lt;/table_id&gt;\n    &lt;instructions&gt;\n        &lt;instruction&gt;\n            &lt;order&gt;0&lt;/order&gt;\n            &lt;apply-actions&gt;\n                &lt;action&gt;\n                    &lt;order&gt;0&lt;/order&gt;\n                    &lt;drop-action/&gt;\n                &lt;/action&gt;\n            &lt;/apply-actions&gt;\n        &lt;/instruction&gt;\n    &lt;/instructions&gt;\n&lt;/flow&gt;' 
 </msg>
<msg time="2026-05-25T01:53:02.335942" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=550 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:02.336092" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:02.325478" elapsed="0.010652"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:02.341453" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:02.336354" elapsed="0.005196"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 2, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:53:02.324584" elapsed="0.017096"/>
</kw>
<arg>Update Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:02.318246" elapsed="0.023552"/>
</kw>
<var name="${flowfile}">f550.xml</var>
<status status="PASS" start="2026-05-25T01:53:02.304544" elapsed="0.037344"/>
</iter>
<var>${flowfile}</var>
<value>@{flowlist0}</value>
<status status="PASS" start="2026-05-25T01:53:00.295607" elapsed="2.046348"/>
</for>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.343238" level="INFO">Slept 3 seconds.</msg>
<arg>${flow_update_time}</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-05-25T01:53:02.342362" elapsed="3.001119"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:53:05.348706" level="INFO">dpctl dump-flows -O OpenFlow13</msg>
<arg>dpctl dump-flows -O OpenFlow13</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:53:05.343994" elapsed="0.004846"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:53:05.511689" level="INFO">*** s1 ------------------------------------------------------------------------
 cookie=0xa, duration=19.978s, table=0, n_packets=12, n_bytes=960, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=3.016s, table=2, n_packets=0, n_bytes=0, priority=550,tun_src=192.168.0.10 actions=drop
 cookie=0x0, duration=3.054s, table=2, n_packets=0, n_bytes=0, priority=225,ipv6,ipv6_src=2001:2001:2001:2001:0:2001:4000:0/ffff:ffff:ffff:ffff:0:ffff:f000:0 actions=drop
 cookie=0x0, duration=3.088s, table=2, n_packets=0, n_bytes=0, priority=224,ipv6,ipv6_dst=2001:2001:2001:2001:2001:2001:4000:7000/ffff:ffff:ffff:ffff:ffff:ffff:f000:f000 actions=drop
 cookie=0x0, duration=3.121s, table=2, n_packets=0, n_bytes=0, priority=223,ip,nw_dst=7.0.17.0/255.0.241.0 actions=drop
 cookie=0x0, duration=3.154s, table=2, n_packets=0, n_bytes=0, priority=222,ip,nw_dst=2.2.0.0/16 actions=drop
 cookie=0xdb, duration=3.263s, table=2, n_packets=0, n_bytes=0, priority=219,dl_vlan=10,dl_vlan_pcp=3 actions=clear_actions
 cookie=0xdd, duration=3.193s, table=2, n_packets=0, n_bytes=0, priority=221,dl_vlan=10,dl_vlan_pcp=3 actions=drop
 cookie=0x1, duration=5.029s, table=2, n_packets=0, n_bytes=0, priority=1,ip,nw_dst=10.0.1.0/24 actions=drop
 cookie=0x1f, duration=4.200s, table=2, n_packets=0, n_bytes=0, priority=31,ip,nw_dst=10.0.0.0/24 actions=TABLE
 cookie=0x24, duration=4.162s, table=2, n_packets=0, n_bytes=0, priority=36,ip,nw_dst=10.0.0.0/24 actions=drop
 cookie=0x26, duration=4.124s, table=2, n_packets=0, n_bytes=0, priority=38,ip,nw_dst=10.0.0.0/24 actions=drop
 cookie=0xdc, duration=3.229s, table=2, n_packets=0, n_bytes=0, priority=220,ip,nw_dst=10.0.0.0/24 actions=write_metadata:0xa/0xc
 cookie=0xda, duration=3.296s, table=2, n_packets=0, n_bytes=0, priority=218,tun_id=0x29a0/0xfff0 actions=goto_table:3
 cookie=0xd6, duration=3.331s, table=2, n_packets=0, n_bytes=0, priority=214,ip,nw_src=10.1.2.0/24,nw_dst=20.4.0.0/16,nw_proto=56,nw_tos=240,nw_ecn=1 actions=drop
 cookie=0x15, duration=4.375s, table=2, n_packets=0, n_bytes=0, priority=21,udp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80::2acf:e9ff:fe21:6431,nw_tos=32,nw_ecn=3,tp_src=25364,tp_dst=8080 actions=drop
 cookie=0x16, duration=4.340s, table=2, n_packets=0, n_bytes=0, priority=22,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_tos=240,nw_ecn=3,tp_src=183,tp_dst=8080 actions=drop
 cookie=0x65, duration=4.016s, table=2, n_packets=0, n_bytes=0, priority=101,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_tos=240,nw_ecn=3,tp_src=183,tp_dst=8080 actions=drop
 cookie=0x68, duration=3.903s, table=2, n_packets=0, n_bytes=0, priority=104,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_tos=240,nw_ecn=3,tp_src=183,tp_dst=8080 actions=drop
 cookie=0xd1, duration=3.369s, table=2, n_packets=0, n_bytes=0, priority=209,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_tos=240,nw_ecn=3,tp_src=183,tp_dst=8080 actions=drop
 cookie=0xa, duration=4.700s, table=2, n_packets=0, n_bytes=0, priority=10,sctp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=0,nw_ecn=0,tp_src=768,tp_dst=384 actions=drop
 cookie=0xb, duration=4.663s, table=2, n_packets=0, n_bytes=0, priority=11,icmp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=108,nw_ecn=3,icmp_type=6,icmp_code=3 actions=drop
 cookie=0xcd, duration=3.443s, table=2, n_packets=0, n_bytes=0, priority=205,sctp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=0,nw_ecn=0,tp_src=768,tp_dst=384 actions=drop
 cookie=0xce, duration=3.405s, table=2, n_packets=0, n_bytes=0, priority=206,sctp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=0,nw_ecn=0,tp_src=768,tp_dst=384 actions=drop
 cookie=0xc9, duration=3.592s, table=2, n_packets=0, n_bytes=0, priority=201,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_ecn=3,tp_src=183,tp_dst=8080 actions=drop
 cookie=0xca, duration=3.555s, table=2, n_packets=0, n_bytes=0, priority=202,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_ecn=3,tp_src=183,tp_dst=8080 actions=drop
 cookie=0xcb, duration=3.517s, table=2, n_packets=0, n_bytes=0, priority=203,udp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_ecn=3,tp_src=183,tp_dst=8080 actions=drop
 cookie=0xcc, duration=3.481s, table=2, n_packets=0, n_bytes=0, priority=204,udp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_ecn=3,tp_src=183,tp_dst=8080 actions=drop
 cookie=0x10, duration=4.556s, table=2, n_packets=0, n_bytes=0, priority=16,ip,dl_vlan=78,dl_vlan_pcp=3,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61 actions=drop
 cookie=0x9c, duration=3.629s, table=2, n_packets=0, n_bytes=0, priority=156,ip,dl_vlan=78,dl_vlan_pcp=3,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61 actions=drop
 cookie=0x6b, duration=3.805s, table=2, n_packets=0, n_bytes=0, priority=107,udp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=20:14:29:01:19:61,nw_src=19.64.0.0/10,nw_dst=172.168.192.0/18,nw_tos=32,nw_ecn=3,tp_src=25364,tp_dst=8080 actions=drop
 cookie=0x6c, duration=3.773s, table=2, n_packets=0, n_bytes=0, priority=108,udp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=20:14:29:01:19:61,nw_src=19.64.0.0/10,nw_dst=172.168.192.0/18,nw_tos=32,nw_ecn=3,tp_src=25364,tp_dst=8080 actions=drop
 cookie=0x6d, duration=3.737s, table=2, n_packets=0, n_bytes=0, priority=109,udp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=20:14:29:01:19:61,nw_src=19.64.0.0/10,nw_dst=172.168.192.0/18,nw_tos=32,nw_ecn=3,tp_src=25364,tp_dst=8080 actions=drop
 cookie=0x71, duration=3.666s, table=2, n_packets=0, n_bytes=0, priority=113,udp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=20:14:29:01:19:61,nw_src=19.64.0.0/10,nw_dst=172.168.192.0/18,nw_tos=32,nw_ecn=3,tp_src=25364,tp_dst=8080 actions=drop
 cookie=0x6e, duration=3.699s, table=2, n_packets=0, n_bytes=0, priority=110,tcp6,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_ecn=3,tp_src=183,tp_dst=8080 actions=drop
 cookie=0x6a, duration=3.833s, table=2, n_packets=0, n_bytes=0, priority=106,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdcd:a987:6000:0/100,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_tos=180,nw_ecn=2,tp_src=20345,tp_dst=80 actions=drop
 cookie=0x69, duration=3.866s, table=2, n_packets=0, n_bytes=0, priority=105,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdcd:a000::/84,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_tos=180,nw_ecn=2,tp_src=20345,tp_dst=80 actions=drop
 cookie=0x66, duration=3.978s, table=2, n_packets=0, n_bytes=0, priority=102,tcp,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=8,nw_ecn=2,tp_src=25364,tp_dst=8080 actions=drop
 cookie=0x67, duration=3.938s, table=2, n_packets=0, n_bytes=0, priority=103,tcp,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=8,nw_ecn=2,tp_src=25364,tp_dst=8080 actions=drop
 cookie=0x2d, duration=4.049s, table=2, n_packets=0, n_bytes=0, priority=45,metadata=0x46605a66/0xfff0ffff actions=TABLE
 cookie=0x2b, duration=4.085s, table=2, n_packets=0, n_bytes=0, priority=43,icmp6,icmp_type=135,icmp_code=1 actions=drop
 cookie=0x17, duration=4.305s, table=2, n_packets=0, n_bytes=0, priority=23,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,ipv6_label=0x00021,nw_tos=240,nw_ecn=3,tp_src=183,tp_dst=8080 actions=drop
 cookie=0x19, duration=4.235s, table=2, n_packets=0, n_bytes=0, priority=25,icmp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,ipv6_label=0x00021,nw_tos=240,nw_ecn=3,icmp_type=6,icmp_code=3 actions=drop
 cookie=0x18, duration=4.271s, table=2, n_packets=0, n_bytes=0, priority=24,tun_id=0xa1f actions=drop
 cookie=0x14, duration=4.409s, table=2, n_packets=0, n_bytes=0, priority=20,metadata=0x3039/0xf0ff actions=drop
 cookie=0x13, duration=4.444s, table=2, n_packets=0, n_bytes=0, priority=19,metadata=0x3039 actions=drop
 cookie=0x12, duration=4.480s, table=2, n_packets=0, n_bytes=0, priority=18,ipv6,ipv6_src=fe80::2acf:e9ff:fe21:6431,ipv6_dst=aabb:1234:2acf:e9ff::/64 actions=drop
 cookie=0x11, duration=4.516s, table=2, n_packets=0, n_bytes=0, priority=17,mpls,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61,mpls_label=567,mpls_tc=3,mpls_bos=1 actions=drop
 cookie=0xf, duration=4.592s, table=2, n_packets=0, n_bytes=0, priority=15,mpls,dl_vlan=78,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61 actions=drop
 cookie=0xe, duration=4.631s, table=2, n_packets=0, n_bytes=0, priority=14,arp,dl_src=00:00:fc:01:23:ae,dl_dst=ff:ff:ff:ff:ff:ff,arp_spa=192.168.4.1,arp_tpa=10.21.22.23,arp_op=1,arp_sha=12:34:56:78:98:ab,arp_tha=fe:dc:ba:98:76:54 actions=drop
 cookie=0x9, duration=4.713s, table=2, n_packets=0, n_bytes=0, priority=9,udp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=20:14:29:01:19:61,nw_src=19.1.0.0/16,nw_dst=172.168.5.0/24,nw_tos=32,nw_ecn=3,tp_src=25364,tp_dst=8080 actions=drop
 cookie=0x8, duration=4.776s, table=2, n_packets=0, n_bytes=0, priority=8,tcp,in_port=0,dl_src=00:00:00:11:23:00/ff:ff:ff:ff:ff:00,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=8,nw_ecn=2,tp_src=25364,tp_dst=8080 actions=drop
 cookie=0x7, duration=4.811s, table=2, n_packets=0, n_bytes=0, priority=7,ip,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:ff:ff:ff:aa,nw_src=10.1.2.0/24,nw_dst=20.4.0.0/16,nw_proto=56,nw_tos=60,nw_ecn=1 actions=drop
 cookie=0x6, duration=4.848s, table=2, n_packets=0, n_bytes=0, priority=6,ip,dl_src=00:00:00:01:23:ae,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=10.1.2.0/24,nw_dst=40.4.0.0/16 actions=drop
 cookie=0x5, duration=4.886s, table=2, n_packets=0, n_bytes=0, priority=5,ip,in_port=0,dl_src=00:00:00:00:23:ae,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=10.1.2.0/24,nw_dst=20.4.0.0/16 actions=drop
 cookie=0x4, duration=4.920s, table=2, n_packets=0, n_bytes=0, priority=4,mpls,dl_src=00:00:00:00:23:ae,dl_dst=ff:ff:ff:ff:ff:ff actions=drop
 cookie=0x3, duration=4.955s, table=2, n_packets=0, n_bytes=0, priority=3,dl_src=00:00:00:00:00:01 actions=TABLE
 cookie=0x2, duration=4.990s, table=2, n_packets=0, n_bytes=0, priority=2,ip,nw_src=10.0.0.1 actions=TABLE
mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:53:05.349220" elapsed="0.162800"/>
</kw>
<doc>Update all flows and waits for SM to collect data</doc>
<status status="PASS" start="2026-05-25T01:53:00.295279" elapsed="5.216944"/>
</test>
<test id="s1-s3-s1-t60" name="Test Is Flow 1 Updated" line="183">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:05.523956" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f1.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f1.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:05.524160" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:05.523793" elapsed="0.000398"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:05.524851" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1cd60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:05.524363" elapsed="0.000519"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:05.525365" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:05.525049" elapsed="0.000342"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:05.525819" level="INFO">${flow_id} = 124</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:05.525544" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:05.526345" level="INFO">${flow_priority} = 1</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:05.526012" elapsed="0.000359"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:05.527193" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:05.526524" elapsed="0.000699"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.527738" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:05.527391" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.528271" level="INFO">${flow_id} = 124</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:05.527934" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.528790" level="INFO">${flow_priority} = 1</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:05.528465" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.529311" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:05.528980" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.529829" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:05.529508" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.530493" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1cd60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:05.530148" elapsed="0.000386"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:05.523446" elapsed="0.007146"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.531185" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:05.530745" elapsed="0.000470"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.531616" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;124&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;1&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf1&lt;/flow-name&gt;
    &lt;priority&gt;1&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:05.531368" elapsed="0.000304"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.539397" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:05.539083" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:05.545649" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=124?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=124?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:05.546200" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=124?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '554'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;124&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:05.546310" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:05.539598" elapsed="0.006738"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.546751" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:05.546495" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.549819" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;124&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:05.546991" elapsed="0.002907"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:05.552476" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:05.550009" elapsed="0.002543"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:05.549975" elapsed="0.002610"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:05.556125" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:05.556172" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:05.552781" elapsed="0.003414"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:05.557965" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:05.556271" elapsed="0.001750"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:05.556251" elapsed="0.001794"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:05.558093" elapsed="0.000036"/>
</return>
<msg time="2026-05-25T01:53:05.558309" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:05.558353" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 124 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:05.538742" elapsed="0.019634"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:05.560522" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:05.558929" elapsed="0.001638"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:05.558911" elapsed="0.001679"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.561161" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:05.560738" elapsed="0.000450"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.561703" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:05.561353" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:05.561780" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:05.561959" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:05.558600" elapsed="0.003384"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:05.562158" elapsed="0.000422"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:05.538140" elapsed="0.024504"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.570493" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:05.570140" elapsed="0.000381"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:05.585578" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:05.589762" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;667000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;998000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;11000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;109000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;703000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:05.590415" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:05.570655" elapsed="0.019821"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.591451" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:05.590839" elapsed="0.000715"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.596475" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;667000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;998000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;11000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;109000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;703000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;779000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;218000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;253000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;326000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;347000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;526000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;672000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;707000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;742000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;628000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;997000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;35000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;497000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;71000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;313000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;131000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;164000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;201000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;533000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;569000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;314000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;603000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;490000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;459000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;964000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:05.591879" elapsed="0.005925"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:05.600391" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:05.597909" elapsed="0.002550"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:05.597881" elapsed="0.002609"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:05.627038" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:05.627102" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:05.600686" elapsed="0.026441"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:05.628988" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:05.627209" elapsed="0.001845"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:05.627189" elapsed="0.001912"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:05.629137" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:53:05.629370" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:05.629416" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 124 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:05.569738" elapsed="0.059709"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:05.631812" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:05.630104" elapsed="0.001754"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:05.630055" elapsed="0.001825"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.632459" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:05.632031" elapsed="0.000456"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.633080" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:05.632693" elapsed="0.000416"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:05.633159" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:05.633338" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:05.629686" elapsed="0.003677"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:05.633521" elapsed="0.000426"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:05.569121" elapsed="0.064898"/>
</kw>
<arg>f1.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:05.520092" elapsed="0.114018"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:05.512635" elapsed="0.121626"/>
</test>
<test id="s1-s3-s1-t61" name="Test Is Flow 2 Updated" line="185">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:05.645740" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f2.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f2.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:05.645891" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:05.645596" elapsed="0.000328"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:05.646517" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc306f70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:05.646095" elapsed="0.000450"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:05.646988" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:05.646700" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:05.647494" level="INFO">${flow_id} = 125</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:05.647186" elapsed="0.000334"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:05.647943" level="INFO">${flow_priority} = 2</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:05.647673" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:05.648765" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:05.648135" elapsed="0.000671"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.649334" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:05.648969" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.649931" level="INFO">${flow_id} = 125</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:05.649584" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.650599" level="INFO">${flow_priority} = 2</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:05.650146" elapsed="0.000495"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.651153" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:05.650808" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.651690" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:05.651355" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.652256" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc306f70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:05.651902" elapsed="0.000396"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:05.645256" elapsed="0.007098"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.652903" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:05.652504" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.653366" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;125&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;
    &lt;/match&gt;
    &lt;cookie&gt;2&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf2&lt;/flow-name&gt;
    &lt;priority&gt;2&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:05.653102" elapsed="0.000327"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.661287" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:05.660966" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:05.667775" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=125?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=125?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:05.668305" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=125?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '640'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;125&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:05.668413" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:05.661445" elapsed="0.006993"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.668849" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:05.668597" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.674338" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;125&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:05.669037" elapsed="0.005427"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:05.677019" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:05.674567" elapsed="0.002540"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:05.674538" elapsed="0.002603"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:05.680764" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:05.680811" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:05.677339" elapsed="0.003495"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:05.682622" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:05.680911" elapsed="0.001767"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:05.680890" elapsed="0.001811"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:05.682734" elapsed="0.000032"/>
</return>
<msg time="2026-05-25T01:53:05.682941" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:05.682985" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 125 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:05.660636" elapsed="0.022371"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:05.685150" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:05.683568" elapsed="0.001629"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:05.683550" elapsed="0.001669"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.685760" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:05.685364" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.686326" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:05.685947" elapsed="0.000405"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:05.686402" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:05.686588" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:05.683236" elapsed="0.003377"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:05.686768" elapsed="0.000420"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:05.660036" elapsed="0.027217"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.694955" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:05.694659" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:05.707703" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:05.708875" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;667000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;998000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;11000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;109000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;703000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:05.709658" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:05.695126" elapsed="0.014602"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.710803" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:05.710141" elapsed="0.000763"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.716812" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;667000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;998000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;11000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;109000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;703000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;779000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;218000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;253000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;326000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;347000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;526000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;672000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;707000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;742000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;628000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;997000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;35000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;497000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;71000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;313000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;131000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;164000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;201000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;533000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;569000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;314000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;603000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;490000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;459000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;964000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:05.711284" elapsed="0.007725"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:05.720871" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:05.719124" elapsed="0.001797"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:05.719096" elapsed="0.001848"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:05.745503" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:05.745551" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:05.721102" elapsed="0.024472"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:05.747403" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:05.745654" elapsed="0.001807"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:05.745635" elapsed="0.001865"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:05.747537" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:53:05.747738" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:05.747781" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 125 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:05.694284" elapsed="0.053519"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:05.750003" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:05.748407" elapsed="0.001641"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:05.748388" elapsed="0.001697"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.750678" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:05.750258" elapsed="0.000451"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.751249" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:05.750874" elapsed="0.000401"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:05.751325" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:05.751502" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:05.748026" elapsed="0.003501"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:05.751685" elapsed="0.000406"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:05.693637" elapsed="0.058519"/>
</kw>
<arg>f2.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:05.641609" elapsed="0.110605"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:05.634593" elapsed="0.117746"/>
</test>
<test id="s1-s3-s1-t62" name="Test Is Flow 3 Updated" line="187">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:05.763433" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f3.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f3.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:05.763585" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:05.763282" elapsed="0.000332"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:05.764192" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4be250&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:05.763769" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:05.764661" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:05.764377" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:05.765131" level="INFO">${flow_id} = 126</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:05.764840" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:05.765585" level="INFO">${flow_priority} = 3</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:05.765311" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:05.766431" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:05.765760" elapsed="0.000703"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.766958" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:05.766622" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.767542" level="INFO">${flow_id} = 126</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:05.767209" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.768083" level="INFO">${flow_priority} = 3</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:05.767739" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.768596" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:05.768280" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.769148" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:05.768794" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.769687" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4be250&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:05.769353" elapsed="0.000376"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:05.762930" elapsed="0.006855"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.770373" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:05.769948" elapsed="0.000457"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.770802" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;126&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:00:01&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;3&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf3&lt;/flow-name&gt;
    &lt;priority&gt;3&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:05.770558" elapsed="0.000304"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.779109" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:05.778782" elapsed="0.000356"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:05.785196" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=126?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=126?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:05.785685" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=126?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '625'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;126&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:05.785792" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:05.779270" elapsed="0.006553"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.786316" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:05.786001" elapsed="0.000370"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.789419" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;126&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:05.786517" elapsed="0.003027"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:05.792285" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:05.789648" elapsed="0.002708"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:05.789619" elapsed="0.002769"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:05.796330" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:05.796396" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:05.792585" elapsed="0.003845"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:05.798999" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:05.796535" elapsed="0.002527"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:05.796509" elapsed="0.002616"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:05.799161" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:53:05.799360" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:05.799403" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 126 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:05.778460" elapsed="0.020965"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:05.801817" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:05.799985" elapsed="0.001950"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:05.799967" elapsed="0.001991"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.802650" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:05.802157" elapsed="0.000521"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.803221" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:05.802845" elapsed="0.000402"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:05.803298" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:05.803478" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:05.799638" elapsed="0.003865"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:05.803660" elapsed="0.000400"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:05.777732" elapsed="0.026412"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.813870" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:05.813447" elapsed="0.000466"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:05.825852" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:05.826297" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;667000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;998000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;11000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;109000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;703000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:05.826586" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:05.814118" elapsed="0.012494"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.827027" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:05.826772" elapsed="0.000316"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.831783" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;667000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;998000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;11000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;109000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;703000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;779000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;218000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;253000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;326000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;347000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;526000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;672000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;707000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;742000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;628000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;997000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;35000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;497000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;71000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;313000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;131000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;164000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;201000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;533000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;569000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;314000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;603000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;490000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;459000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;964000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:05.827233" elapsed="0.005482"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:05.834586" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:05.832790" elapsed="0.001845"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:05.832769" elapsed="0.001889"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:05.858651" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:05.858700" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:05.834800" elapsed="0.023924"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:05.860513" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:05.858803" elapsed="0.001766"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:05.858784" elapsed="0.001810"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:05.860627" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:05.860825" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:05.860869" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 126 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:05.812888" elapsed="0.048004"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:05.863063" elapsed="0.000030"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:05.861466" elapsed="0.001659"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:05.861448" elapsed="0.001699"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.863701" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:05.863296" elapsed="0.000432"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.864259" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:05.863891" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:05.864337" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:05.864516" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:05.861130" elapsed="0.003411"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:05.864698" elapsed="0.000407"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:05.812015" elapsed="0.053155"/>
</kw>
<arg>f3.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:05.759519" elapsed="0.105710"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:05.752632" elapsed="0.112718"/>
</test>
<test id="s1-s3-s1-t63" name="Test Is Flow 4 Updated" line="189">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:05.876405" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f4.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f4.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:05.876562" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:05.876264" elapsed="0.000327"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:05.877165" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcff3d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:05.876743" elapsed="0.000450"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:05.877630" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:05.877348" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:05.878094" level="INFO">${flow_id} = 127</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:05.877809" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:05.878557" level="INFO">${flow_priority} = 4</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:05.878286" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:05.879376" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:05.878733" elapsed="0.000674"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.879895" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:05.879562" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.880473" level="INFO">${flow_id} = 127</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:05.880145" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.880995" level="INFO">${flow_priority} = 4</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:05.880667" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.881521" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:05.881205" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.882047" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:05.881720" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.882617" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcff3d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:05.882291" elapsed="0.000368"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:05.875913" elapsed="0.006803"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.883270" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:05.882867" elapsed="0.000433"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.883695" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;127&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;4&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf4&lt;/flow-name&gt;
    &lt;priority&gt;4&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:05.883452" elapsed="0.000302"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.891395" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:05.891094" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:05.898508" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=127?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=127?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:05.899030" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=127?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '659'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;127&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:05.899179" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:05.891551" elapsed="0.007657"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.899641" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:05.899381" elapsed="0.000305"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.902036" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;127&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:05.899840" elapsed="0.002319"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:05.904531" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:05.902267" elapsed="0.002334"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:05.902244" elapsed="0.002389"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:05.908779" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:05.908858" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:05.904831" elapsed="0.004067"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:05.911572" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:05.909028" elapsed="0.002603"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:05.908993" elapsed="0.002661"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:05.911695" elapsed="0.000034"/>
</return>
<msg time="2026-05-25T01:53:05.911906" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:05.911950" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 127 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:05.890765" elapsed="0.021208"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:05.914134" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:05.912541" elapsed="0.001666"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:05.912523" elapsed="0.001708"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.914777" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:05.914378" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.915341" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:05.914965" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:05.915419" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:05.915598" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:05.912200" elapsed="0.003425"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:05.915781" elapsed="0.000402"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:05.890205" elapsed="0.026043"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.923981" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:05.923684" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:05.936818" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:05.937418" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;667000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;998000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;11000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;109000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;703000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:05.937837" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:05.924160" elapsed="0.013725"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.938576" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:05.938132" elapsed="0.000510"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.944469" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;667000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;998000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;11000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;109000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;703000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;779000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;218000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;253000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;326000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;347000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;526000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;672000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;707000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;742000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;628000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;997000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;35000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;497000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;71000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;313000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;131000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;164000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;201000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;533000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;569000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;314000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;603000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;490000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;459000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;964000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:05.938849" elapsed="0.007750"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:05.950795" elapsed="0.000034"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:05.946766" elapsed="0.004146"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:05.946720" elapsed="0.004229"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:05.976684" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:05.976732" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:05.951120" elapsed="0.025636"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:05.978577" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:05.976835" elapsed="0.001798"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:05.976815" elapsed="0.001843"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:05.978691" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:05.978887" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:05.978931" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 127 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:05.923306" elapsed="0.055648"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:05.981130" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:05.979523" elapsed="0.001652"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:05.979504" elapsed="0.001693"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.981748" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:05.981343" elapsed="0.000433"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.982334" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:05.981939" elapsed="0.000421"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:05.982410" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:05.982587" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:05.979188" elapsed="0.003424"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:05.982768" elapsed="0.000409"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:05.922674" elapsed="0.060567"/>
</kw>
<arg>f4.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:05.872516" elapsed="0.110781"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:05.865664" elapsed="0.117751"/>
</test>
<test id="s1-s3-s1-t64" name="Test Is Flow 5 Updated" line="191">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:05.994345" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f5.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f5.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:05.994495" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:05.994163" elapsed="0.000361"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:05.995103" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc090fe0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:05.994676" elapsed="0.000456"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:05.995567" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:05.995286" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:05.996015" level="INFO">${flow_id} = 128</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:05.995744" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:05.996477" level="INFO">${flow_priority} = 5</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:05.996207" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:05.997457" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:05.996780" elapsed="0.000709"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.997981" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:05.997645" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.998609" level="INFO">${flow_id} = 128</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:05.998245" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.999162" level="INFO">${flow_priority} = 5</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:05.998811" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:05.999675" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:05.999358" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.000206" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:05.999871" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.000725" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc090fe0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.000403" elapsed="0.000363"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:05.993819" elapsed="0.007002"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.001372" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.000968" elapsed="0.000435"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.001795" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;128&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;5&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;5&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.001555" elapsed="0.000301"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.009491" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:06.009189" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:06.016948" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=128?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=128?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:06.017534" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=128?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '747'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:06.017643" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:06.009649" elapsed="0.008019"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.018105" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.017827" elapsed="0.000324"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.020282" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.018315" elapsed="0.002057"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.022209" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.020446" elapsed="0.001817"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.020425" elapsed="0.001861"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:06.026144" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:06.026235" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:06.022427" elapsed="0.003846"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:06.028979" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:06.026381" elapsed="0.002676"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.026353" elapsed="0.002758"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:06.029159" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:53:06.029429" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:06.029490" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 128 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:06.008851" elapsed="0.020670"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.032062" elapsed="0.000030"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.030326" elapsed="0.001798"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.030301" elapsed="0.001844"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.032688" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.032291" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.033240" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.032875" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:06.033316" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:06.033493" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:06.029812" elapsed="0.003706"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:06.033672" elapsed="0.000410"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:06.008299" elapsed="0.025851"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.041833" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:06.041538" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:06.062350" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:06.063305" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;667000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;998000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;11000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;109000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;703000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:06.063934" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:06.041989" elapsed="0.022004"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.064947" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.064384" elapsed="0.000664"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.070520" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;667000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;998000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;11000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;109000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;703000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;779000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;218000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;253000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;326000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;347000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;526000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;672000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;707000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;742000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;628000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;997000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;35000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;497000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;71000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;313000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;131000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;164000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;201000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;533000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;569000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;314000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;603000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;490000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;459000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;964000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.065403" elapsed="0.006553"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.074520" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.072058" elapsed="0.002531"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.072030" elapsed="0.002590"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:06.144559" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:06.144623" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:06.074813" elapsed="0.069834"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:06.146613" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:06.144776" elapsed="0.001897"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.144742" elapsed="0.001959"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:06.146738" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:53:06.146964" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:06.147008" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 128 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:06.041163" elapsed="0.105868"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.149245" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.147661" elapsed="0.001629"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.147643" elapsed="0.001670"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.149918" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.149465" elapsed="0.000481"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.150512" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.150127" elapsed="0.000412"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:06.150590" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:06.150769" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:06.147300" elapsed="0.003495"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:06.150953" elapsed="0.000423"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:06.040544" elapsed="0.110896"/>
</kw>
<arg>f5.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:05.990588" elapsed="0.160912"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:05.983705" elapsed="0.167918"/>
</test>
<test id="s1-s3-s1-t65" name="Test Is Flow 6 Updated" line="193">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:06.162553" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f6.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f6.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:06.162756" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:06.162409" elapsed="0.000376"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:06.163391" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1e890&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:06.162942" elapsed="0.000477"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:06.163856" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:06.163572" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:06.164321" level="INFO">${flow_id} = 129</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:06.164032" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:06.164766" level="INFO">${flow_priority} = 6</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:06.164497" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:06.165748" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:06.164942" elapsed="0.000837"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.166309" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.165942" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.166893" level="INFO">${flow_id} = 129</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.166567" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.167431" level="INFO">${flow_priority} = 6</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.167103" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.167945" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.167626" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.168477" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.168156" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.168993" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1e890&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.168672" elapsed="0.000362"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:06.162038" elapsed="0.007067"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.169635" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.169254" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.170055" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;129&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;6&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;6&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.169815" elapsed="0.000317"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.177756" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:06.177450" elapsed="0.000332"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:06.184898" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=129?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=129?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:06.185496" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=129?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '716'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:06.185606" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:06.177913" elapsed="0.007720"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.186047" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.185792" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.188910" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.186306" elapsed="0.002730"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.191592" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.189160" elapsed="0.002500"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.189130" elapsed="0.002566"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:06.195767" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:06.195830" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:06.191891" elapsed="0.003972"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:06.198586" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:06.195965" elapsed="0.002698"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.195938" elapsed="0.002759"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:06.198744" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:53:06.199020" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:06.199081" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 129 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:06.177136" elapsed="0.021970"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.201237" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.199648" elapsed="0.001634"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.199631" elapsed="0.001674"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.201846" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.201450" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.202431" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.202034" elapsed="0.000423"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:06.202507" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:06.202689" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:06.199318" elapsed="0.003396"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:06.202871" elapsed="0.000405"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:06.176565" elapsed="0.026776"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.211109" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:06.210794" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:06.224903" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:06.225502" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;667000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;998000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;11000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;109000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;703000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:06.225892" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:06.211270" elapsed="0.014658"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.226566" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.226171" elapsed="0.000459"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.231907" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;667000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;998000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;11000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;109000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;703000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;779000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;218000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;253000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;326000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;347000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;526000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;672000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;707000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;742000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;628000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;997000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;35000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;497000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;71000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;313000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;131000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;164000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;201000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;533000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;569000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;314000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;603000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;490000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;459000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;964000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.226832" elapsed="0.007158"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.236396" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.234180" elapsed="0.002265"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.234133" elapsed="0.002335"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:06.260890" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:06.260940" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:06.236609" elapsed="0.024354"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:06.262785" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:06.261042" elapsed="0.001800"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.261022" elapsed="0.001844"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:06.262899" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:53:06.263118" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:06.263163" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 129 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:06.210416" elapsed="0.052770"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.265329" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.263737" elapsed="0.001638"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.263719" elapsed="0.001678"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.265951" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.265543" elapsed="0.000436"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.266552" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.266158" elapsed="0.000421"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:06.266629" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:06.266810" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:06.263404" elapsed="0.003431"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:06.266993" elapsed="0.000406"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:06.209755" elapsed="0.057708"/>
</kw>
<arg>f6.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:06.158795" elapsed="0.108724"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:06.151952" elapsed="0.115691"/>
</test>
<test id="s1-s3-s1-t66" name="Test Is Flow 7 Updated" line="195">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:06.278491" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f7.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f7.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:06.278635" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:06.278350" elapsed="0.000314"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:06.279256" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4e91c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:06.278815" elapsed="0.000469"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:06.279719" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:06.279438" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:06.280185" level="INFO">${flow_id} = 130</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:06.279896" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:06.280628" level="INFO">${flow_priority} = 7</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:06.280361" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:06.281525" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:06.280802" elapsed="0.000753"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.282042" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.281711" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.282660" level="INFO">${flow_id} = 130</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.282325" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.283207" level="INFO">${flow_priority} = 7</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.282858" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.283716" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.283401" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.284247" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.283912" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.284763" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4e91c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.284443" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:06.277977" elapsed="0.006881"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.285405" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.285007" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.285827" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;130&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;15&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;7&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf7&lt;/flow-name&gt;
    &lt;priority&gt;7&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.285587" elapsed="0.000301"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.293695" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:06.293394" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:06.299772" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=130?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=130?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:06.300434" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=130?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '836'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:06.300545" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:06.293852" elapsed="0.006717"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.300980" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.300729" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.303406" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.301221" elapsed="0.002269"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.306010" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.303588" elapsed="0.002511"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.303559" elapsed="0.002574"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:06.310410" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:06.310475" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:06.306345" elapsed="0.004162"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:06.312973" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:06.310610" elapsed="0.002440"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.310583" elapsed="0.002520"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:06.313152" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:53:06.313422" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:06.313482" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 130 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:06.293060" elapsed="0.020454"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.316269" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.314345" elapsed="0.001970"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.314320" elapsed="0.002017"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.316881" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.316484" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.317439" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.317085" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:06.317514" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:06.317691" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:06.313804" elapsed="0.003911"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:06.317870" elapsed="0.000423"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:06.292507" elapsed="0.025849"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.326056" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:06.325759" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:06.340542" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:06.341492" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;667000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;998000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;11000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;109000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;703000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:06.342164" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:06.326252" elapsed="0.015999"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.343201" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.342608" elapsed="0.000695"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.348741" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;667000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;998000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;11000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;109000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;703000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;779000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;218000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;253000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;326000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;347000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;526000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;672000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;707000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;742000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;628000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;997000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;35000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;497000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;71000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;313000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;131000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;164000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;201000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;533000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;569000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;314000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;603000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;490000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;459000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;964000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.343622" elapsed="0.007221"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.352785" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.351024" elapsed="0.001809"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.350977" elapsed="0.001878"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:06.376532" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:06.376579" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:06.352994" elapsed="0.023608"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:06.378493" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:06.376680" elapsed="0.001869"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.376661" elapsed="0.001912"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:06.378607" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:06.378802" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:06.378846" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 130 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:06.325381" elapsed="0.053487"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.381028" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.379428" elapsed="0.001673"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.379410" elapsed="0.001715"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.381686" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.381283" elapsed="0.000430"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.382289" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.381877" elapsed="0.000439"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:06.382366" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:06.382542" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:06.379097" elapsed="0.003470"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:06.382724" elapsed="0.000406"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:06.324754" elapsed="0.058439"/>
</kw>
<arg>f7.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:06.274737" elapsed="0.108512"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:06.267941" elapsed="0.115426"/>
</test>
<test id="s1-s3-s1-t67" name="Test Is Flow 8 Updated" line="197">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:06.394522" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f8.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f8.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:06.394680" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:06.394369" elapsed="0.000341"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:06.395315" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc093f10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:06.394863" elapsed="0.000480"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:06.395797" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:06.395498" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:06.396274" level="INFO">${flow_id} = 131</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:06.395981" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:06.396718" level="INFO">${flow_priority} = 8</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:06.396451" elapsed="0.000407"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:06.397825" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:06.397013" elapsed="0.000842"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.398407" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.398013" elapsed="0.000436"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.398972" level="INFO">${flow_id} = 131</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.398646" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.399509" level="INFO">${flow_priority} = 8</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.399184" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.400021" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.399702" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.400557" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.400237" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.401086" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc093f10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.400753" elapsed="0.000376"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:06.393978" elapsed="0.007205"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.401712" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.401333" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.402336" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;131&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:00&lt;/address&gt;
                &lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;8&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf8&lt;/flow-name&gt;
    &lt;priority&gt;8&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.401894" elapsed="0.000509"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.410048" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:06.409748" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:06.415605" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=131?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=131?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:06.416560" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=131?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '955'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:06.416714" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:06.410247" elapsed="0.006502"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.417390" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.417014" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.420486" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.417654" elapsed="0.002918"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.423120" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.420670" elapsed="0.002520"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.420643" elapsed="0.002578"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:06.427457" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:06.427503" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:06.423413" elapsed="0.004113"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:06.429308" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:06.427600" elapsed="0.001764"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.427581" elapsed="0.001806"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:06.429421" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:06.429619" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:06.429663" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 131 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:06.409434" elapsed="0.020252"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.432078" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.430334" elapsed="0.001793"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.430315" elapsed="0.001834"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.432692" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.432295" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.433246" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.432881" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:06.433323" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:06.433500" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:06.429898" elapsed="0.003627"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:06.433680" elapsed="0.000397"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:06.408864" elapsed="0.025280"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.441872" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:06.441579" elapsed="0.000320"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:06.452913" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:06.453501" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;667000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;998000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;11000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;109000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;703000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:06.453909" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:06.442027" elapsed="0.011921"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.454590" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.454223" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.459947" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;667000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;998000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;11000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;109000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;703000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;779000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;218000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;253000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;326000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;347000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;526000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;672000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;707000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;742000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;628000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;997000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;35000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;497000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;71000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;313000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;131000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;164000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;201000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;533000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;569000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;314000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;603000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;490000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;459000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;964000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.454853" elapsed="0.007181"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.466168" elapsed="0.000083"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.462261" elapsed="0.004068"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.462187" elapsed="0.004192"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:06.490232" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:06.490294" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:06.466688" elapsed="0.023633"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:06.492194" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:06.490400" elapsed="0.001852"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.490380" elapsed="0.001896"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:06.492309" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:06.492503" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:06.492547" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 131 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:06.441202" elapsed="0.051368"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.494719" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.493131" elapsed="0.001633"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.493112" elapsed="0.001673"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.495359" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.494931" elapsed="0.000455"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.495897" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.495549" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:06.495973" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:06.496167" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:06.492784" elapsed="0.003409"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:06.496348" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:06.440577" elapsed="0.056218"/>
</kw>
<arg>f8.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:06.390715" elapsed="0.106136"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:06.383635" elapsed="0.113336"/>
</test>
<test id="s1-s3-s1-t68" name="Test Is Flow 9 Updated" line="199">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:06.507823" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f9.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f9.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:06.507961" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:06.507685" elapsed="0.000305"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:06.508579" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4c39c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:06.508158" elapsed="0.000449"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:06.509041" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:06.508761" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:06.509507" level="INFO">${flow_id} = 132</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:06.509236" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:06.509955" level="INFO">${flow_priority} = 9</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:06.509682" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:06.510913" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:06.510147" elapsed="0.000797"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.511448" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.511117" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.512010" level="INFO">${flow_id} = 132</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.511685" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.512550" level="INFO">${flow_priority} = 9</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.512223" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.513077" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.512744" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.513607" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.513286" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.514141" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4c39c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.513804" elapsed="0.000379"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:06.507356" elapsed="0.006906"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.514795" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.514414" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.515239" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;132&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;9&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf9&lt;/flow-name&gt;
    &lt;priority&gt;9&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.514978" elapsed="0.000324"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.523140" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:06.522823" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:06.530144" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=132?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=132?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:06.530816" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=132?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '927'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:06.530926" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:06.523298" elapsed="0.007654"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.531413" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.531157" elapsed="0.000302"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.533577" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.531603" elapsed="0.002035"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.535458" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.533708" elapsed="0.001799"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.533688" elapsed="0.001841"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:06.538735" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:06.538781" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:06.535668" elapsed="0.003136"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:06.541305" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:06.538880" elapsed="0.002502"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.538859" elapsed="0.002556"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:06.541462" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:53:06.541730" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:06.541791" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 132 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:06.522506" elapsed="0.019316"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.545026" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.542613" elapsed="0.002498"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.542588" elapsed="0.002555"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.545905" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.545353" elapsed="0.000590"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.546729" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.546228" elapsed="0.000537"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:06.546835" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:53:06.547089" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:06.542134" elapsed="0.004982"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:06.547274" elapsed="0.000383"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:06.521894" elapsed="0.025826"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.555487" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:06.555190" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:06.586184" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:06.586622" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;667000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;998000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;11000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;109000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;703000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:06.586915" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:06.555645" elapsed="0.031297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.587371" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.587118" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.589802" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;667000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;998000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;11000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;109000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;703000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;779000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;218000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;253000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;326000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;347000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;526000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;672000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;707000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;742000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;628000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;997000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;35000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;497000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;71000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;313000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;131000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;164000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;201000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;533000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;569000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;314000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;603000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;490000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;459000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;964000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.587557" elapsed="0.003192"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.593274" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.590823" elapsed="0.002517"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.590803" elapsed="0.002567"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:06.618350" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:06.618397" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:06.593561" elapsed="0.024860"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:06.620304" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:06.618500" elapsed="0.001860"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.618481" elapsed="0.001903"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:06.620417" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:06.620610" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:06.620654" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 132 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:06.554797" elapsed="0.065880"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.622816" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.621241" elapsed="0.001621"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.621222" elapsed="0.001662"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.623453" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.623035" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.623992" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.623644" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:06.624083" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:06.624262" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:06.620890" elapsed="0.003397"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:06.624442" elapsed="0.000382"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:06.554159" elapsed="0.070727"/>
</kw>
<arg>f9.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:06.504033" elapsed="0.120909"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:06.497247" elapsed="0.127810"/>
</test>
<test id="s1-s3-s1-t69" name="Test Is Flow 10 Updated" line="201">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:06.635961" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f10.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f10.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:06.636111" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:06.635824" elapsed="0.000317"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:06.636713" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4beed0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:06.636293" elapsed="0.000448"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:06.637191" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:06.636892" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:06.637639" level="INFO">${flow_id} = 133</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:06.637369" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:06.638095" level="INFO">${flow_priority} = 10</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:06.637813" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:06.639049" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:06.638308" elapsed="0.000787"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.639583" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.639254" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.640168" level="INFO">${flow_id} = 133</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.639822" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.640692" level="INFO">${flow_priority} = 10</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.640365" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.641211" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.640883" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.641724" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.641407" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.642270" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4beed0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.641924" elapsed="0.000387"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:06.635496" elapsed="0.006870"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.642895" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.642516" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.643497" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;133&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;10&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf10&lt;/flow-name&gt;
    &lt;priority&gt;10&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.643093" elapsed="0.000469"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.651230" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:06.650913" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:06.657594" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=133?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=133?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:06.658308" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=133?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '931'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:06.658418" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:06.651386" elapsed="0.007058"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.658889" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.658633" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.661937" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.659198" elapsed="0.002825"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.664571" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.662141" elapsed="0.002498"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.662112" elapsed="0.002558"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:06.669001" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:06.669084" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:06.664861" elapsed="0.004259"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:06.671441" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:06.669224" elapsed="0.002272"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.669197" elapsed="0.002322"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:06.671552" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:06.671742" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:06.671786" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 133 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:06.650598" elapsed="0.021210"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.674189" elapsed="0.000029"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.672358" elapsed="0.001895"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.672341" elapsed="0.001937"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.674824" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.674427" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.675381" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.675013" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:06.675457" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:06.675631" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:06.672016" elapsed="0.003640"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:06.675810" elapsed="0.000396"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:06.649983" elapsed="0.026285"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.684028" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:06.683732" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:06.694350" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:06.694948" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;667000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;998000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;11000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;109000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;703000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:06.695390" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:06.684202" elapsed="0.011227"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.696009" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.695657" elapsed="0.000442"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.699477" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;667000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;998000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;11000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;109000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;703000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;741000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;146000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;779000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;184000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;218000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;853000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;253000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;326000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;347000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;637000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;526000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;672000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;560000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;707000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;742000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;778000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;628000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;929000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;997000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;35000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;497000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;71000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;313000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;131000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;164000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;201000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;236000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;533000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;569000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;314000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;603000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;490000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;421000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;459000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;964000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;927000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.696302" elapsed="0.004474"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.703259" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.700877" elapsed="0.002429"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.700849" elapsed="0.002479"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:06.725661" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:06.725709" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:06.703466" elapsed="0.022267"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:06.729112" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:06.725812" elapsed="0.003357"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.725793" elapsed="0.003400"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:06.729226" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:06.729420" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:06.729463" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 133 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:06.683355" elapsed="0.046130"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.731643" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.730030" elapsed="0.001659"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.730012" elapsed="0.001698"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.732273" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.731857" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.732811" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.732463" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:06.732886" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:06.733061" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:06.729698" elapsed="0.003403"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:06.733259" elapsed="0.000383"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:06.682722" elapsed="0.050982"/>
</kw>
<arg>f10.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:06.632210" elapsed="0.101550"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:06.625331" elapsed="0.108541"/>
</test>
<test id="s1-s3-s1-t70" name="Test Is Flow 11 Updated" line="203">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:06.744659" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f11.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f11.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:06.744791" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:06.744523" elapsed="0.000297"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:06.745404" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6b2e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:06.744970" elapsed="0.000461"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:06.745864" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:06.745585" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:06.746389" level="INFO">${flow_id} = 134</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:06.746044" elapsed="0.000371"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:06.746835" level="INFO">${flow_priority} = 11</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:06.746567" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:06.747747" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:06.747009" elapsed="0.000768"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.748276" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.747933" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.748827" level="INFO">${flow_id} = 134</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.748506" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.749358" level="INFO">${flow_priority} = 11</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.749018" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.749888" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.749558" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.750439" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.750102" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.750953" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6b2e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.750634" elapsed="0.000360"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:06.744196" elapsed="0.006852"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.751594" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.751214" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.752013" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;134&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;1&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;27&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv4-match&gt;
            &lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;
            &lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;
        &lt;/icmpv4-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;11&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf11&lt;/flow-name&gt;
    &lt;priority&gt;11&lt;/priority&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.751774" elapsed="0.000319"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.759883" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:06.759585" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:06.766015" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=134?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=134?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:06.766929" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=134?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '901'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:06.767103" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:06.760040" elapsed="0.007101"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.767762" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.767409" elapsed="0.000417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.770851" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.768061" elapsed="0.002875"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.773460" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.771035" elapsed="0.002492"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.771007" elapsed="0.002551"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:06.777253" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:06.777298" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:06.773752" elapsed="0.003569"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:06.779197" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:06.777394" elapsed="0.001859"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.777375" elapsed="0.001902"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:06.779310" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:06.779501" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:06.779544" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 134 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:06.759268" elapsed="0.020298"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.781828" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.780116" elapsed="0.001757"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.780097" elapsed="0.001798"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.782471" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.782041" elapsed="0.000457"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.783015" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.782661" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:06.783108" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:06.783286" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:06.779772" elapsed="0.003539"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:06.783466" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:06.758700" elapsed="0.025210"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.791649" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:06.791354" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:06.804997" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:06.809447" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:06.810188" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:06.791806" elapsed="0.018522"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.811227" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.810726" elapsed="0.000564"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.814686" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;216000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;285000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;320000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;670000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;705000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;626000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;774000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;810000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;846000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;29000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;67000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;135000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;163000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;233000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;268000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;565000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;308000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;484000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;635000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;454000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;996000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.811490" elapsed="0.004254"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.817562" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.815818" elapsed="0.001793"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.815797" elapsed="0.001836"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:06.839469" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:06.839515" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:06.817771" elapsed="0.021768"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:06.841404" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:06.839618" elapsed="0.001843"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.839598" elapsed="0.001887"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:06.841518" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:06.841712" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:06.841755" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 134 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:06.790962" elapsed="0.050816"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.843973" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.842393" elapsed="0.001625"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.842374" elapsed="0.001666"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.844617" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.844209" elapsed="0.000436"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.845180" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.844809" elapsed="0.000398"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:06.845257" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:06.845434" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:06.841994" elapsed="0.003465"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:06.845617" elapsed="0.000387"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:06.790352" elapsed="0.055730"/>
</kw>
<arg>f11.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:06.740941" elapsed="0.105203"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:06.734142" elapsed="0.112146"/>
</test>
<test id="s1-s3-s1-t71" name="Test Is Flow 14 Updated" line="205">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:06.857052" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f14.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f14.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:06.857208" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:06.856915" elapsed="0.000323"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:06.857818" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc305fd0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:06.857392" elapsed="0.000454"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:06.858347" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:06.858001" elapsed="0.000373"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:06.858806" level="INFO">${flow_id} = 137</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:06.858529" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:06.859300" level="INFO">${flow_priority} = 14</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:06.858984" elapsed="0.000342"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:06.860230" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:06.859478" elapsed="0.000782"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.860747" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.860418" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.861320" level="INFO">${flow_id} = 137</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.860979" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.861840" level="INFO">${flow_priority} = 14</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.861513" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.864398" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.862034" elapsed="0.002418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.864946" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.864611" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.865496" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc305fd0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.865161" elapsed="0.000377"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:06.856585" elapsed="0.009008"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.866144" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.865744" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.866599" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;137&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x806&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;arp-op&gt;1&lt;/arp-op&gt;
        &lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;
        &lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;
        &lt;arp-source-hardware-address&gt;
            &lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;
        &lt;/arp-source-hardware-address&gt;
        &lt;arp-target-hardware-address&gt;
            &lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;
        &lt;/arp-target-hardware-address&gt;
    &lt;/match&gt;
    &lt;cookie&gt;14&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf14&lt;/flow-name&gt;
    &lt;priority&gt;14&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.866348" elapsed="0.000314"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.874302" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:06.873941" elapsed="0.000390"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:06.881710" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=137?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=137?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:06.882460" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=137?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '991'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:06.882582" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:06.874462" elapsed="0.008146"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.883182" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.882801" elapsed="0.000445"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.886225" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.883445" elapsed="0.002872"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.888830" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.886415" elapsed="0.002483"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.886387" elapsed="0.002543"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:06.893108" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:06.893174" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:06.889144" elapsed="0.004063"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:06.895498" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:06.893309" elapsed="0.002244"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.893282" elapsed="0.002295"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:06.895610" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:06.895801" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:06.895844" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 137 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:06.873626" elapsed="0.022240"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.898144" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.896423" elapsed="0.001768"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.896405" elapsed="0.001819"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.898781" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.898382" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.899338" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.898970" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:06.899414" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:06.899591" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:06.896090" elapsed="0.003525"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:06.899770" elapsed="0.000397"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:06.873060" elapsed="0.027172"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.907970" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:06.907673" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:06.922341" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:06.923284" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:06.924130" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:06.908143" elapsed="0.016067"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.925220" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.924599" elapsed="0.000723"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.930921" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;216000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;285000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;320000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;670000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;705000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;626000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;774000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;810000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;846000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;29000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;67000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;135000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;163000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;233000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;268000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;565000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;308000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;484000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;635000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;454000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;996000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.925646" elapsed="0.006233"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.933712" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.931958" elapsed="0.001802"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.931937" elapsed="0.001846"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:06.959975" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:06.960022" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:06.933934" elapsed="0.026111"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:06.961839" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:06.960140" elapsed="0.001758"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.960120" elapsed="0.001802"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:06.961956" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:06.962172" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:06.962246" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 137 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:06.907298" elapsed="0.054977"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:06.964432" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:06.962828" elapsed="0.001649"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:06.962809" elapsed="0.001690"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.965063" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.964647" elapsed="0.000462"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.965628" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.965274" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:06.965705" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:06.965898" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:06.962493" elapsed="0.003431"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:06.966099" elapsed="0.000409"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:06.906663" elapsed="0.059910"/>
</kw>
<arg>f14.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:06.853341" elapsed="0.113290"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:06.846543" elapsed="0.120205"/>
</test>
<test id="s1-s3-s1-t72" name="Test Is Flow 15 Updated" line="207">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:06.977666" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f15.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f15.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:06.977826" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:06.977528" elapsed="0.000327"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:06.978456" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe690d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:06.978005" elapsed="0.000479"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:06.978917" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:06.978636" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:06.979383" level="INFO">${flow_id} = 138</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:06.979112" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:06.979825" level="INFO">${flow_priority} = 15</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:06.979558" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:06.980688" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:06.980000" elapsed="0.000718"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.981217" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.980872" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.981781" level="INFO">${flow_id} = 138</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.981459" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.982353" level="INFO">${flow_priority} = 15</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.981972" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.982862" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.982548" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.983398" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.983063" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.983913" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe690d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:06.983594" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:06.977198" elapsed="0.006811"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.984552" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:06.984174" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.984972" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;138&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;15&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf15&lt;/flow-name&gt;
    &lt;priority&gt;15&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:06.984733" elapsed="0.000300"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:06.993035" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:06.992737" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:07.000680" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=138?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=138?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:07.001401" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=138?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '738'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:07.001551" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:06.993209" elapsed="0.008377"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.002188" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.001811" elapsed="0.000467"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.005220" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.002480" elapsed="0.002867"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.007916" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.005447" elapsed="0.002537"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.005418" elapsed="0.002597"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:07.011738" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:07.011783" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:07.008227" elapsed="0.003579"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:07.013566" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:07.011880" elapsed="0.001741"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.011861" elapsed="0.001783"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:07.013677" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:07.013869" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:07.013914" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 138 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:06.992420" elapsed="0.021520"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.017941" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.014511" elapsed="0.003477"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.014493" elapsed="0.003517"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.018593" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.018171" elapsed="0.000448"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.019148" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.018780" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:07.019224" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:07.019402" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:07.014165" elapsed="0.005262"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:07.019581" elapsed="0.000416"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:06.991746" elapsed="0.028315"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.027821" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:07.027526" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:07.040026" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:07.040620" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:07.041024" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:07.027978" elapsed="0.013082"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.041655" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.041305" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.045108" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;216000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;285000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;320000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;670000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;705000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;626000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;774000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;810000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;846000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;29000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;67000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;135000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;163000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;233000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;268000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;565000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;308000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;484000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;635000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;454000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;996000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.041915" elapsed="0.004494"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.048941" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.046510" elapsed="0.002497"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.046482" elapsed="0.002556"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:07.075444" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:07.075492" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:07.049253" elapsed="0.026263"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:07.077302" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:07.075593" elapsed="0.001764"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.075574" elapsed="0.001807"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:07.077415" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:07.077610" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:07.077654" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 138 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:07.027149" elapsed="0.050528"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.079839" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.078267" elapsed="0.001617"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.078245" elapsed="0.001663"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.080507" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.080057" elapsed="0.000478"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.081048" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.080698" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:07.081142" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:07.081321" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:07.077892" elapsed="0.003454"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:07.081503" elapsed="0.000383"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:07.026513" elapsed="0.055437"/>
</kw>
<arg>f15.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:06.973893" elapsed="0.108113"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:06.967013" elapsed="0.115120"/>
</test>
<test id="s1-s3-s1-t73" name="Test Is Flow 16 Updated" line="209">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:07.093125" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f16.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f16.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:07.093280" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:07.092971" elapsed="0.000338"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:07.093864" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc306660&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:07.093461" elapsed="0.000431"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:07.094378" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:07.094043" elapsed="0.000362"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:07.094825" level="INFO">${flow_id} = 139</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:07.094557" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:07.095286" level="INFO">${flow_priority} = 16</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:07.095001" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:07.096135" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:07.095461" elapsed="0.000705"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.096651" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.096322" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.097227" level="INFO">${flow_id} = 139</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.096887" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.097749" level="INFO">${flow_priority} = 16</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.097421" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.098283" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.097939" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.098802" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.098479" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.099335" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc306660&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.099000" elapsed="0.000376"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:07.092641" elapsed="0.006790"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.099960" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.099580" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.100401" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    &lt;priority&gt;16&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.100158" elapsed="0.000304"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.108285" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:07.107969" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:07.115936" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:07.116720" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '735'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:07.116869" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:07.108443" elapsed="0.008463"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.117506" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.117151" elapsed="0.000417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.120575" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.117768" elapsed="0.002931"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.123269" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.120798" elapsed="0.002539"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.120770" elapsed="0.002598"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:07.127399" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:07.127445" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:07.123562" elapsed="0.003906"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:07.129282" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:07.127541" elapsed="0.001796"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.127522" elapsed="0.001839"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:07.129401" elapsed="0.000036"/>
</return>
<msg time="2026-05-25T01:53:07.129611" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:07.129655" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 139 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:07.107653" elapsed="0.022024"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.131838" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.130255" elapsed="0.001629"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.130235" elapsed="0.001671"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.132472" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.132052" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.133013" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.132663" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:07.133105" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:07.133286" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:07.129888" elapsed="0.003424"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:07.133469" elapsed="0.000384"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:07.107085" elapsed="0.026833"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.141822" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:07.141526" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:07.155978" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:07.156927" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:07.157604" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:07.141979" elapsed="0.015685"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.158683" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.158022" elapsed="0.000763"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.164207" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;216000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;285000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;320000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;670000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;705000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;626000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;774000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;810000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;846000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;29000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;67000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;135000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;163000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;233000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;268000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;565000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;308000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;484000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;635000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;454000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;996000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.159141" elapsed="0.007166"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.168496" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.166471" elapsed="0.002074"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.166426" elapsed="0.002141"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:07.197004" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:07.197158" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:07.168706" elapsed="0.028489"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:07.199670" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:07.197308" elapsed="0.002440"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.197280" elapsed="0.002502"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:07.199827" elapsed="0.000041"/>
</return>
<msg time="2026-05-25T01:53:07.200123" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:07.200186" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 139 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:07.141152" elapsed="0.059066"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.203232" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.200991" elapsed="0.002304"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.200966" elapsed="0.002359"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.204112" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.203528" elapsed="0.000623"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.204865" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.204376" elapsed="0.000524"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:07.204969" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:53:07.205240" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:07.200522" elapsed="0.004753"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:07.205493" elapsed="0.000536"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:07.140522" elapsed="0.065618"/>
</kw>
<arg>f16.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:07.089214" elapsed="0.117040"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:07.082424" elapsed="0.123993"/>
</test>
<test id="s1-s3-s1-t74" name="Test Is Flow 17 Updated" line="211">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:07.217516" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f17.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f17.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:07.217656" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:07.217379" elapsed="0.000306"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:07.218304" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc389df0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:07.217836" elapsed="0.000498"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:07.218775" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:07.218487" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:07.219239" level="INFO">${flow_id} = 140</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:07.218953" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:07.219686" level="INFO">${flow_priority} = 17</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:07.219415" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:07.220528" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:07.219862" elapsed="0.000696"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.221040" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.220711" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.221618" level="INFO">${flow_id} = 140</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.221296" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.222149" level="INFO">${flow_priority} = 17</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.221809" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.222686" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.222364" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.223220" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.222882" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.223739" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc389df0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.223417" elapsed="0.000363"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:07.217037" elapsed="0.006798"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.224384" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.223984" elapsed="0.000431"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.224808" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    &lt;priority&gt;17&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;protocol-match-fields&gt;
            &lt;mpls-label&gt;567&lt;/mpls-label&gt;
            &lt;mpls-tc&gt;3&lt;/mpls-tc&gt;
            &lt;mpls-bos&gt;1&lt;/mpls-bos&gt;
        &lt;/protocol-match-fields&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.224567" elapsed="0.000301"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.232669" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:07.232370" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:07.240229" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=140?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=140?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:07.240990" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=140?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '727'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:07.241223" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:07.232828" elapsed="0.008435"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.241844" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.241489" elapsed="0.000417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.245180" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.242130" elapsed="0.003177"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.247864" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.245410" elapsed="0.002522"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.245381" elapsed="0.002582"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:07.251734" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:07.251780" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:07.248182" elapsed="0.003621"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:07.253564" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:07.251876" elapsed="0.001744"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.251857" elapsed="0.001786"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:07.253676" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:07.253880" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:07.253926" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 140 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:07.232039" elapsed="0.021911"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.256104" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.254537" elapsed="0.001613"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.254519" elapsed="0.001654"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.256713" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.256316" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.257268" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.256898" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:07.257343" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:07.257519" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:07.254174" elapsed="0.003370"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:07.257697" elapsed="0.000397"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:07.231482" elapsed="0.026677"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.266153" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:07.265831" elapsed="0.000351"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:07.279231" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:07.280168" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:07.280840" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:07.266341" elapsed="0.014560"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.281885" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.281302" elapsed="0.000686"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.287543" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;216000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;285000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;320000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;670000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;705000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;626000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;774000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;810000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;846000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;29000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;67000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;135000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;163000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;233000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;268000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;565000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;308000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;484000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;635000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;454000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;996000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.282409" elapsed="0.007222"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.292217" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.289796" elapsed="0.002470"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.289751" elapsed="0.002538"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:07.319248" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:07.319298" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:07.292427" elapsed="0.026895"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:07.321111" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:07.319404" elapsed="0.001764"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.319384" elapsed="0.001808"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:07.321225" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:53:07.321426" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:07.321469" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 140 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:07.265450" elapsed="0.056042"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.323658" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.322050" elapsed="0.001653"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.322032" elapsed="0.001693"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.324302" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.323871" elapsed="0.000458"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.324856" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.324492" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:07.324933" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:07.325134" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:07.321712" elapsed="0.003449"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:07.325320" elapsed="0.000428"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:07.264812" elapsed="0.061001"/>
</kw>
<arg>f17.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:07.213800" elapsed="0.112070"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:07.206784" elapsed="0.119206"/>
</test>
<test id="s1-s3-s1-t75" name="Test Is Flow 18 Updated" line="213">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:07.336786" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f18.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f18.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:07.336948" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:07.336648" elapsed="0.000330"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:07.337568" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e67a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:07.337167" elapsed="0.000430"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:07.338029" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:07.337750" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:07.338832" level="INFO">${flow_id} = 141</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:07.338223" elapsed="0.000635"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:07.339313" level="INFO">${flow_priority} = 18</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:07.339016" elapsed="0.000323"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:07.340083" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:07.339489" elapsed="0.000625"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.340598" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.340268" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.341195" level="INFO">${flow_id} = 141</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.340848" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.341716" level="INFO">${flow_priority} = 18</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.341390" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.342257" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.341908" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.342780" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.342462" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.343336" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e67a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.342993" elapsed="0.000385"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:07.336320" elapsed="0.007114"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.343961" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.343583" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.344399" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;18&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;18&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.344158" elapsed="0.000299"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.352256" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:07.351937" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:07.362449" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=141?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=141?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:07.362962" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=141?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '603'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;141&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:07.363159" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:07.352415" elapsed="0.010780"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.363766" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.363416" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.366799" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;141&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.364028" elapsed="0.002904"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.369564" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.367035" elapsed="0.002600"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.367006" elapsed="0.002661"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:07.373100" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:07.373148" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:07.369867" elapsed="0.003305"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:07.374938" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:07.373246" elapsed="0.001748"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.373227" elapsed="0.001791"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:07.375052" elapsed="0.000045"/>
</return>
<msg time="2026-05-25T01:53:07.375265" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:07.375310" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 141 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:07.351620" elapsed="0.023713"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.377459" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.375881" elapsed="0.001625"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.375862" elapsed="0.001666"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.378086" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.377674" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.378665" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.378309" elapsed="0.000382"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:07.378741" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:07.378918" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:07.375542" elapsed="0.003401"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:07.379112" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:07.351047" elapsed="0.028510"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.387490" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:07.387189" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:07.398020" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:07.398697" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:07.399146" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:07.387650" elapsed="0.011535"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.399767" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.399417" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.403260" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;216000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;285000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;320000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;670000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;705000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;626000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;774000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;810000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;846000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;29000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;67000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;135000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;163000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;233000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;268000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;565000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;308000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;484000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;635000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;454000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;996000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.400027" elapsed="0.004571"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.407189" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.404702" elapsed="0.002535"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.404673" elapsed="0.002586"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:07.433932" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:07.433982" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:07.407399" elapsed="0.026607"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:07.435874" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:07.434101" elapsed="0.001838"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.434079" elapsed="0.001889"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:07.436005" elapsed="0.000033"/>
</return>
<msg time="2026-05-25T01:53:07.436273" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:07.436318" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 141 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:07.386795" elapsed="0.049546"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.438542" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.436907" elapsed="0.001681"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.436888" elapsed="0.001722"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.439186" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.438757" elapsed="0.000457"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.439735" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.439379" elapsed="0.000383"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:07.439813" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:07.439993" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:07.436566" elapsed="0.003453"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:07.440198" elapsed="0.000395"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:07.386130" elapsed="0.054529"/>
</kw>
<arg>f18.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:07.333055" elapsed="0.107662"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:07.326295" elapsed="0.114538"/>
</test>
<test id="s1-s3-s1-t76" name="Test Is Flow 19 Updated" line="215">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:07.451550" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f19.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f19.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:07.451706" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:07.451411" elapsed="0.000324"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:07.452290" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3edf30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:07.451886" elapsed="0.000432"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:07.452748" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:07.452470" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:07.453215" level="INFO">${flow_id} = 142</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:07.452924" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:07.453658" level="INFO">${flow_priority} = 19</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:07.453391" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:07.454425" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:07.453833" elapsed="0.000623"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.454949" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.454612" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.455553" level="INFO">${flow_id} = 142</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.455210" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.456095" level="INFO">${flow_priority} = 19</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.455750" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.456609" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.456293" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.457146" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.456807" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.457670" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3edf30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.457347" elapsed="0.000365"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:07.451081" elapsed="0.006687"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.458357" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.457920" elapsed="0.000469"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.458799" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;19&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;19&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.458551" elapsed="0.000304"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.466707" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:07.466402" elapsed="0.000332"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:07.472471" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=142?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=142?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:07.472871" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=142?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '451'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;142&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:07.472998" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:07.466864" elapsed="0.006173"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.473653" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.473297" elapsed="0.000418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.476705" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;142&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.473916" elapsed="0.002866"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.479352" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.476881" elapsed="0.002598"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.476853" elapsed="0.002664"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:07.483239" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:07.483285" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:07.479723" elapsed="0.003585"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:07.485058" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:07.483395" elapsed="0.001733"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.483376" elapsed="0.001775"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:07.485185" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:07.485377" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:07.485420" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 142 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:07.466042" elapsed="0.019400"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.487569" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.485978" elapsed="0.001636"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.485960" elapsed="0.001675"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.488193" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.487780" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.488729" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.488381" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:07.488804" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:07.488979" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:07.485649" elapsed="0.003355"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:07.489173" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:07.465482" elapsed="0.024135"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.497513" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:07.497214" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:07.509826" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:07.510484" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:07.510915" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:07.497667" elapsed="0.013297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.511943" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.511378" elapsed="0.000665"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.517499" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;216000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;285000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;320000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;670000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;705000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;626000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;774000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;810000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;846000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;29000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;67000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;135000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;163000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;233000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;268000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;565000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;308000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;484000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;635000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;454000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;996000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.512397" elapsed="0.007202"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.523359" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.519763" elapsed="0.003645"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.519718" elapsed="0.003712"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:07.600354" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:07.600420" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:07.523569" elapsed="0.076876"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:07.602402" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:07.600571" elapsed="0.001893"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.600540" elapsed="0.001952"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:07.602529" elapsed="0.000041"/>
</return>
<msg time="2026-05-25T01:53:07.602760" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:07.602804" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 142 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:07.496818" elapsed="0.106009"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.605033" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.603457" elapsed="0.001637"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.603438" elapsed="0.001679"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.605741" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.605271" elapsed="0.000497"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.606331" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.605933" elapsed="0.000425"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:07.606410" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:07.606590" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:07.603091" elapsed="0.003524"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:07.606774" elapsed="0.000421"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:07.496180" elapsed="0.111080"/>
</kw>
<arg>f19.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:07.447813" elapsed="0.159507"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:07.441022" elapsed="0.166421"/>
</test>
<test id="s1-s3-s1-t77" name="Test Is Flow 20 Updated" line="217">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:07.618323" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f20.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f20.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:07.618491" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:07.618166" elapsed="0.000354"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:07.619091" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ec220&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:07.618671" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:07.619558" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:07.619277" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:07.620008" level="INFO">${flow_id} = 143</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:07.619733" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:07.620470" level="INFO">${flow_priority} = 20</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:07.620200" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:07.621240" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:07.620646" elapsed="0.000625"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.621759" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.621427" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.622380" level="INFO">${flow_id} = 143</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.622014" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.622906" level="INFO">${flow_priority} = 20</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.622577" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.623435" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.623120" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.623949" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.623632" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.624687" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ec220&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.624161" elapsed="0.000570"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:07.617823" elapsed="0.006965"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.625456" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.624980" elapsed="0.000512"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.625946" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;20&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;20&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xf0ff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.625671" elapsed="0.000331"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.633676" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:07.633370" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:07.640490" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=143?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=143?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:07.640942" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=143?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '487'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;143&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:07.641046" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:07.633833" elapsed="0.007261"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.641513" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.641259" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.644155" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;143&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.641703" elapsed="0.002530"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.646815" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.644333" elapsed="0.002554"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.644304" elapsed="0.002615"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:07.650648" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:07.650712" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:07.647134" elapsed="0.003610"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:07.653173" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:07.650845" elapsed="0.002406"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.650820" elapsed="0.002463"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:07.653330" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:53:07.653599" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:07.653659" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 143 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:07.633037" elapsed="0.020654"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.656414" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.654493" elapsed="0.001967"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.654468" elapsed="0.002014"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.657022" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.656627" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.657575" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.657227" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:07.657650" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:07.657825" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:07.653980" elapsed="0.003869"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:07.658009" elapsed="0.000442"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:07.632481" elapsed="0.026034"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.666208" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:07.665894" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:07.678859" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:07.679809" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:07.680483" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:07.666387" elapsed="0.014156"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.681506" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.680899" elapsed="0.000710"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.685602" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;216000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;285000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;320000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;670000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;705000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;626000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;774000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;810000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;846000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;29000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;67000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;135000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;163000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;233000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;268000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;565000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;308000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;484000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;635000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;454000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;996000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.681929" elapsed="0.004989"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.689449" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.687021" elapsed="0.002495"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.686993" elapsed="0.002554"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:07.717388" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:07.717436" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:07.689741" elapsed="0.027718"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:07.719371" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:07.717538" elapsed="0.001890"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.717519" elapsed="0.001934"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:07.719486" elapsed="0.000032"/>
</return>
<msg time="2026-05-25T01:53:07.719688" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:07.719731" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 143 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:07.665521" elapsed="0.054233"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.721884" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.720329" elapsed="0.001601"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.720311" elapsed="0.001641"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.722570" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.722114" elapsed="0.000484"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.723129" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.722762" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:07.723205" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:07.723381" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:07.719976" elapsed="0.003430"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:07.723562" elapsed="0.000395"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:07.664897" elapsed="0.059122"/>
</kw>
<arg>f20.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:07.614587" elapsed="0.109506"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:07.607669" elapsed="0.116548"/>
</test>
<test id="s1-s3-s1-t78" name="Test Is Flow 21 Updated" line="219">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:07.735021" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:07.735189" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:07.734879" elapsed="0.000339"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:07.735788" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3053f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:07.735368" elapsed="0.000447"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:07.736267" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:07.735967" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:07.736712" level="INFO">${flow_id} = 144</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:07.736443" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:07.737172" level="INFO">${flow_priority} = 21</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:07.736888" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:07.738048" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:07.737347" elapsed="0.000746"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.738628" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.738287" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.739201" level="INFO">${flow_id} = 144</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.738863" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.739721" level="INFO">${flow_priority} = 21</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.739396" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.740247" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.739912" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.740761" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.740444" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.741296" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3053f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.740958" elapsed="0.000379"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:07.734552" elapsed="0.006839"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.741921" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.741541" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.742369" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.742115" elapsed="0.000316"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.750172" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:07.749855" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:07.756908" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:07.757559" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '832'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:07.757671" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:07.750353" elapsed="0.007343"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.758137" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.757857" elapsed="0.000326"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.761006" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.758403" elapsed="0.002708"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.763655" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.761216" elapsed="0.002507"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.761188" elapsed="0.002566"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:07.768161" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:07.768227" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:07.763952" elapsed="0.004306"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:07.770769" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:07.768362" elapsed="0.002484"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.768334" elapsed="0.002544"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:07.770933" elapsed="0.000047"/>
</return>
<msg time="2026-05-25T01:53:07.771209" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:07.771252" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:07.749544" elapsed="0.021731"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.773543" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.771814" elapsed="0.001774"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.771796" elapsed="0.001814"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.774173" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.773756" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.774725" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.774376" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:07.774800" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:07.774976" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:07.771484" elapsed="0.003517"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:07.775172" elapsed="0.000383"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:07.748980" elapsed="0.026638"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.783375" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:07.783062" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:07.796611" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:07.797203" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:07.797605" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:07.783531" elapsed="0.014111"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.798277" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.797866" elapsed="0.000479"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.803496" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;216000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;285000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;320000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;670000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;705000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;626000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;774000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;810000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;846000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;29000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;67000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;135000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;163000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;233000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;268000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;565000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;308000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;484000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;635000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;454000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;996000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.798546" elapsed="0.007061"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.809769" elapsed="0.000034"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.805771" elapsed="0.004104"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.805726" elapsed="0.004199"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:07.836925" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:07.836972" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:07.810306" elapsed="0.026690"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:07.838816" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:07.837103" elapsed="0.001769"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.837055" elapsed="0.001841"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:07.838929" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:07.839141" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:07.839185" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:07.782687" elapsed="0.056521"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.841336" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.839754" elapsed="0.001627"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.839736" elapsed="0.001667"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.841952" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.841550" elapsed="0.000430"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.842525" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.842159" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:07.842600" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:07.842782" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:07.839423" elapsed="0.003384"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:07.842961" elapsed="0.000406"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:07.782030" elapsed="0.061399"/>
</kw>
<arg>f21.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:07.731307" elapsed="0.112178"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:07.724412" elapsed="0.119191"/>
</test>
<test id="s1-s3-s1-t79" name="Test Is Flow 22 Updated" line="221">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:07.854543" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f22.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f22.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:07.854682" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:07.854403" elapsed="0.000308"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:07.855449" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe696c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:07.854996" elapsed="0.000481"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:07.855913" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:07.855630" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:07.856377" level="INFO">${flow_id} = 145</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:07.856106" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:07.856833" level="INFO">${flow_priority} = 22</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:07.856551" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:07.857723" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:07.857012" elapsed="0.000741"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.858273" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.857907" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.858837" level="INFO">${flow_id} = 145</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.858511" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.859374" level="INFO">${flow_priority} = 22</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.859031" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.859880" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.859567" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.860411" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.860090" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.860931" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe696c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.860613" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:07.854030" elapsed="0.006997"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.861575" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.861192" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.861997" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;22&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;22&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.861755" elapsed="0.000305"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.869899" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:07.869601" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:07.876473" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=145?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=145?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:07.877338" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=145?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '830'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;145&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:07.877490" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:07.870054" elapsed="0.007472"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.878128" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.877746" elapsed="0.000445"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.881248" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;145&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.878463" elapsed="0.002871"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.883931" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.881433" elapsed="0.002566"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.881404" elapsed="0.002626"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:07.888099" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:07.888146" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:07.884247" elapsed="0.003922"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:07.889896" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:07.888242" elapsed="0.001709"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.888224" elapsed="0.001750"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:07.890006" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:07.890214" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:07.890274" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 145 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:07.869276" elapsed="0.021022"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.892565" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.890838" elapsed="0.001773"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.890820" elapsed="0.001813"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.893196" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.892782" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.893739" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.893387" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:07.893814" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:07.893990" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:07.890509" elapsed="0.003506"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:07.894190" elapsed="0.000418"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:07.868694" elapsed="0.025976"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.902468" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:07.902134" elapsed="0.000360"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:07.915345" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:07.916294" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:07.916964" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:07.902623" elapsed="0.014403"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.917982" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.917417" elapsed="0.000696"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.921846" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;216000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;285000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;320000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;670000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;705000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;626000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;774000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;810000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;846000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;29000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;67000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;135000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;163000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;233000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;268000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;565000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;308000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;484000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;635000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;454000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;996000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.918496" elapsed="0.004698"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.925722" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.923296" elapsed="0.002493"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.923268" elapsed="0.002551"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:07.953283" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:07.953330" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:07.926011" elapsed="0.027342"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:07.955151" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:07.953432" elapsed="0.001777"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.953413" elapsed="0.001820"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:07.955266" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:07.955462" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:07.955506" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 145 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:07.901743" elapsed="0.053785"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:07.957670" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.956093" elapsed="0.001622"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.956060" elapsed="0.001676"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.958339" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.957885" elapsed="0.000482"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.958884" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.958531" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:07.958960" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:07.959156" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:07.955745" elapsed="0.003437"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:07.959341" elapsed="0.000386"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:07.901133" elapsed="0.058658"/>
</kw>
<arg>f22.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:07.850757" elapsed="0.109090"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:07.843879" elapsed="0.116085"/>
</test>
<test id="s1-s3-s1-t80" name="Test Is Flow 23 Updated" line="223">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:07.970823" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f23.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f23.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:07.970972" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:07.970685" elapsed="0.000316"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:07.971590" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6b560&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:07.971170" elapsed="0.000448"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:07.972052" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:07.971771" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:07.972516" level="INFO">${flow_id} = 146</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:07.972246" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:07.972964" level="INFO">${flow_priority} = 23</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:07.972695" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:07.973875" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:07.973157" elapsed="0.000748"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.974420" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.974059" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.974975" level="INFO">${flow_id} = 146</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.974652" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.975514" level="INFO">${flow_priority} = 23</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.975186" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.976019" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.975707" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.976561" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.976233" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.977101" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6b560&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:07.976758" elapsed="0.000386"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:07.970353" elapsed="0.006846"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.977740" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:07.977358" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.978175" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;23&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;23&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.977920" elapsed="0.000319"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.986240" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:07.985918" elapsed="0.000369"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:07.992682" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=146?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=146?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:07.993618" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=146?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '884'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;146&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:07.993774" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:07.986422" elapsed="0.007388"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.994507" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.994091" elapsed="0.000531"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:07.997643" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;146&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:07.994833" elapsed="0.002908"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.000330" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:07.997843" elapsed="0.002558"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:07.997814" elapsed="0.002618"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:08.005038" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:08.005127" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:08.000630" elapsed="0.004531"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:08.007700" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:08.005265" elapsed="0.002513"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.005239" elapsed="0.002572"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:08.007863" elapsed="0.000046"/>
</return>
<msg time="2026-05-25T01:53:08.008173" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:08.008237" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 146 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:07.985600" elapsed="0.022668"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.011475" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.009052" elapsed="0.002471"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.009026" elapsed="0.002519"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.012112" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.011692" elapsed="0.000448"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.012655" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.012302" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:08.012731" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:08.012906" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:08.008569" elapsed="0.004361"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:08.013111" elapsed="0.000384"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:07.985018" elapsed="0.028539"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.021202" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:08.020884" elapsed="0.000353"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:08.032264" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:08.033213" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:08.033891" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:08.021366" elapsed="0.012584"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.034935" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.034366" elapsed="0.000670"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.040489" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;216000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;285000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;320000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;670000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;705000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;626000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;774000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;810000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;846000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;29000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;67000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;135000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;163000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;233000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;268000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;565000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;308000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;484000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;635000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;454000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;996000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.035395" elapsed="0.007231"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.044710" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.042790" elapsed="0.001968"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.042746" elapsed="0.002035"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:08.075121" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:08.075169" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:08.044920" elapsed="0.030272"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:08.076966" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:08.075272" elapsed="0.001751"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.075252" elapsed="0.001795"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:08.077095" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:53:08.077293" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:08.077336" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 146 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:08.020512" elapsed="0.056847"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.079510" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.077914" elapsed="0.001643"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.077896" elapsed="0.001688"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.080158" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.079732" elapsed="0.000454"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.080706" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.080350" elapsed="0.000382"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:08.080783" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:08.080961" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:08.077577" elapsed="0.003410"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:08.081160" elapsed="0.000388"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:08.019884" elapsed="0.061728"/>
</kw>
<arg>f23.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:07.967103" elapsed="0.114566"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:07.960257" elapsed="0.121531"/>
</test>
<test id="s1-s3-s1-t81" name="Test Is Flow 24 Updated" line="225">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:08.092773" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f24.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f24.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:08.092913" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:08.092633" elapsed="0.000309"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:08.093503" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4dabb0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:08.093107" elapsed="0.000424"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:08.093964" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:08.093683" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:08.094440" level="INFO">${flow_id} = 147</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:08.094156" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:08.094882" level="INFO">${flow_priority} = 24</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:08.094614" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:08.095621" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:08.095057" elapsed="0.000594"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.096152" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.095806" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.096718" level="INFO">${flow_id} = 147</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.096386" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.097265" level="INFO">${flow_priority} = 24</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.096912" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.097768" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.097457" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.098320" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.097962" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.098832" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4dabb0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.098516" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:08.092296" elapsed="0.006633"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.099476" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.099096" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.099896" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;24&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;24&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                        &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.099657" elapsed="0.000293"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.107693" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:08.107392" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:08.114095" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=147?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=147?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:08.114517" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=147?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '448'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;147&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:08.114621" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:08.107848" elapsed="0.006798"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.115180" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.114804" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.118177" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;147&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.115447" elapsed="0.002806"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.120779" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.118365" elapsed="0.002481"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.118336" elapsed="0.002580"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:08.124638" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:08.124702" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:08.121140" elapsed="0.003594"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:08.127307" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:08.124839" elapsed="0.002525"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.124812" elapsed="0.002577"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:08.127425" elapsed="0.000034"/>
</return>
<msg time="2026-05-25T01:53:08.127635" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:08.127679" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 147 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:08.107059" elapsed="0.020643"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.129860" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.128304" elapsed="0.001601"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.128286" elapsed="0.001641"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.130548" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.130088" elapsed="0.000487"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.131096" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.130735" elapsed="0.000388"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:08.131173" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:08.131349" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:08.127937" elapsed="0.003437"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:08.131530" elapsed="0.000397"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:08.106504" elapsed="0.025486"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.140011" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:08.139701" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:08.152807" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:08.153422" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:08.153842" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:08.140186" elapsed="0.013694"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.154512" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.154122" elapsed="0.000453"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.157917" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;216000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;285000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;320000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;670000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;705000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;626000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;774000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;810000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;846000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;29000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;67000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;135000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;163000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;233000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;268000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;565000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;308000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;484000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;635000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;454000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;996000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.154776" elapsed="0.004464"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.161769" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.159342" elapsed="0.002493"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.159313" elapsed="0.002553"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:08.190888" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:08.190935" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:08.162058" elapsed="0.028900"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:08.192748" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:08.191037" elapsed="0.001767"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.191017" elapsed="0.001811"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:08.192861" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:53:08.193058" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:08.193132" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 147 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:08.139325" elapsed="0.053831"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.195411" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.193715" elapsed="0.001742"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.193697" elapsed="0.001782"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.196025" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.195624" elapsed="0.000428"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.196582" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.196230" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:08.196658" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:08.196836" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:08.193382" elapsed="0.003479"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:08.197016" elapsed="0.000404"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:08.138674" elapsed="0.058811"/>
</kw>
<arg>f24.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:08.088963" elapsed="0.108580"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:08.082060" elapsed="0.115611"/>
</test>
<test id="s1-s3-s1-t82" name="Test Is Flow 25 Updated" line="227">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:08.209654" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f25.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f25.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:08.209813" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:08.209508" elapsed="0.000333"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:08.210467" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1c770&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:08.209993" elapsed="0.000504"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:08.210936" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:08.210652" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:08.211400" level="INFO">${flow_id} = 148</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:08.211129" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:08.211842" level="INFO">${flow_priority} = 25</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:08.211575" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:08.212783" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:08.212018" elapsed="0.000796"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.213323" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.212971" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.213882" level="INFO">${flow_id} = 148</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.213559" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.214429" level="INFO">${flow_priority} = 25</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.214089" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.214937" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.214622" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.215472" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.215151" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.218053" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1c770&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.215668" elapsed="0.002449"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:08.209176" elapsed="0.008999"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.218767" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.218370" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.219223" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;25&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;25&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.218957" elapsed="0.000330"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.227193" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:08.226834" elapsed="0.000390"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:08.233688" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=148?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=148?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:08.234455" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=148?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '883'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;148&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:08.234586" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:08.227359" elapsed="0.007253"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.235302" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.234903" elapsed="0.000464"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.238374" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;148&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.235571" elapsed="0.002890"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.240978" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.238565" elapsed="0.002483"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.238533" elapsed="0.002565"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:08.245613" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:08.245677" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:08.241296" elapsed="0.004413"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:08.247835" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:08.245813" elapsed="0.002077"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.245786" elapsed="0.002128"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:08.247946" elapsed="0.000032"/>
</return>
<msg time="2026-05-25T01:53:08.248162" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:08.248206" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 148 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:08.226438" elapsed="0.021791"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.250548" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.248779" elapsed="0.001815"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.248761" elapsed="0.001855"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.251184" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.250761" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.251718" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.251371" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:08.251793" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:08.251970" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:08.248444" elapsed="0.003551"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:08.252167" elapsed="0.000389"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:08.225790" elapsed="0.026830"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.260330" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:08.260016" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:08.274801" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:08.275400" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:08.275805" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:08.260487" elapsed="0.015354"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.276438" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.276083" elapsed="0.000417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.279859" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;216000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;285000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;320000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;670000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;705000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;626000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;774000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;810000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;846000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;29000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;67000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;135000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;163000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;233000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;268000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;565000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;308000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;484000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;635000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;454000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;996000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.276699" elapsed="0.004463"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.283731" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.281264" elapsed="0.002534"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.281236" elapsed="0.002593"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:08.314224" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:08.314295" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:08.284024" elapsed="0.030303"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:08.316123" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:08.314408" elapsed="0.001772"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.314388" elapsed="0.001815"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:08.316236" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:08.316429" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:08.316473" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 148 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:08.259644" elapsed="0.056851"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.318613" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.317035" elapsed="0.001623"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.317017" elapsed="0.001662"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.319241" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.318824" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.319782" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.319432" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:08.319858" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:08.320035" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:08.316707" elapsed="0.003353"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:08.320234" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:08.259020" elapsed="0.061663"/>
</kw>
<arg>f25.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:08.205885" elapsed="0.114855"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:08.198035" elapsed="0.122828"/>
</test>
<test id="s1-s3-s1-t83" name="Test Is Flow 31 Updated" line="229">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:08.331729" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f31.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f31.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:08.331874" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:08.331589" elapsed="0.000314"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:08.332476" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1df80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:08.332055" elapsed="0.000449"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:08.332948" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:08.332664" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:08.333413" level="INFO">${flow_id} = 154</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:08.333142" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:08.333856" level="INFO">${flow_priority} = 31</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:08.333589" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:08.334709" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:08.334031" elapsed="0.000708"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.335243" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.334895" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.335809" level="INFO">${flow_id} = 154</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.335482" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.336353" level="INFO">${flow_priority} = 31</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.336009" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.336865" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.336547" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.337395" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.337061" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.337909" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1df80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.337591" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:08.331260" elapsed="0.006746"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.338574" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.338173" elapsed="0.000431"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.339004" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;154&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;31&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf31&lt;/flow-name&gt;
    &lt;priority&gt;31&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.338758" elapsed="0.000320"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.346933" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:08.346630" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:08.353999" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=154?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=154?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:08.355346" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=154?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '717'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;154&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:08.355501" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:08.347108" elapsed="0.008429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.356140" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.355761" elapsed="0.000443"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.359275" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;154&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.356458" elapsed="0.002942"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.361946" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.359504" elapsed="0.002512"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.359473" elapsed="0.002574"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:08.365301" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:08.365347" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:08.362264" elapsed="0.003106"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:08.367142" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:08.365445" elapsed="0.001753"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.365426" elapsed="0.001795"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:08.367254" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:08.367448" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:08.367491" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 154 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:08.346268" elapsed="0.021245"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.369616" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.368050" elapsed="0.001611"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.368033" elapsed="0.001650"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.370243" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.369827" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.370795" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.370448" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:08.370870" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:08.371046" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:08.367722" elapsed="0.003364"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:08.371243" elapsed="0.000384"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:08.345693" elapsed="0.025997"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.381527" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:08.381227" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:08.394652" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:08.395701" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:08.396430" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:08.381684" elapsed="0.014811"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.397814" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.396887" elapsed="0.001253"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.402402" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;216000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;285000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;320000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;670000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;705000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;626000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;774000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;810000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;846000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;29000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;67000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;135000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;163000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;233000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;268000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;565000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;308000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;484000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;635000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;454000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;996000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.398850" elapsed="0.005105"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.406531" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.404094" elapsed="0.002505"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.404039" elapsed="0.002591"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:08.434199" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:08.434246" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:08.406824" elapsed="0.027445"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:08.436033" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:08.434358" elapsed="0.001745"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.434338" elapsed="0.001790"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:08.436162" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:53:08.436362" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:08.436405" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 154 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:08.380834" elapsed="0.055594"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.438544" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.436984" elapsed="0.001605"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.436966" elapsed="0.001645"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.439179" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.438757" elapsed="0.000450"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.439720" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.439370" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:08.439796" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:08.439978" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:08.436649" elapsed="0.003353"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:08.440175" elapsed="0.000389"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:08.380220" elapsed="0.060408"/>
</kw>
<arg>f31.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:08.327979" elapsed="0.112708"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:08.321177" elapsed="0.119637"/>
</test>
<test id="s1-s3-s1-t84" name="Test Is Flow 36 Updated" line="231">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:08.451694" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f36.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f36.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:08.451842" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:08.451552" elapsed="0.000319"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:08.452447" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1ce00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:08.452023" elapsed="0.000452"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:08.452910" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:08.452629" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:08.453373" level="INFO">${flow_id} = 159</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:08.453102" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:08.453814" level="INFO">${flow_priority} = 36</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:08.453547" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:08.454627" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:08.453990" elapsed="0.000667"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.455171" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.454813" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.455743" level="INFO">${flow_id} = 159</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.455408" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.456281" level="INFO">${flow_priority} = 36</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.455937" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.456789" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.456475" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.457333" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.456989" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.457850" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1ce00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.457530" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:08.451224" elapsed="0.006721"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.458533" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.458111" elapsed="0.000453"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.458957" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;159&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;36&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf36&lt;/flow-name&gt;
    &lt;priority&gt;36&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.458716" elapsed="0.000299"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.466799" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:08.466494" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:08.473488" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=159?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=159?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:08.474143" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=159?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '557'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;159&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:08.474332" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:08.466958" elapsed="0.007417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.474953" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.474602" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.478023" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;159&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.475241" elapsed="0.002923"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.480704" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.478265" elapsed="0.002507"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.478236" elapsed="0.002567"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:08.484699" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:08.484764" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:08.480997" elapsed="0.003799"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:08.487265" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:08.484898" elapsed="0.002443"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.484872" elapsed="0.002502"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:08.487421" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:53:08.487690" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:08.487751" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 159 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:08.466161" elapsed="0.021621"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.490817" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.488553" elapsed="0.002328"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.488528" elapsed="0.002387"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.491557" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.491154" elapsed="0.000429"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.492118" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.491745" elapsed="0.000400"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:08.492196" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:08.492374" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:08.488091" elapsed="0.004308"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:08.492555" elapsed="0.000384"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:08.465591" elapsed="0.027416"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.501055" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:08.500749" elapsed="0.000349"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:08.514877" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:08.515774" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:08.516577" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:08.501232" elapsed="0.015407"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.517606" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.516998" elapsed="0.000709"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.523175" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;216000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;285000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;320000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;670000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;705000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;626000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;774000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;810000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;846000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;29000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;67000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;135000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;163000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;233000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;268000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;565000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;308000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;484000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;635000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;454000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;996000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.518027" elapsed="0.006083"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.525931" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.524186" elapsed="0.001795"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.524164" elapsed="0.001839"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:08.557792" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:08.557841" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:08.526159" elapsed="0.031706"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:08.559695" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:08.557950" elapsed="0.001801"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.557928" elapsed="0.001848"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:08.559809" elapsed="0.000035"/>
</return>
<msg time="2026-05-25T01:53:08.560016" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:08.560060" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 159 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:08.500370" elapsed="0.059729"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.562251" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.560671" elapsed="0.001636"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.560653" elapsed="0.001677"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.562901" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.562479" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.563466" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.563112" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:08.563542" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:08.563721" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:08.560328" elapsed="0.003418"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:08.563904" elapsed="0.000410"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:08.499725" elapsed="0.064654"/>
</kw>
<arg>f36.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:08.447950" elapsed="0.116487"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:08.441140" elapsed="0.123421"/>
</test>
<test id="s1-s3-s1-t85" name="Test Is Flow 38 Updated" line="233">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:08.575462" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f38.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f38.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:08.575612" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:08.575321" elapsed="0.000320"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:08.576221" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc389710&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:08.575800" elapsed="0.000450"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:08.576683" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:08.576403" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:08.577150" level="INFO">${flow_id} = 161</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:08.576860" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:08.577594" level="INFO">${flow_priority} = 38</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:08.577325" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:08.578444" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:08.577770" elapsed="0.000706"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.578968" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.578633" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.579558" level="INFO">${flow_id} = 161</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.579227" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.580104" level="INFO">${flow_priority} = 38</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.579758" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.580619" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.580302" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.581154" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.580817" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.581678" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc389710&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.581354" elapsed="0.000366"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:08.574976" elapsed="0.006800"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.582343" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.581926" elapsed="0.000450"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.582772" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;161&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;38&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf38&lt;/flow-name&gt;
    &lt;priority&gt;38&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.582529" elapsed="0.000301"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.590635" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:08.590328" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:08.597944" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=161?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=161?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:08.598512" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=161?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '621'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;161&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:08.598620" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:08.590792" elapsed="0.007853"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.599261" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.598804" elapsed="0.000520"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.602447" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;161&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.599527" elapsed="0.003045"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.605123" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.602673" elapsed="0.002519"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.602645" elapsed="0.002578"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:08.609252" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:08.609316" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:08.605416" elapsed="0.003932"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:08.611589" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:08.609449" elapsed="0.002195"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.609423" elapsed="0.002244"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:08.611701" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:08.611893" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:08.611936" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 161 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:08.589978" elapsed="0.021980"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.614096" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.612515" elapsed="0.001627"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.612497" elapsed="0.001667"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.614726" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.614325" elapsed="0.000428"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.615280" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.614914" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:08.615357" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:08.615533" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:08.612183" elapsed="0.003376"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:08.615713" elapsed="0.000408"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:08.589424" elapsed="0.026761"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.624097" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:08.623783" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:08.636928" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:08.637879" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:08.638595" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:08.624256" elapsed="0.014399"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.639611" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.639010" elapsed="0.000703"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.645325" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;216000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;285000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;320000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;670000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;705000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;626000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;774000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;810000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;846000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;29000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;67000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;135000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;163000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;233000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;268000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;565000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;308000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;484000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;635000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;454000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;996000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.640032" elapsed="0.007288"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.649152" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.647395" elapsed="0.001805"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.647374" elapsed="0.001848"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:08.679625" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:08.679673" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:08.649360" elapsed="0.030336"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:08.681474" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:08.679774" elapsed="0.001756"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.679755" elapsed="0.001799"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:08.681587" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:08.681780" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:08.681824" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 161 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:08.623408" elapsed="0.058438"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.684038" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.682461" elapsed="0.001635"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.682443" elapsed="0.001676"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.684669" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.684265" elapsed="0.000431"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.685239" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.684856" elapsed="0.000408"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:08.685314" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:08.685490" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:08.682078" elapsed="0.003437"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:08.685668" elapsed="0.000382"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:08.622781" elapsed="0.063349"/>
</kw>
<arg>f38.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:08.571728" elapsed="0.114460"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:08.564862" elapsed="0.121455"/>
</test>
<test id="s1-s3-s1-t86" name="Test Is Flow 43 Updated" line="235">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:08.697103" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f43.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f43.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:08.697244" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:08.696949" elapsed="0.000324"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:08.697830" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcff600&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:08.697423" elapsed="0.000435"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:08.698341" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:08.698011" elapsed="0.000362"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:08.698803" level="INFO">${flow_id} = 166</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:08.698533" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:08.699264" level="INFO">${flow_priority} = 43</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:08.698979" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:08.700116" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:08.699440" elapsed="0.000707"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.700635" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.700304" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.701225" level="INFO">${flow_id} = 166</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.700878" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.701754" level="INFO">${flow_priority} = 43</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.701424" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.702278" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.701950" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.702809" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.702490" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.703353" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcff600&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.703005" elapsed="0.000389"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:08.696623" elapsed="0.006826"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.703978" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.703600" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.704418" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;166&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;43&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf43&lt;/flow-name&gt;
    &lt;priority&gt;43&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.704175" elapsed="0.000302"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.712252" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:08.711928" elapsed="0.000351"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:08.718962" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=166?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=166?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:08.719532" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=166?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '711'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;166&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:08.719639" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:08.712409" elapsed="0.007255"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.720089" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.719822" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.722237" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;166&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.720280" elapsed="0.002084"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.724704" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.722436" elapsed="0.002335"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.722416" elapsed="0.002386"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:08.728821" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:08.728890" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:08.724993" elapsed="0.003929"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:08.731417" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:08.729031" elapsed="0.002462"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.729002" elapsed="0.002524"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:08.731571" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:53:08.731836" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:08.731903" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 166 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:08.711616" elapsed="0.020318"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.735171" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.732705" elapsed="0.002513"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.732680" elapsed="0.002559"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.735779" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.735386" elapsed="0.000419"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.736330" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.735965" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:08.736405" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:08.736580" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:08.732244" elapsed="0.004361"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:08.736758" elapsed="0.000395"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:08.711050" elapsed="0.026166"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.744888" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:08.744594" elapsed="0.000320"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:08.761246" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:08.762190" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:08.762888" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:08.745047" elapsed="0.017901"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.763913" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.763346" elapsed="0.000667"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.768564" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;216000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;285000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;320000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;670000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;705000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;626000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;774000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;810000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;846000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;29000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;67000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;135000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;163000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;233000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;268000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;565000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;308000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;484000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;635000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;454000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;996000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.764366" elapsed="0.005481"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.772404" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.769948" elapsed="0.002524"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.769920" elapsed="0.002583"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:08.804733" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:08.804782" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:08.772697" elapsed="0.032108"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:08.806611" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:08.804888" elapsed="0.001779"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.804868" elapsed="0.001824"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:08.806725" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:53:08.806923" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:08.806967" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 166 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:08.744220" elapsed="0.062769"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.809155" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.807567" elapsed="0.001633"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.807549" elapsed="0.001673"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.809784" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.809370" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.810385" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.809974" elapsed="0.000438"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:08.810463" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:08.810643" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:08.807227" elapsed="0.003441"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:08.810826" elapsed="0.000412"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:08.743599" elapsed="0.067703"/>
</kw>
<arg>f43.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:08.693371" elapsed="0.117990"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:08.686593" elapsed="0.124887"/>
</test>
<test id="s1-s3-s1-t87" name="Test Is Flow 45 Updated" line="237">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:08.822366" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f45.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f45.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:08.822511" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:08.822217" elapsed="0.000323"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:08.823102" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7c450&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:08.822690" elapsed="0.000441"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:08.823564" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:08.823284" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:08.824008" level="INFO">${flow_id} = 168</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:08.823740" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:08.824469" level="INFO">${flow_priority} = 45</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:08.824200" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:08.825273" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:08.824645" elapsed="0.000659"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.825790" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.825460" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.826404" level="INFO">${flow_id} = 168</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.826027" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.826931" level="INFO">${flow_priority} = 45</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.826604" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.827459" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.827145" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.827971" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.827654" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.828504" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7c450&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.828183" elapsed="0.000362"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:08.821870" elapsed="0.006730"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.829146" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.828749" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.829569" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;168&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;1180719718&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xfff0ffff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
    &lt;cookie&gt;45&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf45&lt;/flow-name&gt;
    &lt;priority&gt;45&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.829328" elapsed="0.000299"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.837381" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:08.837060" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:08.843496" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=168?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=168?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:08.844021" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=168?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '681'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;168&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:08.844167" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:08.837535" elapsed="0.006659"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.844600" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.844350" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.846759" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;168&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.844786" elapsed="0.002064"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.849165" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.846922" elapsed="0.002311"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.846902" elapsed="0.002362"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:08.853282" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:08.853346" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:08.849456" elapsed="0.003922"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:08.855783" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:08.853481" elapsed="0.002358"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.853455" elapsed="0.002407"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:08.855895" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:08.856105" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:08.856150" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 168 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:08.836746" elapsed="0.019426"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.858377" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.856776" elapsed="0.001647"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.856758" elapsed="0.001687"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.858990" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.858589" elapsed="0.000428"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.859544" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.859194" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:08.859620" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:08.859796" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:08.856379" elapsed="0.003442"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:08.859974" elapsed="0.000400"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:08.836193" elapsed="0.024245"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.868345" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:08.868033" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:08.881455" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:08.882410" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:08.883056" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:08.868501" elapsed="0.014646"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.884096" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.883503" elapsed="0.000699"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.889596" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;216000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;285000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;320000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;670000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;705000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;626000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;774000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;810000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;846000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;29000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;67000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;135000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;163000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;233000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;268000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;565000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;308000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;484000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;635000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;454000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;996000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.884523" elapsed="0.006962"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.894048" elapsed="0.000040"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.891588" elapsed="0.002547"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.891560" elapsed="0.002606"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:08.922159" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:08.922215" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:08.894377" elapsed="0.027862"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:08.924042" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:08.922352" elapsed="0.001761"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.922299" elapsed="0.001838"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:08.924171" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:08.924366" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:08.924410" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 168 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:08.867652" elapsed="0.056780"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.926554" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.924983" elapsed="0.001616"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.924965" elapsed="0.001655"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.927191" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.926765" elapsed="0.000453"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.927732" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.927381" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:08.927807" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:08.927988" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:08.924649" elapsed="0.003364"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:08.928185" elapsed="0.000387"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:08.867025" elapsed="0.061610"/>
</kw>
<arg>f45.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:08.818618" elapsed="0.110074"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:08.811763" elapsed="0.117045"/>
</test>
<test id="s1-s3-s1-t88" name="Test Is Flow 101 Updated" line="239">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:08.939811" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f101.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f101.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:08.939953" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:08.939673" elapsed="0.000310"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:08.940586" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc092890&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:08.940150" elapsed="0.000465"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:08.941048" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:08.940768" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:08.941512" level="INFO">${flow_id} = 224</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:08.941241" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:08.941955" level="INFO">${flow_priority} = 101</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:08.941687" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:08.942891" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:08.942145" elapsed="0.000776"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.943426" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.943092" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.943982" level="INFO">${flow_id} = 224</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.943659" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.944519" level="INFO">${flow_priority} = 101</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.944192" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.945023" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.944710" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.945552" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.945233" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.946080" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc092890&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:08.945748" elapsed="0.000375"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:08.939345" elapsed="0.006832"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.946718" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.946336" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.947155" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;101&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;101&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.946899" elapsed="0.000318"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.955023" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:08.954721" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:08.961371" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=224?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=224?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:08.961988" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=224?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '833'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;224&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:08.962112" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:08.955197" elapsed="0.006941"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.962606" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.962297" elapsed="0.000354"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.965578" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;224&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:08.962830" elapsed="0.002833"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.968212" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.965762" elapsed="0.002517"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.965733" elapsed="0.002577"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:08.972723" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:08.972787" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:08.968501" elapsed="0.004318"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:08.975221" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:08.972921" elapsed="0.002355"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.972895" elapsed="0.002404"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:08.975333" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:08.975526" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:08.975569" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 224 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:08.954398" elapsed="0.021194"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:08.977862" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:08.976148" elapsed="0.001766"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:08.976130" elapsed="0.001805"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.978521" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.978096" elapsed="0.000451"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.979058" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:08.978707" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:08.979148" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:08.979325" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:08.975798" elapsed="0.003551"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:08.979501" elapsed="0.000385"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:08.953777" elapsed="0.026172"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:08.987649" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:08.987350" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:09.000908" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:09.001514" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:09.001922" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:08.987809" elapsed="0.014152"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.002623" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.002211" elapsed="0.000474"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.007942" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;216000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;285000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;320000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;670000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;705000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;626000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;774000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;810000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;846000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;29000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;67000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;135000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;163000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;233000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;268000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;565000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;308000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;484000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;635000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;454000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;996000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.002885" elapsed="0.007124"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.012380" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.010199" elapsed="0.002228"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.010153" elapsed="0.002296"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:09.095749" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:09.095815" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:09.012586" elapsed="0.083255"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:09.097785" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:09.095969" elapsed="0.001876"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.095936" elapsed="0.001935"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:09.097908" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:53:09.098145" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:09.098190" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 224 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:08.986952" elapsed="0.111260"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.100469" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.098871" elapsed="0.001644"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.098852" elapsed="0.001685"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.101170" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.100689" elapsed="0.000509"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.101715" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.101361" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:09.101791" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:09.101973" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:09.098505" elapsed="0.003493"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:09.102171" elapsed="0.000418"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:08.986304" elapsed="0.116349"/>
</kw>
<arg>f101.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:08.936049" elapsed="0.166663"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:08.929245" elapsed="0.173590"/>
</test>
<test id="s1-s3-s1-t89" name="Test Is Flow 102 Updated" line="241">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:09.113590" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f102.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f102.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:09.113760" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:09.113446" elapsed="0.000343"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:09.114439" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7fa10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:09.113939" elapsed="0.000529"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:09.114907" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:09.114622" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:09.115370" level="INFO">${flow_id} = 225</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:09.115098" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:09.115811" level="INFO">${flow_priority} = 102</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:09.115544" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:09.116889" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:09.115985" elapsed="0.000935"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.117435" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.117098" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.118011" level="INFO">${flow_id} = 225</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.117689" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.118574" level="INFO">${flow_priority} = 102</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.118220" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.119093" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.118767" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.119606" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.119289" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.120136" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7fa10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.119801" elapsed="0.000377"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:09.113117" elapsed="0.007116"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.120761" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.120382" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.121198" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;102&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;102&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.120940" elapsed="0.000321"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.129018" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:09.128656" elapsed="0.000390"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:09.135986" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=225?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=225?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:09.136697" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=225?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '904'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;225&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:09.136807" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:09.129202" elapsed="0.007631"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.137309" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.137033" elapsed="0.000321"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.139737" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;225&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.137498" elapsed="0.002332"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.142400" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.139931" elapsed="0.002537"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.139901" elapsed="0.002598"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:09.146856" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:09.146921" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:09.142694" elapsed="0.004259"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:09.149629" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:09.147057" elapsed="0.002650"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.147030" elapsed="0.002710"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:09.149786" elapsed="0.000041"/>
</return>
<msg time="2026-05-25T01:53:09.150058" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:09.150144" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 225 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:09.128294" elapsed="0.021882"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.152543" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.150960" elapsed="0.001628"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.150935" elapsed="0.001675"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.153170" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.152755" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.153710" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.153360" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:09.153786" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:09.153962" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:09.150498" elapsed="0.003489"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:09.154160" elapsed="0.000400"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:09.127615" elapsed="0.027009"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.163196" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:09.162860" elapsed="0.000363"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:09.173838" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:09.174453" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:09.174853" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:09.163355" elapsed="0.011535"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.175487" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.175135" elapsed="0.000416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.178971" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;216000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;285000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;320000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;670000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;705000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;626000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;774000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;810000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;846000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;29000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;67000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;135000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;163000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;233000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;268000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;565000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;308000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;484000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;635000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;454000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;996000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.175753" elapsed="0.004525"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.182896" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.180379" elapsed="0.002585"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.180351" elapsed="0.002645"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:09.213705" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:09.213752" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:09.183210" elapsed="0.030566"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:09.215615" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:09.213857" elapsed="0.001814"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.213837" elapsed="0.001858"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:09.215728" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:53:09.215923" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:09.215967" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 225 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:09.162479" elapsed="0.053510"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.218146" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.216564" elapsed="0.001627"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.216546" elapsed="0.001667"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.218783" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.218371" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.219347" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.218972" elapsed="0.000401"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:09.219422" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:09.219604" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:09.216226" elapsed="0.003402"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:09.219785" elapsed="0.000403"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:09.161808" elapsed="0.058443"/>
</kw>
<arg>f102.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:09.109874" elapsed="0.110434"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:09.103172" elapsed="0.117260"/>
</test>
<test id="s1-s3-s1-t90" name="Test Is Flow 103 Updated" line="243">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:09.231340" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f103.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f103.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:09.231491" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:09.231196" elapsed="0.000324"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:09.232131" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35a020&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:09.231671" elapsed="0.000488"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:09.232595" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:09.232312" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:09.233039" level="INFO">${flow_id} = 226</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:09.232772" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:09.233500" level="INFO">${flow_priority} = 103</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:09.233232" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:09.234451" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:09.233676" elapsed="0.000805"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.234968" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.234637" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.235544" level="INFO">${flow_id} = 226</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.235221" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.236082" level="INFO">${flow_priority} = 103</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.235738" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.236589" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.236276" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.237272" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.236784" elapsed="0.000534"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.237797" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35a020&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.237472" elapsed="0.000367"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:09.230852" elapsed="0.007043"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.238473" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.238047" elapsed="0.000457"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.238897" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;103&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;103&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.238656" elapsed="0.000304"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.246561" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:09.246249" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:09.252710" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=226?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=226?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:09.253660" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=226?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '904'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;226&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:09.253814" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:09.246718" elapsed="0.007131"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.254532" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.254136" elapsed="0.000460"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.257572" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;226&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.254798" elapsed="0.002859"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.260216" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.257755" elapsed="0.002530"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.257726" elapsed="0.002589"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:09.264629" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:09.264692" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:09.260509" elapsed="0.004220"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:09.267190" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:09.264833" elapsed="0.002435"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.264807" elapsed="0.002495"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:09.267348" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:53:09.267615" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:09.267676" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 226 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:09.245920" elapsed="0.021787"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.270905" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.268480" elapsed="0.002490"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.268456" elapsed="0.002538"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.271558" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.271159" elapsed="0.000426"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.272119" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.271748" elapsed="0.000398"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:09.272196" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:09.272432" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:09.268000" elapsed="0.004461"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:09.272620" elapsed="0.000384"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:09.245372" elapsed="0.027714"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.280806" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:09.280508" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:09.294695" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:09.295646" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:09.296368" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:09.280963" elapsed="0.015465"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.297397" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.296786" elapsed="0.000712"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.301449" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;216000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;285000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;320000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;670000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;705000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;626000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;774000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;810000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;846000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;29000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;67000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;135000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;163000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;233000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;268000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;565000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;308000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;484000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;635000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;454000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;996000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.297818" elapsed="0.004923"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.305299" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.302843" elapsed="0.002522"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.302815" elapsed="0.002580"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:09.335981" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:09.336029" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:09.305587" elapsed="0.030465"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:09.337848" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:09.336155" elapsed="0.001749"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.336133" elapsed="0.001796"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:09.337964" elapsed="0.000033"/>
</return>
<msg time="2026-05-25T01:53:09.338191" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:09.338237" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 226 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:09.280130" elapsed="0.058130"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.340462" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.338856" elapsed="0.001653"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.338837" elapsed="0.001694"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.341116" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.340680" elapsed="0.000464"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.341675" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.341317" elapsed="0.000384"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:09.341752" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:09.341931" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:09.338514" elapsed="0.003442"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:09.342136" elapsed="0.000434"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:09.279491" elapsed="0.063144"/>
</kw>
<arg>f103.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:09.227587" elapsed="0.115106"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:09.220744" elapsed="0.122070"/>
</test>
<test id="s1-s3-s1-t91" name="Test Is Flow 104 Updated" line="245">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:09.354005" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f104.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f104.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:09.354195" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:09.353851" elapsed="0.000374"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:09.354881" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcfd850&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:09.354417" elapsed="0.000493"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:09.355375" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:09.355084" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:09.355845" level="INFO">${flow_id} = 227</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:09.355568" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:09.356318" level="INFO">${flow_priority} = 104</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:09.356024" elapsed="0.000321"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:09.357292" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:09.356514" elapsed="0.000810"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.357842" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.357495" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.358453" level="INFO">${flow_id} = 227</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.358108" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.358994" level="INFO">${flow_priority} = 104</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.358663" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.359531" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.359207" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.360055" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.359733" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.360605" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcfd850&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.360273" elapsed="0.000375"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:09.353510" elapsed="0.007195"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.361263" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.360855" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.361702" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;104&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;104&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.361446" elapsed="0.000318"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.369738" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:09.369420" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:09.376233" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=227?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=227?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:09.376896" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=227?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '833'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;227&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:09.377016" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:09.369897" elapsed="0.007145"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.377474" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.377219" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.380055" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;227&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.377697" elapsed="0.002467"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.382773" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.380272" elapsed="0.002574"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.380239" elapsed="0.002649"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:09.387402" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:09.387468" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:09.383116" elapsed="0.004385"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:09.389994" elapsed="0.000039"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:09.387607" elapsed="0.002496"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.387579" elapsed="0.002560"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:09.390188" elapsed="0.000042"/>
</return>
<msg time="2026-05-25T01:53:09.390509" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:09.390572" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 227 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:09.369097" elapsed="0.021507"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.393008" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.391290" elapsed="0.001768"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.391271" elapsed="0.001829"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.393651" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.393248" elapsed="0.000431"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.394223" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.393841" elapsed="0.000410"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:09.394300" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:09.394509" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:09.390896" elapsed="0.003638"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:09.394690" elapsed="0.000420"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:09.368497" elapsed="0.026684"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.403837" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:09.403492" elapsed="0.000375"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:09.418161" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:09.419755" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:09.420737" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:09.404015" elapsed="0.016816"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.422386" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.421426" elapsed="0.001122"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.427477" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;216000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;285000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;320000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;670000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;705000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;626000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;774000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;810000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;846000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;29000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;67000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;135000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;163000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;233000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;268000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;565000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;308000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;484000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;635000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;454000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;996000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.422996" elapsed="0.005695"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.430582" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.428779" elapsed="0.001855"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.428755" elapsed="0.001902"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:09.462154" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:09.462203" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:09.430801" elapsed="0.031427"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:09.464036" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:09.462310" elapsed="0.001798"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.462290" elapsed="0.001843"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:09.464167" elapsed="0.000033"/>
</return>
<msg time="2026-05-25T01:53:09.464377" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:09.464421" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 227 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:09.403008" elapsed="0.061436"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.466631" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.465018" elapsed="0.001659"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.464999" elapsed="0.001700"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.467287" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.466850" elapsed="0.000465"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.467831" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.467480" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:09.467908" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:09.468108" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:09.464675" elapsed="0.003460"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:09.468292" elapsed="0.000395"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:09.402266" elapsed="0.066484"/>
</kw>
<arg>f104.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:09.350170" elapsed="0.118637"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:09.343116" elapsed="0.125818"/>
</test>
<test id="s1-s3-s1-t92" name="Test Is Flow 105 Updated" line="247">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:09.479908" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f105.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f105.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:09.480079" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:09.479767" elapsed="0.000343"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:09.480691" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bebb0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:09.480263" elapsed="0.000456"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:09.481174" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:09.480873" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:09.481622" level="INFO">${flow_id} = 228</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:09.481354" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:09.482063" level="INFO">${flow_priority} = 105</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:09.481797" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:09.483002" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:09.482256" elapsed="0.000777"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.483540" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.483205" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.484118" level="INFO">${flow_id} = 228</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.483774" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.484641" level="INFO">${flow_priority} = 105</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.484314" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.485159" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.484832" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.485672" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.485355" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.486198" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bebb0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.485866" elapsed="0.000374"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:09.479434" elapsed="0.006861"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.486840" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.486458" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.487284" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;105&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;105&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.487027" elapsed="0.000319"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.495212" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:09.494889" elapsed="0.000350"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:09.501894" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=228?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=228?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:09.502568" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=228?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '838'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;228&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:09.502680" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:09.495372" elapsed="0.007333"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.503216" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.502865" elapsed="0.000414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.506431" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;228&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.503566" elapsed="0.002951"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.509058" elapsed="0.000047"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.506619" elapsed="0.002535"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.506589" elapsed="0.002597"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:09.513555" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:09.513619" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:09.509380" elapsed="0.004271"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:09.515811" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:09.513754" elapsed="0.002143"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.513727" elapsed="0.002194"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:09.515955" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:09.516166" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:09.516210" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 228 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:09.494571" elapsed="0.021661"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.518501" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.516767" elapsed="0.001780"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.516749" elapsed="0.001820"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.519132" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.518715" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.519673" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.519321" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:09.519748" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:09.519925" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:09.516441" elapsed="0.003510"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:09.520133" elapsed="0.000388"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:09.493966" elapsed="0.026618"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.528327" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:09.528013" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:09.542192" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:09.543267" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:09.543921" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:09.528483" elapsed="0.015508"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.544965" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.544398" elapsed="0.000696"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.549223" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;216000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;285000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;320000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;670000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;705000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;626000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;774000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;810000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;846000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;29000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;67000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;135000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;163000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;233000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;268000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;565000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;308000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;484000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;635000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;454000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;996000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.545421" elapsed="0.005093"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.553049" elapsed="0.000042"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.550615" elapsed="0.002526"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.550587" elapsed="0.002586"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:09.582399" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:09.582449" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:09.553387" elapsed="0.029085"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:09.584354" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:09.582559" elapsed="0.001851"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.582536" elapsed="0.001898"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:09.584468" elapsed="0.000034"/>
</return>
<msg time="2026-05-25T01:53:09.584676" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:09.584720" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 228 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:09.527639" elapsed="0.057104"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.587078" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.585353" elapsed="0.001773"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.585335" elapsed="0.001813"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.587766" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.587300" elapsed="0.000494"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.588330" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.587958" elapsed="0.000398"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:09.588406" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:09.588582" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:09.584986" elapsed="0.003620"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:09.588763" elapsed="0.000413"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:09.527009" elapsed="0.062231"/>
</kw>
<arg>f105.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:09.476097" elapsed="0.113202"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:09.469265" elapsed="0.120167"/>
</test>
<test id="s1-s3-s1-t93" name="Test Is Flow 106 Updated" line="249">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:09.600192" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f106.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f106.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:09.600354" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:09.600032" elapsed="0.000351"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:09.600964" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6a0c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:09.600534" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:09.601450" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:09.601163" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:09.601894" level="INFO">${flow_id} = 229</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:09.601626" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:09.602377" level="INFO">${flow_priority} = 106</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:09.602083" elapsed="0.000322"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:09.603300" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:09.602555" elapsed="0.000775"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.603822" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.603488" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.604410" level="INFO">${flow_id} = 229</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.604083" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.604936" level="INFO">${flow_priority} = 106</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.604609" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.605466" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.605151" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.605981" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.605662" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.606527" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6a0c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.606194" elapsed="0.000374"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:09.599696" elapsed="0.006927"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.607175" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.606772" elapsed="0.000433"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.607598" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;106&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;106&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.607356" elapsed="0.000304"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.617276" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:09.616955" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:09.623990" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=229?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=229?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:09.624642" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=229?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '844'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;229&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:09.624761" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:09.617434" elapsed="0.007353"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.625222" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.624946" elapsed="0.000321"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.627476" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;229&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.625442" elapsed="0.002108"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.629618" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.627633" elapsed="0.002037"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.627608" elapsed="0.002085"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:09.633708" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:09.633772" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:09.629834" elapsed="0.003969"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:09.636296" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:09.633908" elapsed="0.002465"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.633881" elapsed="0.002524"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:09.636451" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:53:09.636719" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:09.636779" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 229 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:09.616638" elapsed="0.020172"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.639875" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.637611" elapsed="0.002310"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.637585" elapsed="0.002357"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.640507" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.640105" elapsed="0.000429"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.641045" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.640695" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:09.641136" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:09.641314" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:09.637122" elapsed="0.004216"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:09.641494" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:09.616076" elapsed="0.025863"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.649807" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:09.649509" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:09.664377" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:09.665327" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:09.665988" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:09.649964" elapsed="0.016092"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.667061" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.666480" elapsed="0.000728"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.672044" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;993000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;699000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;43000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;106000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;141000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;735000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;178000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;216000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;885000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;285000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;320000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;379000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;670000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;705000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;739000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;626000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;774000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;810000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;846000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;661000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;922000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;961000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;29000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;67000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;135000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;163000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;196000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;233000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;268000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;565000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;308000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;346000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;484000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;635000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;454000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;492000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;996000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;959000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.667528" elapsed="0.005813"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.675874" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.673441" elapsed="0.002500"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.673414" elapsed="0.002558"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:09.705246" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:09.705294" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:09.676186" elapsed="0.029131"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:09.707097" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:09.705394" elapsed="0.001760"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.705374" elapsed="0.001804"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:09.707211" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:09.707403" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:09.707447" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 229 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:09.649133" elapsed="0.058336"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.709588" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.708011" elapsed="0.001622"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.707993" elapsed="0.001662"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.710217" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.709802" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.710792" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.710435" elapsed="0.000383"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:09.710868" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:09.711044" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:09.707681" elapsed="0.003403"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:09.711244" elapsed="0.000387"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:09.648505" elapsed="0.063190"/>
</kw>
<arg>f106.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:09.596419" elapsed="0.115333"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:09.589630" elapsed="0.122236"/>
</test>
<test id="s1-s3-s1-t94" name="Test Is Flow 107 Updated" line="251">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:09.722703" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f107.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f107.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:09.722840" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:09.722562" elapsed="0.000307"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:09.724320" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6bb00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:09.723019" elapsed="0.001362"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:09.724933" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:09.724608" elapsed="0.000351"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:09.725398" level="INFO">${flow_id} = 230</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:09.725126" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:09.725839" level="INFO">${flow_priority} = 107</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:09.725573" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:09.726831" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:09.726017" elapsed="0.000849"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.727371" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.727023" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.727952" level="INFO">${flow_id} = 230</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.727628" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.728489" level="INFO">${flow_priority} = 107</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.728160" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.728996" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.728682" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.729528" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.729208" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.730044" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6bb00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.729723" elapsed="0.000379"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:09.722190" elapsed="0.007969"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.730722" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.730312" elapsed="0.000441"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.731340" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;107&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;107&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.730903" elapsed="0.000503"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.739043" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:09.738744" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:09.744256" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=230?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=230?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:09.744921" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=230?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '940'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;230&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:09.745036" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:09.739218" elapsed="0.005843"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.745530" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.745277" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.747716" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;230&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.745719" elapsed="0.002058"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.749593" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.747848" elapsed="0.001793"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.747827" elapsed="0.001836"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:09.753559" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:09.753623" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:09.749802" elapsed="0.003853"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:09.756120" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:09.753758" elapsed="0.002441"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.753731" elapsed="0.002500"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:09.756278" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:53:09.756546" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:09.756607" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 230 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:09.738428" elapsed="0.018210"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.761466" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.757405" elapsed="0.004108"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.757381" elapsed="0.004154"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.762093" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.761683" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.762654" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.762283" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:09.762730" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:09.762906" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:09.756924" elapsed="0.006007"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:09.763100" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:09.737850" elapsed="0.025696"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.771280" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:09.770967" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:09.783136" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:09.787308" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;t... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:09.787979" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:09.771436" elapsed="0.016602"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.788988" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.788422" elapsed="0.000698"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.793233" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;247000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;316000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;624000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;805000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;841000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;692000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;992000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;561000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;134000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;194000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;264000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;482000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;515000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;666000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;485000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;27000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;990000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.789440" elapsed="0.005270"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.797254" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.794815" elapsed="0.002506"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.794786" elapsed="0.002565"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:09.825024" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:09.825084" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:09.797544" elapsed="0.027565"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:09.826891" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:09.825189" elapsed="0.001758"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.825169" elapsed="0.001805"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:09.827009" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:09.827220" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:09.827263" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 230 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:09.770593" elapsed="0.056693"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.829409" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.827830" elapsed="0.001624"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.827812" elapsed="0.001664"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.830027" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.829623" elapsed="0.000431"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.830615" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.830233" elapsed="0.000408"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:09.830692" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:09.830867" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:09.827501" elapsed="0.003390"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:09.831046" elapsed="0.000400"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:09.769934" elapsed="0.061576"/>
</kw>
<arg>f107.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:09.718950" elapsed="0.112617"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:09.712161" elapsed="0.119519"/>
</test>
<test id="s1-s3-s1-t95" name="Test Is Flow 108 Updated" line="253">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:09.842637" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f108.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f108.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:09.842793" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:09.842498" elapsed="0.000325"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:09.843432" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe68860&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:09.842975" elapsed="0.000486"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:09.843893" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:09.843614" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:09.844364" level="INFO">${flow_id} = 231</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:09.844090" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:09.844808" level="INFO">${flow_priority} = 108</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:09.844540" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:09.845753" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:09.844985" elapsed="0.000799"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.846292" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.845941" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.846881" level="INFO">${flow_id} = 231</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.846550" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.847424" level="INFO">${flow_priority} = 108</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.847094" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.847931" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.847619" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.848463" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.848142" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.849155" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe68860&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.848659" elapsed="0.000542"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:09.842136" elapsed="0.007122"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.849799" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.849410" elapsed="0.000420"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.850242" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;108&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;108&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.849981" elapsed="0.000326"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.857932" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:09.857635" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:09.865163" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=231?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=231?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:09.865814" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=231?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '940'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;231&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:09.865923" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:09.858106" elapsed="0.007843"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.866618" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.866236" elapsed="0.000447"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.869676" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;231&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.866883" elapsed="0.002878"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.872307" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.869860" elapsed="0.002516"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.869832" elapsed="0.002575"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:09.876271" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:09.876317" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:09.872600" elapsed="0.003741"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:09.878188" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:09.876414" elapsed="0.001830"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.876395" elapsed="0.001872"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:09.878301" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:09.878518" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:09.878562" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 231 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:09.857320" elapsed="0.021265"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.880849" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.879138" elapsed="0.001756"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.879120" elapsed="0.001796"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.881483" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.881081" elapsed="0.000429"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.882018" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.881672" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:09.882111" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:09.882289" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:09.878793" elapsed="0.003520"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:09.882483" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:09.856750" elapsed="0.026180"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.890654" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:09.890344" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:09.902789" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:09.903389" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;t... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:09.903795" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:09.890811" elapsed="0.013022"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.904435" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.904058" elapsed="0.000440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.907884" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;247000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;316000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;624000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;805000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;841000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;692000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;992000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;561000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;134000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;194000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;264000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;482000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;515000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;666000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;485000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;27000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;990000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.904698" elapsed="0.004487"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.911811" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.909287" elapsed="0.002591"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.909260" elapsed="0.002649"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:09.941573" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:09.941620" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:09.912169" elapsed="0.029475"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:09.943478" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:09.941721" elapsed="0.001813"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.941702" elapsed="0.001856"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:09.943591" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:09.943784" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:09.943827" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 231 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:09.889953" elapsed="0.053896"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.945992" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.944417" elapsed="0.001620"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.944398" elapsed="0.001661"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.946637" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.946222" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.947204" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.946830" elapsed="0.000400"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:09.947280" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:09.947458" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:09.944082" elapsed="0.003402"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:09.947641" elapsed="0.000386"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:09.889343" elapsed="0.058764"/>
</kw>
<arg>f108.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:09.838877" elapsed="0.109288"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:09.832017" elapsed="0.116260"/>
</test>
<test id="s1-s3-s1-t96" name="Test Is Flow 109 Updated" line="255">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:09.959208" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f109.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f109.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:09.959342" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:09.959053" elapsed="0.000319"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:09.959950" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1eca0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:09.959524" elapsed="0.000457"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:09.960433" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:09.960153" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:09.960881" level="INFO">${flow_id} = 232</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:09.960612" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:09.961343" level="INFO">${flow_priority} = 109</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:09.961057" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:09.962285" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:09.961518" elapsed="0.000798"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.962819" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.962489" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.963402" level="INFO">${flow_id} = 232</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.963059" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.963922" level="INFO">${flow_priority} = 109</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.963598" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.964446" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.964131" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.964958" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.964642" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.965648" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1eca0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:09.965169" elapsed="0.000521"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:09.958726" elapsed="0.007019"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.966297" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:09.965895" elapsed="0.000433"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.966737" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;109&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;109&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.966490" elapsed="0.000311"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.974456" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:09.974132" elapsed="0.000351"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:09.981812" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=232?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=232?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:09.983504" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=232?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '940'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;232&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:09.983779" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:09.974613" elapsed="0.009228"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.985010" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.984369" elapsed="0.000787"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:09.989121" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;232&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:09.985513" elapsed="0.003698"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:09.991810" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:09.989312" elapsed="0.002567"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.989283" elapsed="0.002628"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:09.996456" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:09.996520" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:09.992177" elapsed="0.004376"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:09.999064" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:09.996657" elapsed="0.002497"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:09.996630" elapsed="0.002553"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:09.999216" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:09.999409" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:09.999452" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 232 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:09.973803" elapsed="0.025672"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.001824" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.000092" elapsed="0.001778"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.000056" elapsed="0.001836"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.002487" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.002041" elapsed="0.000474"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.003033" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.002680" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:10.003126" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:10.003306" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:09.999686" elapsed="0.003644"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:10.003487" elapsed="0.000385"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:09.973248" elapsed="0.030687"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.011660" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:10.011364" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:10.029372" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:10.030324" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;t... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:10.031014" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:10.011817" elapsed="0.019287"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.032098" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.031472" elapsed="0.000748"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.037712" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;247000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;316000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;624000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;805000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;841000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;692000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;992000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;561000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;134000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;194000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;264000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;482000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;515000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;666000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;485000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;27000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;990000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.032545" elapsed="0.006877"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.041242" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.039498" elapsed="0.001793"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.039477" elapsed="0.001835"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:10.069136" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:10.069184" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:10.041452" elapsed="0.027757"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:10.071040" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:10.069287" elapsed="0.001825"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.069268" elapsed="0.001869"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:10.071171" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:53:10.071371" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:10.071414" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 232 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:10.010970" elapsed="0.060467"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.073574" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.071997" elapsed="0.001622"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.071979" elapsed="0.001661"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.074207" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.073789" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.074772" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.074420" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:10.074847" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:10.075022" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:10.071659" elapsed="0.003388"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:10.075221" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:10.010341" elapsed="0.065327"/>
</kw>
<arg>f109.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:09.955417" elapsed="0.120307"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:09.948569" elapsed="0.127271"/>
</test>
<test id="s1-s3-s1-t97" name="Test Is Flow 110 Updated" line="257">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:10.086827" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f110.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f110.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:10.086998" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:10.086685" elapsed="0.000343"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:10.087626" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ec130&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:10.087195" elapsed="0.000459"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:10.088117" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:10.087807" elapsed="0.000337"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:10.088610" level="INFO">${flow_id} = 233</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:10.088297" elapsed="0.000341"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:10.089089" level="INFO">${flow_priority} = 110</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:10.088792" elapsed="0.000326"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:10.089951" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:10.089270" elapsed="0.000712"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.090510" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.090156" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.091155" level="INFO">${flow_id} = 233</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.090760" elapsed="0.000443"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.091687" level="INFO">${flow_priority} = 110</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.091358" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.092209" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.091879" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.092719" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.092404" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.093244" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ec130&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.092912" elapsed="0.000373"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:10.086310" elapsed="0.007030"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.093877" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.093489" elapsed="0.000418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.094314" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;110&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;110&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.094057" elapsed="0.000316"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.102176" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:10.101857" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:10.109241" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=233?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=233?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:10.109808" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=233?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '773'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;233&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:10.109914" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:10.102333" elapsed="0.007607"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.110368" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.110114" elapsed="0.000331"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.113208" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;233&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.110588" elapsed="0.002743"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.115908" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.113430" elapsed="0.002546"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.113402" elapsed="0.002605"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:10.120488" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:10.120552" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:10.116221" elapsed="0.004363"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:10.123135" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:10.120686" elapsed="0.002529"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.120659" elapsed="0.002589"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:10.123288" elapsed="0.000033"/>
</return>
<msg time="2026-05-25T01:53:10.123508" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:10.123562" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 233 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:10.101540" elapsed="0.022045"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.126102" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.124138" elapsed="0.002013"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.124120" elapsed="0.002053"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.126756" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.126322" elapsed="0.000464"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.127352" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.126963" elapsed="0.000421"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:10.127439" elapsed="0.000033"/>
</return>
<msg time="2026-05-25T01:53:10.127647" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:10.123794" elapsed="0.003884"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:10.127863" elapsed="0.000467"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:10.100969" elapsed="0.027435"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.136412" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:10.136109" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:10.151590" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:10.152542" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;t... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:10.153228" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:10.136570" elapsed="0.016719"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.154252" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.153645" elapsed="0.000708"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.159428" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;247000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;316000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;624000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;805000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;841000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;692000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;992000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;561000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;134000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;194000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;264000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;482000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;515000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;666000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;485000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;27000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;990000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.154717" elapsed="0.005637"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.162165" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.160426" elapsed="0.001786"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.160406" elapsed="0.001828"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:10.189800" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:10.189847" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:10.162372" elapsed="0.027498"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:10.191656" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:10.189948" elapsed="0.001764"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.189929" elapsed="0.001807"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:10.191768" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:10.191962" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:10.192005" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 233 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:10.135716" elapsed="0.056312"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.194198" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.192614" elapsed="0.001629"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.192596" elapsed="0.001668"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.194847" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.194442" elapsed="0.000433"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.195407" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.195038" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:10.195483" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:10.195661" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:10.192282" elapsed="0.003404"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:10.195842" elapsed="0.000405"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:10.135089" elapsed="0.061221"/>
</kw>
<arg>f110.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:10.082993" elapsed="0.113374"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:10.076123" elapsed="0.120360"/>
</test>
<test id="s1-s3-s1-t98" name="Test Is Flow 113 Updated" line="259">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:10.207381" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f113.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f113.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:10.207531" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:10.207240" elapsed="0.000320"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:10.208229" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e4400&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:10.207711" elapsed="0.000547"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:10.208696" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:10.208414" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:10.209158" level="INFO">${flow_id} = 236</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:10.208872" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:10.209600" level="INFO">${flow_priority} = 113</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:10.209334" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:10.210569" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:10.209775" elapsed="0.000825"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.211101" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.210758" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.211662" level="INFO">${flow_id} = 236</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.211337" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.212203" level="INFO">${flow_priority} = 113</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.211856" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.212710" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.212398" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.213242" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.212906" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.213921" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e4400&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.213441" elapsed="0.000523"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:10.206883" elapsed="0.007137"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.214586" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.214188" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.215016" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;113&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;113&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.214770" elapsed="0.000331"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.222759" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:10.222453" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:10.229898" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=236?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=236?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:10.230887" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=236?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '948'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;236&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:10.231042" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:10.222926" elapsed="0.008171"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.231723" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.231367" elapsed="0.000419"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.234791" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;236&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.231993" elapsed="0.002885"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.237411" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.234976" elapsed="0.002503"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.234948" elapsed="0.002562"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:10.241094" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:10.241141" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:10.237704" elapsed="0.003461"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:10.243085" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:10.241238" elapsed="0.001904"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.241219" elapsed="0.001946"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:10.243199" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:10.243390" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:10.243433" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 236 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:10.222086" elapsed="0.021369"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.245576" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.243991" elapsed="0.001630"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.243973" elapsed="0.001670"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.246202" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.245790" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.246754" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.246403" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:10.246830" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:10.247006" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:10.243663" elapsed="0.003368"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:10.247203" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:10.221523" elapsed="0.026124"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.255396" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:10.255098" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:10.268311" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:10.269246" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;t... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:10.269866" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:10.255552" elapsed="0.014373"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.270932" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.270319" elapsed="0.000715"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.276517" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;247000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;316000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;624000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;805000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;841000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;692000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;992000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;561000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;134000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;194000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;264000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;482000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;515000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;666000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;485000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;27000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;990000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.271397" elapsed="0.007231"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.280730" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.278792" elapsed="0.001985"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.278747" elapsed="0.002053"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:10.311547" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:10.311595" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:10.280937" elapsed="0.030682"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:10.313530" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:10.311699" elapsed="0.001890"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.311679" elapsed="0.001934"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:10.313647" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:10.313844" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:10.313889" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 236 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:10.254707" elapsed="0.059205"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.316092" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.314513" elapsed="0.001625"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.314495" elapsed="0.001665"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.316706" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.316307" elapsed="0.000426"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.317260" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.316895" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:10.317335" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:10.317512" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:10.314150" elapsed="0.003387"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:10.317693" elapsed="0.000402"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:10.254062" elapsed="0.064097"/>
</kw>
<arg>f113.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:10.203591" elapsed="0.114624"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:10.196753" elapsed="0.121576"/>
</test>
<test id="s1-s3-s1-t99" name="Test Is Flow 156 Updated" line="261">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:10.329057" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f156.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f156.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:10.329206" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:10.328921" elapsed="0.000314"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:10.329789" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3896c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:10.329384" elapsed="0.000433"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:10.330263" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:10.329969" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:10.330719" level="INFO">${flow_id} = 279</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:10.330451" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:10.331176" level="INFO">${flow_priority} = 156</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:10.330892" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:10.332027" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:10.331350" elapsed="0.000708"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.332557" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.332227" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.333128" level="INFO">${flow_id} = 279</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.332788" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.333651" level="INFO">${flow_priority} = 156</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.333324" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.334169" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.333842" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.334725" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.334363" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.335408" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3896c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.334921" elapsed="0.000530"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:10.328595" elapsed="0.006912"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.336043" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.335658" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.336485" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;279&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
      &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;156&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf156&lt;/flow-name&gt;
    &lt;priority&gt;156&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.336244" elapsed="0.000303"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.344133" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:10.343821" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:10.351678" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=279?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=279?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:10.352260" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=279?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '762'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:10.352369" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:10.344289" elapsed="0.008105"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.352803" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.352552" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.355005" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.352991" elapsed="0.002191"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.357710" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.355294" elapsed="0.002484"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.355266" elapsed="0.002543"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:10.361868" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:10.361932" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:10.358002" elapsed="0.003961"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:10.364118" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:10.362083" elapsed="0.002092"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.362039" elapsed="0.002159"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:10.364230" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:10.364420" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:10.364463" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 279 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:10.343507" elapsed="0.020979"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.366776" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.365016" elapsed="0.001805"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.364998" elapsed="0.001846"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.367406" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.366990" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.367943" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.367594" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:10.368019" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:10.368212" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:10.364691" elapsed="0.003547"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:10.368393" elapsed="0.000379"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:10.342944" elapsed="0.025890"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.376561" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:10.376266" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:10.387568" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:10.388516" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;t... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:10.389185" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:10.376725" elapsed="0.012521"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.390197" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.389603" elapsed="0.000695"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.395405" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;247000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;316000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;624000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;805000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;841000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;692000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;992000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;561000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;134000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;194000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;264000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;482000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;515000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;666000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;485000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;27000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;990000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.390665" elapsed="0.005662"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.398141" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.396400" elapsed="0.001789"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.396380" elapsed="0.001831"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:10.428996" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:10.429047" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:10.398349" elapsed="0.030736"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:10.430900" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:10.429168" elapsed="0.001788"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.429148" elapsed="0.001832"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:10.431013" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:10.431226" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:10.431269" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 279 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:10.375870" elapsed="0.055422"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.433412" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.431840" elapsed="0.001618"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.431822" elapsed="0.001658"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.434027" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.433627" elapsed="0.000428"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.434629" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.434234" elapsed="0.000422"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:10.434706" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:10.434882" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:10.431506" elapsed="0.003401"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:10.435063" elapsed="0.000405"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:10.375266" elapsed="0.060264"/>
</kw>
<arg>f156.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:10.325358" elapsed="0.110228"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:10.318612" elapsed="0.117086"/>
</test>
<test id="s1-s3-s1-t100" name="Test Is Flow 201 Updated" line="263">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:10.446474" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f201.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f201.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:10.446614" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:10.446304" elapsed="0.000339"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:10.447223" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc76160&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:10.446795" elapsed="0.000456"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:10.447682" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:10.447404" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:10.448147" level="INFO">${flow_id} = 324</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:10.447858" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:10.448589" level="INFO">${flow_priority} = 201</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:10.448322" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:10.449465" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:10.448763" elapsed="0.000732"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.449976" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.449648" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.450595" level="INFO">${flow_id} = 324</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.450221" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.451145" level="INFO">${flow_priority} = 201</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.450791" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.451654" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.451340" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.452181" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.451847" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.452698" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc76160&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.452377" elapsed="0.000362"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:10.445963" elapsed="0.006830"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.453335" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.452941" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.453756" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;201&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;201&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.453517" elapsed="0.000300"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.461601" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:10.461302" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:10.467524" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=324?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=324?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:10.468375" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=324?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '821'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;324&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:10.468526" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:10.461758" elapsed="0.006803"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.469159" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.468784" elapsed="0.000438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.472252" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;324&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.469423" elapsed="0.002913"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.474873" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.472433" elapsed="0.002508"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.472406" elapsed="0.002565"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:10.479330" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:10.479376" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:10.475191" elapsed="0.004208"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:10.481159" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:10.479473" elapsed="0.001742"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.479453" elapsed="0.001785"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:10.481271" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:10.481462" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:10.481505" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 324 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:10.460968" elapsed="0.020559"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.483791" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.482060" elapsed="0.001777"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.482043" elapsed="0.001815"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.484425" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.484004" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.484961" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.484612" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:10.485036" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:10.485231" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:10.481734" elapsed="0.003522"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:10.485412" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:10.460420" elapsed="0.025437"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.493586" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:10.493292" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:10.504236" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:10.504802" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;t... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:10.505239" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:10.493741" elapsed="0.011536"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.505854" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.505502" elapsed="0.000414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.509315" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;247000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;316000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;624000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;805000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;841000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;692000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;992000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;561000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;134000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;194000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;264000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;482000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;515000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;666000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;485000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;27000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;990000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.506138" elapsed="0.004490"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.513159" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.510728" elapsed="0.002498"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.510700" elapsed="0.002557"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:10.593357" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:10.593421" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:10.513451" elapsed="0.079995"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:10.595430" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:10.593574" elapsed="0.001916"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.593540" elapsed="0.001976"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:10.595554" elapsed="0.000037"/>
</return>
<msg time="2026-05-25T01:53:10.595772" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:10.595817" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 324 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:10.492900" elapsed="0.102941"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.598032" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.596463" elapsed="0.001629"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.596445" elapsed="0.001680"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.598781" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.598280" elapsed="0.000529"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.599346" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.598973" elapsed="0.000399"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:10.599422" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:10.599600" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:10.596101" elapsed="0.003524"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:10.599783" elapsed="0.000423"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:10.492289" elapsed="0.107982"/>
</kw>
<arg>f201.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:10.442730" elapsed="0.157600"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:10.435948" elapsed="0.164511"/>
</test>
<test id="s1-s3-s1-t101" name="Test Is Flow 202 Updated" line="265">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:10.611331" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f202.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f202.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:10.611497" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:10.611187" elapsed="0.000339"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:10.612123" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e40e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:10.611677" elapsed="0.000476"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:10.612590" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:10.612307" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:10.613037" level="INFO">${flow_id} = 325</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:10.612767" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:10.613496" level="INFO">${flow_priority} = 202</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:10.613228" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:10.614399" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:10.613671" elapsed="0.000779"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.614959" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.614621" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.615710" level="INFO">${flow_id} = 325</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.615230" elapsed="0.000523"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.616265" level="INFO">${flow_priority} = 202</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.615911" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.616780" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.616462" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.617319" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.616977" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.617843" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e40e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.617518" elapsed="0.000368"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:10.610842" elapsed="0.007100"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.618524" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.618108" elapsed="0.000448"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.618954" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;202&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;202&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.618711" elapsed="0.000310"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.626678" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:10.626334" elapsed="0.000371"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:10.632049" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=325?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=325?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:10.632706" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=325?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '821'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;325&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:10.632815" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:10.626838" elapsed="0.006003"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.633276" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.633003" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.635774" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;325&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.633464" elapsed="0.002395"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.638387" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.635957" elapsed="0.002512"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.635929" elapsed="0.002573"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:10.642849" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:10.642913" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:10.638696" elapsed="0.004249"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:10.645439" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:10.643048" elapsed="0.002468"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.643021" elapsed="0.002528"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:10.645595" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:53:10.645861" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:10.645922" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 325 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:10.626001" elapsed="0.019952"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.648640" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.646781" elapsed="0.001905"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.646756" elapsed="0.001952"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.649274" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.648853" elapsed="0.000448"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.649813" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.649463" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:10.649888" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:10.650087" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:10.646266" elapsed="0.003848"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:10.650269" elapsed="0.000411"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:10.625448" elapsed="0.025295"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.658486" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:10.658164" elapsed="0.000349"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:10.672670" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:10.673634" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;t... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:10.674311" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:10.658642" elapsed="0.015729"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.675405" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.674789" elapsed="0.000718"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.680916" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;247000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;316000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;624000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;805000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;841000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;692000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;992000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;561000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;134000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;194000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;264000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;482000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;515000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;666000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;485000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;27000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;990000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.675827" elapsed="0.007216"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.684920" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.683188" elapsed="0.001780"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.683163" elapsed="0.001827"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:10.709878" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:10.709925" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:10.685147" elapsed="0.024801"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:10.711757" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:10.710031" elapsed="0.001783"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.710011" elapsed="0.001828"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:10.711872" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:10.712080" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:10.712127" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 325 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:10.657776" elapsed="0.054374"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.714318" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.712698" elapsed="0.001664"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.712680" elapsed="0.001704"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.714957" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.714552" elapsed="0.000432"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.715524" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.715173" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:10.715599" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:10.715775" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:10.712365" elapsed="0.003435"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:10.715955" elapsed="0.000408"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:10.657168" elapsed="0.059258"/>
</kw>
<arg>f202.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:10.607590" elapsed="0.108892"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:10.600791" elapsed="0.115805"/>
</test>
<test id="s1-s3-s1-t102" name="Test Is Flow 203 Updated" line="267">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:10.727448" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f203.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f203.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:10.727581" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:10.727310" elapsed="0.000300"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:10.728185" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ef100&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:10.727760" elapsed="0.000453"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:10.728641" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:10.728364" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:10.729110" level="INFO">${flow_id} = 326</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:10.728820" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:10.729555" level="INFO">${flow_priority} = 203</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:10.729286" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:10.730442" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:10.729729" elapsed="0.000744"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.730956" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.730628" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.731535" level="INFO">${flow_id} = 326</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.731211" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.732059" level="INFO">${flow_priority} = 203</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.731727" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.732579" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.732267" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.733106" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.732774" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.733619" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ef100&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.733302" elapsed="0.000358"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:10.726963" elapsed="0.006752"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.734259" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.733864" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.734691" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;203&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;203&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.734449" elapsed="0.000302"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.742593" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:10.742271" elapsed="0.000350"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:10.749083" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=326?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=326?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:10.749778" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=326?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '822'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;326&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:10.749928" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:10.742752" elapsed="0.007212"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.750579" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.750206" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.753633" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;326&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.750841" elapsed="0.002876"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.756259" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.753815" elapsed="0.002512"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.753787" elapsed="0.002570"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:10.760328" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:10.760375" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:10.756549" elapsed="0.003849"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:10.762163" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:10.760472" elapsed="0.001747"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.760453" elapsed="0.001790"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:10.762276" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:10.762479" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:10.762524" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 326 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:10.741941" elapsed="0.020605"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.764839" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.763099" elapsed="0.001786"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.763080" elapsed="0.001826"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.765486" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.765052" elapsed="0.000461"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.766022" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.765675" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:10.766112" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:10.766291" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:10.762754" elapsed="0.003562"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:10.766497" elapsed="0.000385"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:10.741387" elapsed="0.025559"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.774701" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:10.774377" elapsed="0.000351"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:10.788732" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:10.789689" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;t... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:10.790360" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:10.774857" elapsed="0.015562"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.791443" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.790831" elapsed="0.000713"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.797004" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;247000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;316000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;624000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;805000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;841000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;692000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;992000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;561000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;134000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;194000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;264000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;482000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;515000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;666000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;485000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;27000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;990000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.791865" elapsed="0.007263"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.800936" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.799203" elapsed="0.001782"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.799182" elapsed="0.001829"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:10.825647" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:10.825695" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:10.801166" elapsed="0.024553"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:10.827538" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:10.825797" elapsed="0.001797"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.825778" elapsed="0.001841"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:10.827652" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:10.827850" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:10.827895" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 326 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:10.773983" elapsed="0.053935"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.830111" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.828486" elapsed="0.001671"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.828468" elapsed="0.001711"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.830743" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.830326" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.831303" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.830934" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:10.831379" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:10.831556" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:10.828151" elapsed="0.003430"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:10.831736" elapsed="0.000406"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:10.773368" elapsed="0.058837"/>
</kw>
<arg>f203.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:10.723639" elapsed="0.108622"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:10.716842" elapsed="0.115535"/>
</test>
<test id="s1-s3-s1-t103" name="Test Is Flow 204 Updated" line="269">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:10.843178" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f204.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f204.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:10.843312" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:10.843023" elapsed="0.000318"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:10.843902" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3045e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:10.843491" elapsed="0.000439"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:10.844382" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:10.844103" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:10.844829" level="INFO">${flow_id} = 327</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:10.844560" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:10.845292" level="INFO">${flow_priority} = 204</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:10.845004" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:10.846174" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:10.845467" elapsed="0.000738"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.846779" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.846362" elapsed="0.000459"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.847363" level="INFO">${flow_id} = 327</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.847018" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.847885" level="INFO">${flow_priority} = 204</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.847558" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.848408" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.848093" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.848924" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.848604" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.849457" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3045e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.849135" elapsed="0.000363"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:10.842692" elapsed="0.006861"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.850101" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.849704" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.850542" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;204&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;204&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.850286" elapsed="0.000317"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.858448" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:10.858125" elapsed="0.000352"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:10.864023" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=327?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=327?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:10.864636" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=327?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '822'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;327&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:10.864744" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:10.858608" elapsed="0.006161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.865204" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.864926" elapsed="0.000323"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.867671" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;327&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.865393" elapsed="0.002361"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.870302" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.867853" elapsed="0.002517"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.867824" elapsed="0.002577"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:10.874780" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:10.874858" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:10.870622" elapsed="0.004278"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:10.877396" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:10.875006" elapsed="0.002466"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.874979" elapsed="0.002527"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:10.877552" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:53:10.877823" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:10.877884" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 327 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:10.857794" elapsed="0.020122"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.880611" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.878783" elapsed="0.001874"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.878758" elapsed="0.001921"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.881246" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.880829" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.881788" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.881439" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:10.881864" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:10.882043" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:10.878230" elapsed="0.003853"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:10.882241" elapsed="0.000405"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:10.857241" elapsed="0.025468"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.890499" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:10.890169" elapsed="0.000358"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:10.902983" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:10.903935" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;t... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:10.904610" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:10.890657" elapsed="0.014013"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.905626" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.905027" elapsed="0.000700"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.911213" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;247000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;316000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;624000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;805000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;841000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;692000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;992000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;561000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;134000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;194000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;264000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;482000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;515000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;666000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;485000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;27000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;990000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.906059" elapsed="0.006099"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.913958" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.912232" elapsed="0.001774"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.912211" elapsed="0.001817"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:10.937486" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:10.937533" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:10.914181" elapsed="0.023375"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:10.939360" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:10.937635" elapsed="0.001782"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.937615" elapsed="0.001826"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:10.939474" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:10.939670" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:10.939713" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 327 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:10.889771" elapsed="0.049965"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.941868" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.940296" elapsed="0.001617"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.940278" elapsed="0.001657"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.942531" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.942097" elapsed="0.000461"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.943101" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.942722" elapsed="0.000407"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:10.943180" elapsed="0.000047"/>
</return>
<msg time="2026-05-25T01:53:10.943380" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:10.939948" elapsed="0.003458"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:10.943562" elapsed="0.000383"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:10.889160" elapsed="0.054848"/>
</kw>
<arg>f204.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:10.839385" elapsed="0.104693"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:10.832627" elapsed="0.111568"/>
</test>
<test id="s1-s3-s1-t104" name="Test Is Flow 205 Updated" line="271">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:10.954954" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f205.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f205.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:10.955101" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:10.954817" elapsed="0.000315"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:10.955717" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6a890&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:10.955289" elapsed="0.000456"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:10.956201" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:10.955898" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:10.956648" level="INFO">${flow_id} = 328</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:10.956379" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:10.957108" level="INFO">${flow_priority} = 205</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:10.956825" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:10.958023" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:10.957285" elapsed="0.000768"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.958622" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.958228" elapsed="0.000437"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.959203" level="INFO">${flow_id} = 328</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.958858" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.959733" level="INFO">${flow_priority} = 205</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.959400" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.960256" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.959926" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.960770" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.960453" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.963364" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6a890&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:10.960966" elapsed="0.002442"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:10.954483" elapsed="0.008983"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.964009" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.963621" elapsed="0.000418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.964451" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;328&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;205&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;
    &lt;priority&gt;205&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.964209" elapsed="0.000306"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.972187" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:10.971808" elapsed="0.000407"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:10.978177" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=328?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=328?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:10.978855" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=328?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '949'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:10.978976" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:10.972345" elapsed="0.006659"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.979466" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.979212" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.981614" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:10.979655" elapsed="0.002020"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.983778" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.981745" elapsed="0.002101"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.981725" elapsed="0.002152"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:10.988222" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:10.988286" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:10.984090" elapsed="0.004228"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:10.990791" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:10.988421" elapsed="0.002447"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.988394" elapsed="0.002507"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:10.990947" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:53:10.991236" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:10.991297" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 328 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:10.971491" elapsed="0.019838"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:10.994687" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:10.992097" elapsed="0.002657"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:10.992052" elapsed="0.002733"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.995470" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.995007" elapsed="0.000490"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:10.996015" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:10.995666" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:10.996107" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:10.996286" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:10.991620" elapsed="0.004691"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:10.996465" elapsed="0.000380"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:10.970924" elapsed="0.025984"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.004616" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:11.004318" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:11.014569" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:11.014985" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;t... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:11.015310" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:11.004772" elapsed="0.010565"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.015749" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.015497" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.018196" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;247000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;316000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;624000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;805000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;841000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;692000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;992000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;561000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;134000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;194000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;264000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;482000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;515000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;666000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;485000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;27000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;990000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.015936" elapsed="0.003299"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.021755" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.019337" elapsed="0.002485"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.019308" elapsed="0.002544"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:11.046289" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:11.046335" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:11.022045" elapsed="0.024313"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:11.048250" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:11.046436" elapsed="0.001870"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.046417" elapsed="0.001914"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:11.048364" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:11.048557" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:11.048601" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 328 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:11.003926" elapsed="0.044697"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.050889" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.049180" elapsed="0.001754"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.049161" elapsed="0.001795"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.051527" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.051125" elapsed="0.000430"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.052082" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.051718" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:11.052160" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:11.052337" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:11.048834" elapsed="0.003528"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:11.052518" elapsed="0.000382"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:11.003320" elapsed="0.049643"/>
</kw>
<arg>f205.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:10.951214" elapsed="0.101807"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:10.944433" elapsed="0.108715"/>
</test>
<test id="s1-s3-s1-t105" name="Test Is Flow 206 Updated" line="273">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:11.063919" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f206.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f206.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:11.064052" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:11.063785" elapsed="0.000311"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:11.064666" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6bce0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:11.064248" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:11.065140" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:11.064847" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:11.065587" level="INFO">${flow_id} = 329</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:11.065318" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:11.066034" level="INFO">${flow_priority} = 206</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:11.065761" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:11.066998" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:11.066226" elapsed="0.000802"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.067532" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.067200" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.068108" level="INFO">${flow_id} = 329</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.067767" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.068631" level="INFO">${flow_priority} = 206</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.068304" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.069159" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.068825" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.069675" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.069358" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.070205" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6bce0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.069871" elapsed="0.000376"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:11.063457" elapsed="0.006845"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.070857" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.070466" elapsed="0.000421"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.071296" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;329&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;206&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;
    &lt;priority&gt;206&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.071039" elapsed="0.000321"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.079216" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:11.078887" elapsed="0.000357"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:11.086013" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=329?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=329?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:11.086726" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=329?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '947'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:11.086838" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:11.079374" elapsed="0.007490"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.087515" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.087143" elapsed="0.000434"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.090578" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.087778" elapsed="0.002886"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.093192" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.090762" elapsed="0.002498"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.090734" elapsed="0.002557"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:11.097618" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:11.097682" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:11.093483" elapsed="0.004231"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:11.099951" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:11.097817" elapsed="0.002188"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.097790" elapsed="0.002239"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:11.100062" elapsed="0.000042"/>
</return>
<msg time="2026-05-25T01:53:11.100273" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:11.100316" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 329 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:11.078567" elapsed="0.021771"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.104487" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.100876" elapsed="0.003658"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.100859" elapsed="0.003697"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.105120" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.104703" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.105663" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.105311" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:11.105740" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:11.105919" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:11.100547" elapsed="0.005397"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:11.106114" elapsed="0.000404"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:11.077959" elapsed="0.028624"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.114342" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:11.114026" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:11.126869" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:11.127734" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;t... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:11.128411" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:11.114511" elapsed="0.013959"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.129448" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.128828" elapsed="0.000720"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.134983" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;247000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;316000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;624000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;805000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;841000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;692000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;992000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;561000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;134000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;194000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;264000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;482000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;515000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;666000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;485000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;27000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;990000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.129869" elapsed="0.007179"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.140312" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.137235" elapsed="0.003125"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.137189" elapsed="0.003193"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:11.163138" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:11.163185" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:11.140519" elapsed="0.022690"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:11.165047" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:11.163287" elapsed="0.001830"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.163268" elapsed="0.001874"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:11.165175" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:11.165376" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:11.165420" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 329 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:11.113648" elapsed="0.051794"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.167626" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.165985" elapsed="0.001686"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.165967" elapsed="0.001725"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.168260" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.167841" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.168802" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.168451" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:11.168878" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:11.169055" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:11.165655" elapsed="0.003440"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:11.169255" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:11.113022" elapsed="0.056680"/>
</kw>
<arg>f206.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:11.060206" elapsed="0.109553"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:11.053404" elapsed="0.116468"/>
</test>
<test id="s1-s3-s1-t106" name="Test Is Flow 209 Updated" line="275">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:11.180708" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f209.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f209.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:11.180843" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;co...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:11.180571" elapsed="0.000301"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:11.181525" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe68fe0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:11.181099" elapsed="0.000453"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:11.181982" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:11.181704" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:11.182445" level="INFO">${flow_id} = 332</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:11.182174" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:11.182925" level="INFO">${flow_priority} = 209</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:11.182648" elapsed="0.000302"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:11.183828" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/co...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:11.183114" elapsed="0.000745"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.184369" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.184017" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.184932" level="INFO">${flow_id} = 332</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.184607" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.185472" level="INFO">${flow_priority} = 209</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.185143" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.185981" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;co...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.185666" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.186599" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/co...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.186199" elapsed="0.000446"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.187143" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe68fe0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.186804" elapsed="0.000382"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:11.180245" elapsed="0.006995"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.187773" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/co...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.187391" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.188217" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;209&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;209&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.187957" elapsed="0.000322"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.196114" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:11.195795" elapsed="0.000347"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:11.202446" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=332?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=332?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:11.203149" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=332?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '844'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;332&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:11.203316" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:11.196272" elapsed="0.007079"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.203920" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.203571" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.207043" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;332&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.204252" elapsed="0.002901"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.209678" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.207252" elapsed="0.002495"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.207224" elapsed="0.002554"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:11.213346" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:11.213392" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:11.209971" elapsed="0.003444"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:11.215214" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:11.213498" elapsed="0.001778"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.213478" elapsed="0.001822"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:11.215333" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:11.215523" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:11.215566" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 332 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:11.195479" elapsed="0.020110"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.217860" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.216140" elapsed="0.001766"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.216121" elapsed="0.001806"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.218504" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.218089" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.219051" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.218699" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:11.219144" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:11.219322" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:11.215795" elapsed="0.003552"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:11.219502" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:11.194907" elapsed="0.025039"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.227710" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:11.227408" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:11.241110" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:11.242021" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;t... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:11.242773" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:11.227865" elapsed="0.014968"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.243780" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.243218" elapsed="0.000661"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.249350" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;247000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;316000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;624000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;805000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;841000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;692000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;992000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;561000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;134000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;194000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;264000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;482000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;515000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;666000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;485000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;27000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;990000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.244244" elapsed="0.006969"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.253030" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.251295" elapsed="0.001798"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.251273" elapsed="0.001844"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:11.277060" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:11.277121" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:11.253258" elapsed="0.023887"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:11.279026" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:11.277224" elapsed="0.001877"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.277205" elapsed="0.001922"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:11.279161" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:11.279357" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:11.279400" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 332 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:11.227009" elapsed="0.052413"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.281595" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.279973" elapsed="0.001667"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.279955" elapsed="0.001707"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.282231" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.281809" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.282787" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.282423" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:11.282863" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:11.283042" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:11.279639" elapsed="0.003442"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:11.283243" elapsed="0.000383"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:11.226388" elapsed="0.057302"/>
</kw>
<arg>f209.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:11.176965" elapsed="0.106781"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:11.170155" elapsed="0.113705"/>
</test>
<test id="s1-s3-s1-t107" name="Test Is Flow 214 Updated" line="277">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:11.294690" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f214.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f214.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:11.294827" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:11.294551" elapsed="0.000305"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:11.295436" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4d9080&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:11.295009" elapsed="0.000455"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:11.295897" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:11.295618" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:11.296365" level="INFO">${flow_id} = 337</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:11.296094" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:11.296808" level="INFO">${flow_priority} = 214</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:11.296541" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:11.297649" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:11.296983" elapsed="0.000696"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.298186" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.297838" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.298822" level="INFO">${flow_id} = 337</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.298426" elapsed="0.000438"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.299365" level="INFO">${flow_priority} = 214</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.299020" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.299872" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.299561" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.300404" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.300083" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.300919" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4d9080&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.300602" elapsed="0.000358"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:11.294199" elapsed="0.006816"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.301567" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.301181" elapsed="0.000417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.301998" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;214&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;214&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
		&lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
	    &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.301757" elapsed="0.000300"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.309894" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:11.309594" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:11.316431" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=337?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=337?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:11.316940" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=337?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '671'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;337&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:11.317045" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:11.310051" elapsed="0.007040"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.317503" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.317252" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.319992" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;337&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.317691" elapsed="0.002451"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.322682" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.320242" elapsed="0.002509"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.320214" elapsed="0.002568"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:11.326948" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:11.327014" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:11.322979" elapsed="0.004071"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:11.329635" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:11.327175" elapsed="0.002537"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.327147" elapsed="0.002597"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:11.329791" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:53:11.330059" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:11.330142" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 337 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:11.309277" elapsed="0.020898"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.332565" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.330973" elapsed="0.001638"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.330948" elapsed="0.001685"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.333193" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.332779" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.333731" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.333383" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:11.333807" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:11.333982" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:11.330504" elapsed="0.003507"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:11.334185" elapsed="0.000410"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:11.308702" elapsed="0.025958"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.342611" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:11.342286" elapsed="0.000353"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:11.355280" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:11.355847" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;t... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:11.356272" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:11.342770" elapsed="0.013539"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.356885" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.356533" elapsed="0.000414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.361199" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;247000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;316000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;624000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;805000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;841000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;692000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;992000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;561000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;134000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;194000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;264000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;482000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;515000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;666000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;485000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;27000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;990000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.357169" elapsed="0.006138"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.367218" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.363471" elapsed="0.003796"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.363427" elapsed="0.003861"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:11.394417" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:11.394493" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:11.367427" elapsed="0.027097"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:11.396359" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:11.394606" elapsed="0.001810"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.394585" elapsed="0.001855"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:11.396473" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:11.396668" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:11.396712" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 337 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:11.341895" elapsed="0.054839"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.398884" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.397305" elapsed="0.001625"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.397281" elapsed="0.001670"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.399519" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.399114" elapsed="0.000432"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.400057" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.399709" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:11.400149" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:11.400325" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:11.396949" elapsed="0.003401"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:11.400507" elapsed="0.000386"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:11.341283" elapsed="0.059673"/>
</kw>
<arg>f214.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:11.290956" elapsed="0.110057"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:11.284142" elapsed="0.117002"/>
</test>
<test id="s1-s3-s1-t108" name="Test Is Flow 218 Updated" line="279">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:11.411973" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f218.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f218.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:11.412127" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:11.411835" elapsed="0.000321"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:11.412695" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc76390&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:11.412307" elapsed="0.000416"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:11.413171" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:11.412876" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:11.413614" level="INFO">${flow_id} = 341</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:11.413347" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:11.414079" level="INFO">${flow_priority} = 218</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:11.413793" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:11.414897" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:11.414257" elapsed="0.000672"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.415440" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.415105" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.416000" level="INFO">${flow_id} = 341</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.415676" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.416538" level="INFO">${flow_priority} = 218</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.416213" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.417041" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.416731" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.417574" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.417254" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.418106" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc76390&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.417770" elapsed="0.000379"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:11.411505" elapsed="0.006699"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.418769" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.418352" elapsed="0.000447"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.419214" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;go-to-table&gt;
                &lt;table_id&gt;3&lt;/table_id&gt;
            &lt;/go-to-table&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;341&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-mask&gt;0xfff0&lt;/tunnel-mask&gt;
            &lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
    &lt;cookie&gt;218&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;
    &lt;priority&gt;218&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.418950" elapsed="0.000322"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.427025" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:11.426726" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:11.432421" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=341?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=341?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:11.432551" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=341?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '563'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;341&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:11.432654" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:11.427198" elapsed="0.005481"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.433114" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.432838" elapsed="0.000322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.435286" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;341&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.433304" elapsed="0.002072"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.437181" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.435449" elapsed="0.001782"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.435428" elapsed="0.001825"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:11.439930" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:11.439976" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:11.437392" elapsed="0.002607"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:11.441764" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:11.440087" elapsed="0.001733"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.440054" elapsed="0.001789"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:11.441877" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:11.442091" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:11.442137" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 341 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:11.426379" elapsed="0.015781"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.444313" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.442729" elapsed="0.001630"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.442711" elapsed="0.001670"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.444922" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.444525" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.445495" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.445139" elapsed="0.000382"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:11.445571" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:11.445747" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:11.442370" elapsed="0.003403"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:11.445927" elapsed="0.000399"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:11.425814" elapsed="0.020576"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.454234" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:11.453922" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:11.467564" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:11.467974" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;t... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:11.468291" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:11.454392" elapsed="0.013926"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.468737" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.468481" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.471255" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;247000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;316000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;624000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;805000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;841000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;692000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;992000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;561000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;134000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;194000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;264000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;482000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;515000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;666000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;485000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;27000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;990000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.468925" elapsed="0.003253"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.473989" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.472252" elapsed="0.001786"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.472231" elapsed="0.001830"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:11.500516" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:11.500564" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:11.474216" elapsed="0.026371"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:11.502525" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:11.500674" elapsed="0.001908"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.500654" elapsed="0.001953"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:11.502640" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:11.502839" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:11.502882" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 341 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:11.453548" elapsed="0.049357"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.505061" elapsed="0.000028"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.503477" elapsed="0.001644"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.503458" elapsed="0.001685"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.505696" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.505291" elapsed="0.000433"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.506254" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.505887" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:11.506331" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:11.506537" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:11.503139" elapsed="0.003425"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:11.506723" elapsed="0.000406"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:11.452923" elapsed="0.054271"/>
</kw>
<arg>f218.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:11.408258" elapsed="0.098995"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:11.401409" elapsed="0.105958"/>
</test>
<test id="s1-s3-s1-t109" name="Test Is Flow 219 Updated" line="281">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:11.518233" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f219.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f219.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:11.518372" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;c...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:11.518092" elapsed="0.000310"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:11.518999" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38a660&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:11.518589" elapsed="0.000438"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:11.519484" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:11.519202" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:11.519931" level="INFO">${flow_id} = 342</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:11.519663" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:11.520396" level="INFO">${flow_priority} = 219</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:11.520122" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:11.521227" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:11.520570" elapsed="0.000688"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.521740" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.521411" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.522320" level="INFO">${flow_id} = 342</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.521974" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.522869" level="INFO">${flow_priority} = 219</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.522538" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.523409" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;c...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.523083" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.523927" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.523607" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.524471" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38a660&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.524139" elapsed="0.000375"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:11.517751" elapsed="0.006818"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.525123" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.524720" elapsed="0.000434"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.525555" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
		&lt;/clear-actions&gt;
	&lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;342&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;10&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;219&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;
    &lt;priority&gt;219&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.525308" elapsed="0.000307"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.533469" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:11.533165" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:11.538981" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=342?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=342?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:11.539510" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=342?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '643'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;342&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:11.539617" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:11.533627" elapsed="0.006016"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.540080" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.539808" elapsed="0.000320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.542273" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;342&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.540272" elapsed="0.002094"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.544253" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.542440" elapsed="0.001863"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.542418" elapsed="0.001908"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:11.547301" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:11.547366" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:11.544471" elapsed="0.002927"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:11.549849" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:11.547501" elapsed="0.002424"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.547475" elapsed="0.002484"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:11.550015" elapsed="0.000070"/>
</return>
<msg time="2026-05-25T01:53:11.550355" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:11.550416" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 342 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:11.532833" elapsed="0.017615"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.553445" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.551249" elapsed="0.002259"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.551224" elapsed="0.002315"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.554315" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.553739" elapsed="0.000614"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.555117" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.554591" elapsed="0.000564"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:11.555224" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:53:11.555471" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:11.550758" elapsed="0.004748"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:11.555727" elapsed="0.000555"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:11.532272" elapsed="0.024099"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.565111" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:11.564797" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:11.577700" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:11.578667" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;t... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:11.579343" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:11.565272" elapsed="0.014132"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.580361" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.579763" elapsed="0.000699"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.585956" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;247000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;316000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;624000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;805000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;841000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;692000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;992000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;561000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;134000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;194000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;264000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;482000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;515000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;666000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;485000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;27000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;990000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.580785" elapsed="0.006794"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.589399" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.587652" elapsed="0.001795"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.587632" elapsed="0.001838"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:11.615647" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:11.615694" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:11.589608" elapsed="0.026109"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:11.617509" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:11.615798" elapsed="0.001767"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.615777" elapsed="0.001812"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:11.617621" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:11.617815" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:11.617859" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 342 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:11.564423" elapsed="0.053459"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.620095" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.618510" elapsed="0.001632"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.618467" elapsed="0.001697"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.620713" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.620310" elapsed="0.000431"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.621271" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.620903" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:11.621348" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:11.621525" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:11.618131" elapsed="0.003419"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:11.621707" elapsed="0.000401"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:11.563788" elapsed="0.058384"/>
</kw>
<arg>f219.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:11.514505" elapsed="0.107725"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:11.507629" elapsed="0.114717"/>
</test>
<test id="s1-s3-s1-t110" name="Test Is Flow 220 Updated" line="283">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:11.633343" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f220.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f220.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:11.633484" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:11.633204" elapsed="0.000309"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:11.634060" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1c540&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:11.633664" elapsed="0.000440"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:11.634561" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:11.634256" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:11.635007" level="INFO">${flow_id} = 343</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:11.634738" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:11.635467" level="INFO">${flow_priority} = 220</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:11.635198" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:11.636246" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:11.635641" elapsed="0.000636"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.636760" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.636431" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.637340" level="INFO">${flow_id} = 343</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.636995" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.637863" level="INFO">${flow_priority} = 220</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.637536" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.638388" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.638060" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.638945" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.638623" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.639485" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1c540&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.639163" elapsed="0.000362"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:11.632858" elapsed="0.006722"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.640130" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.639730" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.640554" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;write-metadata&gt;
                &lt;metadata-mask&gt;12&lt;/metadata-mask&gt;
                &lt;metadata&gt;10&lt;/metadata&gt;
            &lt;/write-metadata&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;343&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;220&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;
    &lt;priority&gt;220&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.640315" elapsed="0.000297"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.648402" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:11.648101" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:11.653930" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=343?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=343?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:11.654090" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=343?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '658'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;343&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:11.654197" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:11.648559" elapsed="0.005664"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.654667" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.654381" elapsed="0.000331"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.656836" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;343&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.654869" elapsed="0.002075"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.658783" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.657021" elapsed="0.001811"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.657000" elapsed="0.001855"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:11.662795" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:11.662860" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:11.658998" elapsed="0.003893"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:11.665366" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:11.662994" elapsed="0.002449"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.662967" elapsed="0.002509"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:11.665522" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:53:11.665786" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:11.665847" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 343 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:11.647774" elapsed="0.018104"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.668473" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.666729" elapsed="0.001790"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.666704" elapsed="0.001837"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.669104" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.668686" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.669649" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.669294" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:11.669725" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:11.669901" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:11.666199" elapsed="0.003727"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:11.670097" elapsed="0.000383"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:11.647221" elapsed="0.023351"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.678564" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:11.678253" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:11.691361" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:11.691932" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;t... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:11.692367" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:11.678722" elapsed="0.013682"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.692980" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.692627" elapsed="0.000416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.696443" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;247000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;316000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;624000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;805000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;841000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;692000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;992000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;561000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;134000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;194000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;264000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;482000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;515000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;666000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;485000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;27000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;990000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.693267" elapsed="0.004471"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.700004" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.697838" elapsed="0.002215"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.697811" elapsed="0.002279"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:11.726012" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:11.726059" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:11.700233" elapsed="0.025865"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:11.727892" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:11.726178" elapsed="0.001770"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.726158" elapsed="0.001814"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:11.728005" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:11.728217" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:11.728261" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 343 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:11.677862" elapsed="0.050422"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.730416" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.728831" elapsed="0.001630"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.728813" elapsed="0.001670"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.731058" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.730655" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.731618" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.731267" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:11.731695" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:11.731872" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:11.728498" elapsed="0.003399"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:11.732054" elapsed="0.000438"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:11.677249" elapsed="0.055308"/>
</kw>
<arg>f220.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:11.629426" elapsed="0.103189"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:11.622632" elapsed="0.110097"/>
</test>
<test id="s1-s3-s1-t111" name="Test Is Flow 221 Updated" line="285">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:11.743553" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f221.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f221.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:11.743687" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:11.743418" elapsed="0.000298"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:11.744289" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc0915d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:11.743867" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:11.744747" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:11.744470" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:11.745208" level="INFO">${flow_id} = 344</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:11.744923" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:11.745652" level="INFO">${flow_priority} = 221</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:11.745385" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:11.746483" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:11.745828" elapsed="0.000724"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.747053" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.746715" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.747631" level="INFO">${flow_id} = 344</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.747304" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.748168" level="INFO">${flow_priority} = 221</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.747826" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.748678" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.748364" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.749206" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.748874" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.749724" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc0915d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.749405" elapsed="0.000360"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:11.743089" elapsed="0.006731"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.750365" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.749969" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.750832" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;344&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;10&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;221&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;
    &lt;priority&gt;221&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.750588" elapsed="0.000303"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.758678" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:11.758368" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:11.764468" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=344?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=344?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:11.764966" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=344?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '643'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;344&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:11.765097" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:11.758834" elapsed="0.006290"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.765536" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.765283" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.767706" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;344&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.765724" elapsed="0.002070"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.769612" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.767866" elapsed="0.001795"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.767846" elapsed="0.001837"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:11.773147" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:11.773212" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:11.769821" elapsed="0.003423"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:11.775743" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:11.773346" elapsed="0.002474"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.773320" elapsed="0.002533"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:11.775898" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:53:11.776188" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:11.776250" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 344 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:11.758039" elapsed="0.018242"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.779297" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.777027" elapsed="0.002316"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.777002" elapsed="0.002363"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.779905" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.779510" elapsed="0.000428"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.780463" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.780116" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:11.780539" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:11.780714" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:11.776569" elapsed="0.004170"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:11.780894" elapsed="0.000401"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:11.757483" elapsed="0.023876"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.789310" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:11.788996" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:11.801765" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:11.802434" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;t... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:11.803132" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:11.789468" elapsed="0.013727"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.804203" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.803552" elapsed="0.000753"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.809725" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;247000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;316000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;624000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;805000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;841000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;692000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;992000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;561000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;134000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;194000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;264000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;482000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;515000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;666000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;485000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;27000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;990000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.804628" elapsed="0.006772"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.813210" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.811472" elapsed="0.001786"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.811452" elapsed="0.001829"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:11.843326" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:11.843374" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:11.813419" elapsed="0.029978"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:11.845196" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:11.843476" elapsed="0.001776"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.843457" elapsed="0.001820"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:11.845310" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:11.845504" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:11.845548" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 344 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:11.788618" elapsed="0.056952"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.847738" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.846141" elapsed="0.001642"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.846122" elapsed="0.001683"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.848382" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.847954" elapsed="0.000455"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.848927" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.848572" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:11.849005" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:11.849200" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:11.845785" elapsed="0.003440"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:11.849381" elapsed="0.000387"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:11.787984" elapsed="0.061848"/>
</kw>
<arg>f221.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:11.739812" elapsed="0.110076"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:11.732984" elapsed="0.117017"/>
</test>
<test id="s1-s3-s1-t112" name="Test Is Flow 222 Updated" line="287">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:11.860889" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f222.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f222.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:11.861030" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:11.860753" elapsed="0.000308"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:11.861604" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7e610&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:11.861227" elapsed="0.000405"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:11.862061" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:11.861783" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:11.862556" level="INFO">${flow_id} = 345</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:11.862253" elapsed="0.000333"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:11.863008" level="INFO">${flow_priority} = 222</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:11.862738" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:11.863704" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:11.863201" elapsed="0.000533"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.864241" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.863889" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.864800" level="INFO">${flow_id} = 345</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.864475" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.865340" level="INFO">${flow_priority} = 222</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.864995" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.865843" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.865532" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.866370" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.866037" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.866898" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7e610&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:11.866575" elapsed="0.000364"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:11.860425" elapsed="0.006568"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.867534" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.867156" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.867952" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;id&gt;345&lt;/id&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                   &lt;order&gt;0&lt;/order&gt;
                   &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.867714" elapsed="0.000292"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.875784" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:11.875485" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:11.881191" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=345?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=345?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:11.881575" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=345?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '433'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;345&lt;/id&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:11.881677" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:11.875939" elapsed="0.005763"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.882126" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.881860" elapsed="0.000312"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.884854" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;345&lt;/id&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.882315" elapsed="0.002615"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.887471" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.885026" elapsed="0.002512"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.884998" elapsed="0.002572"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:11.891328" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:11.891392" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:11.887808" elapsed="0.003616"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:11.893317" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:11.891533" elapsed="0.001839"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.891500" elapsed="0.001896"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:11.893429" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:11.893621" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:11.893665" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 345 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:11.875171" elapsed="0.018518"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.895832" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.894239" elapsed="0.001638"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.894222" elapsed="0.001677"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.896463" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.896047" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.896997" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:11.896651" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:11.897088" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:11.897267" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:11.893893" elapsed="0.003399"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:11.897447" elapsed="0.000380"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:11.874602" elapsed="0.023289"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.905624" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:11.905327" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:11.919982" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:11.920915" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;t... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:11.921590" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:11.905780" elapsed="0.015872"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.922710" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.922011" elapsed="0.000805"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:11.928278" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;247000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;316000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;624000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;805000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;841000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;692000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;992000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;561000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;134000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;194000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;264000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;482000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;515000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;666000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;485000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;27000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;990000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:11.923177" elapsed="0.007179"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:11.932661" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:11.930574" elapsed="0.002135"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:11.930476" elapsed="0.002256"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:12.016762" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:12.016828" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:11.932869" elapsed="0.083984"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:12.018835" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:12.016983" elapsed="0.001913"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:12.016949" elapsed="0.001974"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:12.018961" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:53:12.019206" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:12.019250" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 345 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:11.904935" elapsed="0.114337"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:12.021481" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:12.019894" elapsed="0.001632"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:12.019876" elapsed="0.001673"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.022178" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:12.021701" elapsed="0.000506"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.022766" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:12.022372" elapsed="0.000420"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:12.022843" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:12.023022" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:12.019530" elapsed="0.003517"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:12.023223" elapsed="0.000405"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:11.904303" elapsed="0.119389"/>
</kw>
<arg>f222.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:11.857167" elapsed="0.166585"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:11.850322" elapsed="0.173552"/>
</test>
<test id="s1-s3-s1-t113" name="Test Is Flow 223 Updated" line="289">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:12.034679" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f223.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f223.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:12.034848" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:12.034527" elapsed="0.000349"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:12.035466" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1c4f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:12.035029" elapsed="0.000467"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.035935" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.035651" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.036400" level="INFO">${flow_id} = 346</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.036129" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.036846" level="INFO">${flow_priority} = 223</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.036579" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:12.037586" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:12.037022" elapsed="0.000595"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.038123" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.037774" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.038805" level="INFO">${flow_id} = 346</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.038377" elapsed="0.000470"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.039343" level="INFO">${flow_priority} = 223</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.039000" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.039849" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.039537" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.040376" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.040042" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.040893" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1c4f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.040571" elapsed="0.000363"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:12.034189" elapsed="0.006800"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.041538" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:12.041157" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.041958" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;
        &lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;
    &lt;/match&gt;
    &lt;id&gt;346&lt;/id&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                   &lt;order&gt;0&lt;/order&gt;
                   &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.041718" elapsed="0.000295"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.049756" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:12.049450" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:12.055377" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=346?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=346?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.055858" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=346?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '547'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;346&lt;/id&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:12.055962" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:12.049915" elapsed="0.006072"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.056417" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.056163" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.058609" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;346&lt;/id&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.056604" elapsed="0.002068"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:12.060516" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:12.058774" elapsed="0.001791"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:12.058752" elapsed="0.001837"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:12.063215" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:12.063261" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:12.060728" elapsed="0.002556"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:12.065031" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:12.063357" elapsed="0.001743"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:12.063338" elapsed="0.001786"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:12.065158" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:12.065350" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:12.065394" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 346 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:12.049133" elapsed="0.016284"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:12.067636" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:12.065954" elapsed="0.001727"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:12.065937" elapsed="0.001766"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.068265" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:12.067850" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.068802" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:12.068453" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:12.068877" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:12.069058" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:12.065625" elapsed="0.003474"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:12.069256" elapsed="0.000385"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:12.048562" elapsed="0.021142"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.077587" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:12.077290" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:12.090448" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.090872" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;t... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:12.091205" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:12.077743" elapsed="0.013488"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.091647" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.091388" elapsed="0.000303"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.094093" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;247000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;316000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;624000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;805000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;841000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;692000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;992000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;561000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;134000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;194000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;264000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;482000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;515000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;666000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;485000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;27000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;990000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.091836" elapsed="0.003245"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:12.096878" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:12.095158" elapsed="0.001767"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:12.095137" elapsed="0.001811"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:12.126287" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:12.126335" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:12.097104" elapsed="0.029254"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:12.128159" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:12.126437" elapsed="0.001778"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:12.126418" elapsed="0.001822"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:12.128273" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:12.128469" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:12.128512" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 346 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:12.076900" elapsed="0.051635"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:12.130682" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:12.129099" elapsed="0.001628"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:12.129079" elapsed="0.001670"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.131339" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:12.130899" elapsed="0.000468"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.131889" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:12.131539" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:12.131964" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:12.132157" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:12.128749" elapsed="0.003433"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:12.132338" elapsed="0.000387"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:12.076291" elapsed="0.056496"/>
</kw>
<arg>f223.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:12.030936" elapsed="0.101908"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:12.024095" elapsed="0.108864"/>
</test>
<test id="s1-s3-s1-t114" name="Test Is Flow 224 Updated" line="291">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:12.143883" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f224.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f224.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:12.144023" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:12.143744" elapsed="0.000308"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:12.144604" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35b3d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:12.144219" elapsed="0.000414"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.145060" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.144785" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.145519" level="INFO">${flow_id} = 347</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.145251" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.145956" level="INFO">${flow_priority} = 224</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.145691" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:12.146694" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:12.146144" elapsed="0.000580"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.147223" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.146879" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.147780" level="INFO">${flow_id} = 347</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.147459" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.148315" level="INFO">${flow_priority} = 224</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.147972" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.148816" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.148505" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.149342" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.149008" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.149852" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35b3d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.149536" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:12.143418" elapsed="0.006529"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.150488" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:12.150109" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.150942" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;
        &lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;
    &lt;/match&gt;
    &lt;id&gt;347&lt;/id&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                   &lt;order&gt;0&lt;/order&gt;
                   &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.150701" elapsed="0.000298"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.158770" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:12.158452" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:12.164198" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=347?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=347?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.164675" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=347?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '607'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;347&lt;/id&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:12.164779" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:12.158926" elapsed="0.005887"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.165255" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.164971" elapsed="0.000329"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.167452" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;347&lt;/id&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.165442" elapsed="0.002097"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:12.169366" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:12.167611" elapsed="0.001803"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:12.167590" elapsed="0.001846"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:12.172184" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:12.172230" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:12.169573" elapsed="0.002684"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:12.174012" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:12.172334" elapsed="0.001747"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:12.172315" elapsed="0.001791"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:12.174140" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:12.174333" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:12.174377" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 347 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:12.158129" elapsed="0.016270"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:12.176531" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:12.174955" elapsed="0.001621"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:12.174938" elapsed="0.001660"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.177158" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:12.176744" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.177696" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:12.177348" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:12.177772" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:12.177948" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:12.174625" elapsed="0.003348"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:12.178142" elapsed="0.000413"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:12.157560" elapsed="0.021063"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.186397" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:12.186090" elapsed="0.000335"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:12.203704" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.204656" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;t... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:12.205378" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:12.186577" elapsed="0.018862"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.206400" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.205794" elapsed="0.000707"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.211568" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;247000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;316000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;624000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;805000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;841000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;692000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;992000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;561000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;134000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;194000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;264000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;482000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;515000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;666000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;485000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;27000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;990000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.206851" elapsed="0.005639"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:12.214302" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:12.212562" elapsed="0.001788"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:12.212542" elapsed="0.001830"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:12.242522" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:12.242598" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:12.214510" elapsed="0.028113"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:12.244443" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:12.242702" elapsed="0.001802"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:12.242683" elapsed="0.001851"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:12.244570" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:12.244766" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:12.244810" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 347 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:12.185701" elapsed="0.059131"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:12.246996" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:12.245409" elapsed="0.001632"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:12.245386" elapsed="0.001676"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.247630" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:12.247225" elapsed="0.000432"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.248189" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:12.247821" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:12.248265" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:12.248443" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:12.245050" elapsed="0.003418"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:12.248624" elapsed="0.000386"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:12.185088" elapsed="0.064000"/>
</kw>
<arg>f224.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:12.140161" elapsed="0.108986"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:12.133257" elapsed="0.116005"/>
</test>
<test id="s1-s3-s1-t115" name="Test Is Flow 225 Updated" line="293">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:12.260030" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f225.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f225.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:12.260184" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:12.259893" elapsed="0.000321"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:12.260747" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4db510&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:12.260364" elapsed="0.000410"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.261222" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.260926" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.261667" level="INFO">${flow_id} = 348</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.261398" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.262122" level="INFO">${flow_priority} = 225</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.261840" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:12.262861" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:12.262298" elapsed="0.000593"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.263395" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.263047" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.263952" level="INFO">${flow_id} = 348</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.263630" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.264520" level="INFO">${flow_priority} = 225</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.264176" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.265081" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.264716" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.265604" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.265284" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.266136" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4db510&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.265802" elapsed="0.000377"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:12.259567" elapsed="0.006668"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.266806" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:12.266390" elapsed="0.000447"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.267250" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;
        &lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;
    &lt;/match&gt;
    &lt;id&gt;348&lt;/id&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                   &lt;order&gt;0&lt;/order&gt;
                   &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.266990" elapsed="0.000317"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.276978" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:12.276679" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:12.283679" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=348?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=348?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.284166" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=348?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '587'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;348&lt;/id&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:12.284280" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:12.277151" elapsed="0.007155"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.284714" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.284463" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.286857" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;348&lt;/id&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.284899" elapsed="0.002046"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:12.288750" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:12.287016" elapsed="0.001782"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:12.286996" elapsed="0.001824"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:12.291752" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:12.291816" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:12.288957" elapsed="0.002891"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:12.294305" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:12.291949" elapsed="0.002432"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:12.291923" elapsed="0.002490"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:12.294459" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:53:12.294835" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:12.294896" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 348 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:12.276362" elapsed="0.018566"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:12.297156" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:12.295578" elapsed="0.001624"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:12.295560" elapsed="0.001664"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.297764" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:12.297369" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.298316" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:12.297952" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:12.298391" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:12.298580" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:12.295249" elapsed="0.003357"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:12.298765" elapsed="0.000400"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:12.275786" elapsed="0.023442"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.306994" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:12.306698" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:12.320634" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.321581" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;t... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:12.322225" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:12.307167" elapsed="0.015117"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.323300" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.322745" elapsed="0.000618"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.326978" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;247000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;316000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;624000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;805000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;841000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;692000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;992000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;561000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;134000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;194000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;264000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;482000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;515000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;666000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;485000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;27000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;990000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.323565" elapsed="0.004713"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:12.330816" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:12.328380" elapsed="0.002504"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:12.328352" elapsed="0.002563"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:12.359545" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:12.359592" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:12.331128" elapsed="0.028487"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:12.361395" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:12.359693" elapsed="0.001758"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:12.359674" elapsed="0.001801"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:12.361507" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:12.361701" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:12.361744" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 348 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:12.306290" elapsed="0.055477"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:12.363931" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:12.362333" elapsed="0.001642"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:12.362314" elapsed="0.001683"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.364565" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:12.364159" elapsed="0.000433"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.365129" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:12.364755" elapsed="0.000400"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:12.365205" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:12.365382" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:12.361979" elapsed="0.003428"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:12.365562" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:12.305667" elapsed="0.060343"/>
</kw>
<arg>f225.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:12.256289" elapsed="0.109791"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:12.249441" elapsed="0.116753"/>
</test>
<test id="s1-s3-s1-t116" name="Test Is Flow 550 Updated" line="295">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:12.377010" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f550.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f550.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:12.377159" level="INFO">${data} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;
    &lt;match&gt;
   ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:12.376875" elapsed="0.000313"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:12.377732" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc359c10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:12.377339" elapsed="0.000420"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.378207" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.377913" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.378692" level="INFO">${flow_id} = 550</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.378384" elapsed="0.000334"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.379156" level="INFO">${flow_priority} = 550</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.378871" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:12.379927" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;f...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:12.379333" elapsed="0.000624"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.380463" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.380130" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.381022" level="INFO">${flow_id} = 550</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.380698" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.381559" level="INFO">${flow_priority} = 550</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.381234" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.382082" level="INFO">${data} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;
    &lt;match&gt;
   ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.381750" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.382621" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;f...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.382281" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.383167" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc359c10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.382828" elapsed="0.000381"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:12.376548" elapsed="0.006717"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.383797" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;f...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:12.383416" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.384242" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;
            &lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;
            &lt;extension&gt;
                &lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;
                    &lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;
                &lt;/nxm-nx-tun-ipv4-src&gt;
            &lt;/extension&gt;
        &lt;/extension-list&gt;
    &lt;/match&gt;
    &lt;id&gt;550&lt;/id&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.383979" elapsed="0.000323"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.392101" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:12.391787" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:12.399808" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=550?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=550?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.400390" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=550?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '752'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:53:12.400497" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:12.392262" elapsed="0.008260"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.400931" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.400680" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.403218" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.401136" elapsed="0.002228"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:12.405895" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:12.403464" elapsed="0.002498"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:12.403436" elapsed="0.002557"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:53:12.409966" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:12.410029" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:53:12.406207" elapsed="0.003855"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:12.412226" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:12.410187" elapsed="0.002095"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:12.410160" elapsed="0.002146"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:12.412339" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:12.412530" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:53:12.412574" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 550 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:12.391473" elapsed="0.021123"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:12.414731" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:12.413156" elapsed="0.001621"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:12.413138" elapsed="0.001661"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.415357" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:12.414945" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.415891" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:12.415547" elapsed="0.000370"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:12.415967" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:12.416165" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:12.412804" elapsed="0.003386"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:12.416346" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:12.390906" elapsed="0.025884"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.426526" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:12.426226" elapsed="0.000347"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:12.435761" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.436403" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;t... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:12.437047" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:12.426707" elapsed="0.010430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.438059" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.437496" elapsed="0.000696"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.443722" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;134&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf11&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;332&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;730000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;133&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;61000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf10&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;132&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf9&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;131&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;137000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf8&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;130&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf7&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;329&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;766000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;328&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;129&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;209000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;327&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;128&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;247000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf5&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;326&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;127&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf4&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;325&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;126&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;316000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf3&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;324&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;125&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf2&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;124&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;390000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf1&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;168&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;410000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf45&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;701000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;343&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;342&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/clear-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;624000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;770000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;341&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;657000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;142&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;805000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf19&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;141&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;841000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf18&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;140&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf17&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;139&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf16&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;337&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;692000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;138&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;953000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf15&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;137&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;992000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf14&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;233&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;232&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf109&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;154&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;561000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf31&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;231&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;134000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf108&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;550&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;550&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;&lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;&lt;extension&gt;&lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;&lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;&lt;/nxm-nx-tun-ipv4-src&gt;&lt;/extension&gt;&lt;/extension-list&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;230&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;166000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf107&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;229&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;194000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf106&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;228&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;227000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf105&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;227&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;264000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf104&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;348&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;225&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo225&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;&lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;226&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;299000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf103&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;347&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;224&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo224&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;&lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;148&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf25&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;225&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf102&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;346&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;223&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo223&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;&lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;482000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;147&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;632000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf24&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;224&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf101&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;345&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;222&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;flow-name&gt;Foo222&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;0&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;515000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;666000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;344&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;221&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;221&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;166&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;446000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf43&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;161&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;out_port&gt;4294967295&lt;/out_port&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;485000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf38&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;out_group&gt;4294967295&lt;/out_group&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;159&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf36&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;236&lt;/id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;27000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;openflow:1:0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;279&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;cookie&gt;156&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;drop-action/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;990000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;priority&gt;156&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf156&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;barrier&gt;false&lt;/barrier&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;57&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.438512" elapsed="0.007294"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:12.448436" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:12.445970" elapsed="0.002514"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:12.445925" elapsed="0.002581"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:12.475272" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:12.475318" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:12.448645" elapsed="0.026697"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:12.477200" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:12.475421" elapsed="0.001835"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:12.475401" elapsed="0.001879"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:12.477312" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:12.477507" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:12.477551" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 550 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:12.425832" elapsed="0.051741"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:12.479725" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:12.478139" elapsed="0.001631"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:12.478121" elapsed="0.001671"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.480359" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:12.479940" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.480898" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:12.480549" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:12.480973" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:12.481167" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:12.477790" elapsed="0.003402"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:12.481349" elapsed="0.000393"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:12.425216" elapsed="0.056589"/>
</kw>
<arg>f550.xml</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:12.373274" elapsed="0.108588"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:12.366456" elapsed="0.115521"/>
</test>
<test id="s1-s3-s1-t117" name="Test Delete Flows Group 0" line="297">
<for flavor="IN">
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.483126" level="INFO">f1.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.482860" elapsed="0.000312"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:12.486668" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f1.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f1.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:12.486808" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:12.486509" elapsed="0.000328"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:12.487413" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6a390&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:12.486992" elapsed="0.000449"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.487881" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.487597" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.488364" level="INFO">${flow_id} = 124</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.488086" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.488820" level="INFO">${flow_priority} = 1</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.488543" elapsed="0.000302"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:12.489609" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:12.488997" elapsed="0.000642"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.490183" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.489797" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.490738" level="INFO">${flow_id} = 124</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.490386" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.491290" level="INFO">${flow_priority} = 1</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.490938" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.491797" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.491486" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.492326" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.491995" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.492840" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6a390&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.492526" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:12.486171" elapsed="0.006768"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:12.507429" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=124 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=124 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.507474" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=124 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.507566" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:12.500063" elapsed="0.007528"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.509669" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.507749" elapsed="0.001963"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:12.499678" elapsed="0.010093"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:12.493105" elapsed="0.016718"/>
</kw>
<var name="${flowfile}">f1.xml</var>
<status status="PASS" start="2026-05-25T01:53:12.482730" elapsed="0.027131"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.510355" level="INFO">f2.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.510107" elapsed="0.000292"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:12.515047" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f2.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f2.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:12.515243" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:12.514862" elapsed="0.000420"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:12.516024" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5accb4df80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:12.515491" elapsed="0.000572"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.516682" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.516298" elapsed="0.000419"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.517327" level="INFO">${flow_id} = 125</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.516930" elapsed="0.000432"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.517945" level="INFO">${flow_priority} = 2</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.517571" elapsed="0.000409"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:12.519058" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:12.518211" elapsed="0.000924"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.519634" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.519317" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.520194" level="INFO">${flow_id} = 125</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.519863" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.520703" level="INFO">${flow_priority} = 2</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.520388" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.521212" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.520894" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.521714" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.521406" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.522234" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5accb4df80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.521908" elapsed="0.000367"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:12.514382" elapsed="0.007948"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:12.535475" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=125 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=125 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.535519" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=125 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.535608" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:12.529223" elapsed="0.006412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.537875" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.535789" elapsed="0.002129"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:12.528823" elapsed="0.009153"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:12.522477" elapsed="0.015550"/>
</kw>
<var name="${flowfile}">f2.xml</var>
<status status="PASS" start="2026-05-25T01:53:12.509960" elapsed="0.028103"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.538549" level="INFO">f3.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.538301" elapsed="0.000341"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:12.543322" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f3.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f3.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:12.543495" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:12.543136" elapsed="0.000399"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:12.544304" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4db560&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:12.543745" elapsed="0.000598"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.544938" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.544556" elapsed="0.000417"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.545590" level="INFO">${flow_id} = 126</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.545214" elapsed="0.000411"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.546231" level="INFO">${flow_priority} = 3</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.545831" elapsed="0.000436"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:12.547273" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:12.546473" elapsed="0.000831"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.547772" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.547457" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.548335" level="INFO">${flow_id} = 126</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.548001" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.548841" level="INFO">${flow_priority} = 3</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.548529" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.549349" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.549032" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.549851" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.549544" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.550369" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4db560&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.550046" elapsed="0.000364"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:12.542656" elapsed="0.007809"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:12.564365" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=126 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=126 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.564409" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=126 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.564497" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:12.557353" elapsed="0.007169"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.569452" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.564677" elapsed="0.004835"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:12.556960" elapsed="0.012631"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:12.550623" elapsed="0.019040"/>
</kw>
<var name="${flowfile}">f3.xml</var>
<status status="PASS" start="2026-05-25T01:53:12.538175" elapsed="0.031538"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.570398" level="INFO">f4.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.570024" elapsed="0.000436"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:12.575285" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f4.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f4.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:12.575430" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:12.575124" elapsed="0.000334"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:12.576002" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5accba98a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:12.575608" elapsed="0.000423"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.576478" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.576199" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.576924" level="INFO">${flow_id} = 127</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.576654" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.577389" level="INFO">${flow_priority} = 4</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.577119" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:12.578181" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:12.577562" elapsed="0.000650"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.578693" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.578365" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.579246" level="INFO">${flow_id} = 127</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.578921" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.579748" level="INFO">${flow_priority} = 4</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.579437" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.580266" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.579938" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.580764" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.580460" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.581283" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5accba98a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.580958" elapsed="0.000366"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:12.574607" elapsed="0.006771"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:12.595282" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=127 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=127 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.595327" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=127 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.595416" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:12.588252" elapsed="0.007190"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.598313" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.595598" elapsed="0.002775"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:12.587857" elapsed="0.010595"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:12.581524" elapsed="0.017001"/>
</kw>
<var name="${flowfile}">f4.xml</var>
<status status="PASS" start="2026-05-25T01:53:12.569846" elapsed="0.028751"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.599284" level="INFO">f5.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.598916" elapsed="0.000429"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:12.604134" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f5.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f5.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:12.604319" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:12.603929" elapsed="0.000430"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:12.605149" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc358fe0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:12.604569" elapsed="0.000621"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.605791" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.605404" elapsed="0.000423"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.606440" level="INFO">${flow_id} = 128</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.606038" elapsed="0.000438"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.607136" level="INFO">${flow_priority} = 5</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.606717" elapsed="0.000452"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:12.607962" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:12.607333" elapsed="0.000659"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.608486" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.608167" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.608987" level="INFO">${flow_id} = 128</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.608680" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.609546" level="INFO">${flow_priority} = 5</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.609231" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.610038" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.609737" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.610555" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.610249" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.611090" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc358fe0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.610764" elapsed="0.000369"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:12.603469" elapsed="0.007719"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:12.627799" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=128 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=128 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.627899" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=128 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.628137" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:12.617999" elapsed="0.010199"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.633156" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.628549" elapsed="0.004704"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:12.617622" elapsed="0.015757"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:12.611336" elapsed="0.022156"/>
</kw>
<var name="${flowfile}">f5.xml</var>
<status status="PASS" start="2026-05-25T01:53:12.598737" elapsed="0.034838"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.634750" level="INFO">f6.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.634115" elapsed="0.000737"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:12.638449" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f6.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f6.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:12.638591" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:12.638317" elapsed="0.000304"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:12.639180" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4db100&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:12.638770" elapsed="0.000438"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.639636" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.639361" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.640101" level="INFO">${flow_id} = 129</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.639813" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.640551" level="INFO">${flow_priority} = 6</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.640279" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:12.641361" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:12.640725" elapsed="0.000665"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.641862" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.641547" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.642381" level="INFO">${flow_id} = 129</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.642057" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.642940" level="INFO">${flow_priority} = 6</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.642625" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.643457" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.643156" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.643959" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.643653" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.644485" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4db100&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.644178" elapsed="0.000349"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:12.637971" elapsed="0.006610"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:12.658838" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=129 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=129 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.658882" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=129 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.658970" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:12.651460" elapsed="0.007536"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.662112" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.659281" elapsed="0.002894"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:12.651077" elapsed="0.011177"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:12.644729" elapsed="0.017596"/>
</kw>
<var name="${flowfile}">f6.xml</var>
<status status="PASS" start="2026-05-25T01:53:12.633787" elapsed="0.028589"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.663054" level="INFO">f7.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.662708" elapsed="0.000433"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:12.667893" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f7.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f7.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:12.668088" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:12.667708" elapsed="0.000422"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:12.668907" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3589f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:12.668341" elapsed="0.000604"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.669564" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.669179" elapsed="0.000421"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.670206" level="INFO">${flow_id} = 130</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.669810" elapsed="0.000432"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.670863" level="INFO">${flow_priority} = 7</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.670452" elapsed="0.000446"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:12.671862" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:12.671152" elapsed="0.000740"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.672380" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.672048" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.672882" level="INFO">${flow_id} = 130</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.672576" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.673445" level="INFO">${flow_priority} = 7</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.673128" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.673940" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.673639" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.674465" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.674158" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.674980" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3589f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.674672" elapsed="0.000349"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:12.667243" elapsed="0.007848"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:12.689580" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=130 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=130 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.689625" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=130 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.689713" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:12.681918" elapsed="0.007822"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.693181" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.689895" elapsed="0.003385"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:12.681540" elapsed="0.011867"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:12.675243" elapsed="0.018277"/>
</kw>
<var name="${flowfile}">f7.xml</var>
<status status="PASS" start="2026-05-25T01:53:12.662510" elapsed="0.031092"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.694701" level="INFO">f8.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.694127" elapsed="0.000673"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:12.702487" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f8.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f8.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:12.702816" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:12.702187" elapsed="0.000694"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:12.703647" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe69580&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:12.703227" elapsed="0.000448"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.704122" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.703829" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.704574" level="INFO">${flow_id} = 131</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.704300" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.705033" level="INFO">${flow_priority} = 8</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.704750" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:12.705950" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:12.705224" elapsed="0.000756"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.706474" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.706157" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.706988" level="INFO">${flow_id} = 131</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.706681" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.707509" level="INFO">${flow_priority} = 8</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.707196" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.708044" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.707741" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.708571" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.708261" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.709097" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe69580&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.708769" elapsed="0.000371"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:12.701418" elapsed="0.007777"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:12.723295" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=131 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=131 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.723340" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=131 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.723429" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:12.716085" elapsed="0.007369"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.725643" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.723609" elapsed="0.002078"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:12.715689" elapsed="0.010055"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:12.709345" elapsed="0.016450"/>
</kw>
<var name="${flowfile}">f8.xml</var>
<status status="PASS" start="2026-05-25T01:53:12.693813" elapsed="0.032018"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.726323" level="INFO">f9.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.726053" elapsed="0.000314"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:12.730952" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f9.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f9.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:12.731159" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:12.730765" elapsed="0.000435"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:12.731983" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc307f10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:12.731408" elapsed="0.000614"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.732644" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.732256" elapsed="0.000424"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.733294" level="INFO">${flow_id} = 132</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.732891" elapsed="0.000439"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.733918" level="INFO">${flow_priority} = 9</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.733541" elapsed="0.000413"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:12.735264" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:12.734188" elapsed="0.001106"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.735769" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.735453" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.736288" level="INFO">${flow_id} = 132</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.735964" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.736791" level="INFO">${flow_priority} = 9</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.736481" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.737359" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.737024" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.737867" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.737557" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.738390" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc307f10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.738065" elapsed="0.000367"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:12.730270" elapsed="0.008217"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:12.754277" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=132 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=132 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.754322" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=132 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.754410" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:12.745369" elapsed="0.009066"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.758763" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.754626" elapsed="0.004234"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:12.744968" elapsed="0.014021"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:12.738647" elapsed="0.020512"/>
</kw>
<var name="${flowfile}">f9.xml</var>
<status status="PASS" start="2026-05-25T01:53:12.725926" elapsed="0.033324"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.760339" level="INFO">f10.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.759749" elapsed="0.000689"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:12.765388" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f10.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f10.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:12.765515" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:12.765256" elapsed="0.000288"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:12.766126" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc304b80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:12.765693" elapsed="0.000462"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.766597" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.766307" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.767044" level="INFO">${flow_id} = 133</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.766775" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.767507" level="INFO">${flow_priority} = 10</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.767236" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:12.768409" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:12.767680" elapsed="0.000759"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.768908" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.768594" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.769428" level="INFO">${flow_id} = 133</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.769118" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.769929" level="INFO">${flow_priority} = 10</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.769619" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.770482" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.770173" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.771005" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.770691" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.771528" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc304b80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.771218" elapsed="0.000351"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:12.764907" elapsed="0.006718"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:12.784682" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=133 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=133 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.784744" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=133 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.784867" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:12.778498" elapsed="0.006404"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.788008" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.785149" elapsed="0.002943"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:12.778115" elapsed="0.010060"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:12.771774" elapsed="0.016473"/>
</kw>
<var name="${flowfile}">f10.xml</var>
<status status="PASS" start="2026-05-25T01:53:12.759465" elapsed="0.028835"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.788959" level="INFO">f11.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.788613" elapsed="0.000407"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:12.793782" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f11.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f11.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:12.793957" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:12.793598" elapsed="0.000398"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:12.794860" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc307ab0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:12.794228" elapsed="0.000672"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.795458" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.795160" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.795906" level="INFO">${flow_id} = 134</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.795636" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.796369" level="INFO">${flow_priority} = 11</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.796096" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:12.797275" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:12.796546" elapsed="0.000760"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.797777" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.797463" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.798299" level="INFO">${flow_id} = 134</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.797974" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.798815" level="INFO">${flow_priority} = 11</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.798493" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.799324" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.799007" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.799868" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.799560" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.800396" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc307ab0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.800085" elapsed="0.000352"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:12.793135" elapsed="0.007357"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:12.813488" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=134 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=134 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.813533" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=134 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.813624" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:12.807350" elapsed="0.006299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.816261" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.813807" elapsed="0.002514"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:12.806950" elapsed="0.009452"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:12.800641" elapsed="0.015834"/>
</kw>
<var name="${flowfile}">f11.xml</var>
<status status="PASS" start="2026-05-25T01:53:12.788435" elapsed="0.028092"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.817243" level="INFO">f14.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.816857" elapsed="0.000450"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:12.822164" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f14.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f14.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:12.822354" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:12.821957" elapsed="0.000437"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:12.823324" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ecb80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:12.822704" elapsed="0.000648"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.823791" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.823508" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.824263" level="INFO">${flow_id} = 137</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.823970" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.824718" level="INFO">${flow_priority} = 14</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.824443" elapsed="0.000301"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:12.825655" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:12.824897" elapsed="0.000789"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.826192" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.825846" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.826728" level="INFO">${flow_id} = 137</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.826394" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.827257" level="INFO">${flow_priority} = 14</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.826925" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.827760" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.827455" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.828343" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.828007" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.828860" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ecb80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.828543" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:12.821485" elapsed="0.007472"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:12.842265" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=137 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=137 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.842309" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=137 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.842399" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:12.836055" elapsed="0.006370"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.844701" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.842600" elapsed="0.002145"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:12.835667" elapsed="0.009136"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:12.829124" elapsed="0.015731"/>
</kw>
<var name="${flowfile}">f14.xml</var>
<status status="PASS" start="2026-05-25T01:53:12.816662" elapsed="0.028230"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.845389" level="INFO">f15.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.845134" elapsed="0.000299"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:12.848845" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f15.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f15.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:12.848971" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:12.848711" elapsed="0.000289"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:12.849572" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ef150&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:12.849168" elapsed="0.000432"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.850032" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.849755" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.850505" level="INFO">${flow_id} = 138</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.850230" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.850997" level="INFO">${flow_priority} = 15</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.850719" elapsed="0.000303"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:12.852222" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:12.851267" elapsed="0.000998"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.852936" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.852487" elapsed="0.000507"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.853686" level="INFO">${flow_id} = 138</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.853236" elapsed="0.000507"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.854434" level="INFO">${flow_priority} = 15</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.853964" elapsed="0.000527"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.855321" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.854779" elapsed="0.000607"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.856131" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.855664" elapsed="0.000534"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.856935" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ef150&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.856487" elapsed="0.000510"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:12.848377" elapsed="0.008726"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:12.870534" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=138 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=138 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.870579" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=138 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.870697" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:12.864618" elapsed="0.006105"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.872932" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.870879" elapsed="0.002097"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:12.864237" elapsed="0.008797"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:12.857319" elapsed="0.015793"/>
</kw>
<var name="${flowfile}">f15.xml</var>
<status status="PASS" start="2026-05-25T01:53:12.844987" elapsed="0.028163"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.873622" level="INFO">f16.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.873374" elapsed="0.000293"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:12.877102" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f16.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f16.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:12.877240" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:12.876955" elapsed="0.000314"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:12.877815" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc092020&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:12.877418" elapsed="0.000424"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.878287" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.877993" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.878784" level="INFO">${flow_id} = 139</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.878464" elapsed="0.000346"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.879383" level="INFO">${flow_priority} = 16</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.878962" elapsed="0.000457"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:12.880547" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:12.879627" elapsed="0.000962"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.881269" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.880806" elapsed="0.000521"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.881975" level="INFO">${flow_id} = 139</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.881543" elapsed="0.000489"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.882722" level="INFO">${flow_priority} = 16</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.882267" elapsed="0.000513"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.883435" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.882991" elapsed="0.000507"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.884227" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.883764" elapsed="0.000529"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.884940" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc092020&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.884508" elapsed="0.000490"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:12.876622" elapsed="0.008473"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:12.898483" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.898528" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.898631" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:12.892598" elapsed="0.006062"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.901662" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.898815" elapsed="0.002908"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:12.892219" elapsed="0.009583"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:12.885308" elapsed="0.016566"/>
</kw>
<var name="${flowfile}">f16.xml</var>
<status status="PASS" start="2026-05-25T01:53:12.873246" elapsed="0.028679"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.902621" level="INFO">f17.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.902264" elapsed="0.000420"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:12.907441" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f17.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f17.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:12.907568" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:12.907308" elapsed="0.000289"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:12.908170" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ec040&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:12.907748" elapsed="0.000450"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.908628" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.908350" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.909093" level="INFO">${flow_id} = 140</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.908807" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.909545" level="INFO">${flow_priority} = 17</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.909274" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:12.910365" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:12.909720" elapsed="0.000676"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.910898" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.910554" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.911435" level="INFO">${flow_id} = 140</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.911126" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.911940" level="INFO">${flow_priority} = 17</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.911629" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.912457" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.912155" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.912999" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.912653" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.913528" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ec040&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.913217" elapsed="0.000352"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:12.906841" elapsed="0.006782"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:12.926774" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=140 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=140 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.926819" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=140 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.926906" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:12.920540" elapsed="0.006392"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.929827" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.927112" elapsed="0.002759"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:12.920160" elapsed="0.009768"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:12.913773" elapsed="0.016205"/>
</kw>
<var name="${flowfile}">f17.xml</var>
<status status="PASS" start="2026-05-25T01:53:12.902061" elapsed="0.027955"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.930510" level="INFO">f18.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.930261" elapsed="0.000293"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:12.935256" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f18.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f18.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:12.935445" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:12.935050" elapsed="0.000436"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:12.936282" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bd670&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:12.935697" elapsed="0.000624"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.936924" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.936540" elapsed="0.000420"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.937576" level="INFO">${flow_id} = 141</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.937197" elapsed="0.000415"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.938225" level="INFO">${flow_priority} = 18</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.937825" elapsed="0.000435"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:12.939309" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:12.938469" elapsed="0.000871"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.939812" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.939496" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.940331" level="INFO">${flow_id} = 141</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.940006" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.940834" level="INFO">${flow_priority} = 18</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.940523" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.941413" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.941026" elapsed="0.000435"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.941921" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.941614" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.942495" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bd670&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.942181" elapsed="0.000355"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:12.934548" elapsed="0.008062"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:12.956503" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=141 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=141 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.956548" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=141 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.956637" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:12.949473" elapsed="0.007190"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.958901" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.956820" elapsed="0.002124"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:12.949094" elapsed="0.009908"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:12.942770" elapsed="0.016329"/>
</kw>
<var name="${flowfile}">f18.xml</var>
<status status="PASS" start="2026-05-25T01:53:12.930133" elapsed="0.029034"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.959849" level="INFO">f19.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.959503" elapsed="0.000407"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:12.964682" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f19.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f19.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:12.964855" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:12.964498" elapsed="0.000396"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:12.965655" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4becf0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:12.965124" elapsed="0.000569"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.966314" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.965905" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.966992" level="INFO">${flow_id} = 142</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.966562" elapsed="0.000470"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:12.967543" level="INFO">${flow_priority} = 19</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:12.967274" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:12.968259" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:12.967715" elapsed="0.000574"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.968758" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.968443" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.969278" level="INFO">${flow_id} = 142</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.968951" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.969781" level="INFO">${flow_priority} = 19</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.969469" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.970290" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.969972" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.970808" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.970484" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.971373" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4becf0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:12.971042" elapsed="0.000372"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:12.964021" elapsed="0.007448"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:12.991399" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=142 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=142 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.991464" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=142 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:12.991589" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:12.978695" elapsed="0.012929"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.994514" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.991846" elapsed="0.002728"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:12.978203" elapsed="0.016472"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:12.971617" elapsed="0.023130"/>
</kw>
<var name="${flowfile}">f19.xml</var>
<status status="PASS" start="2026-05-25T01:53:12.959324" elapsed="0.035475"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:12.995482" level="INFO">f20.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:12.995134" elapsed="0.000410"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.000483" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f20.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f20.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.000658" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.000299" elapsed="0.000399"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.001462" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bee30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.000908" elapsed="0.000593"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.002117" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.001712" elapsed="0.000444"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.002781" level="INFO">${flow_id} = 143</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.002368" elapsed="0.000449"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.003320" level="INFO">${flow_priority} = 20</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.003029" elapsed="0.000316"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.004029" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.003494" elapsed="0.000565"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.004544" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.004231" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.005046" level="INFO">${flow_id} = 143</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.004737" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.005568" level="INFO">${flow_priority} = 20</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.005257" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.006058" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.005759" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.006573" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.006269" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.007168" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bee30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.006834" elapsed="0.000377"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:12.999813" elapsed="0.007454"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.020783" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=143 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=143 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.020829" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=143 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.020926" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.014184" elapsed="0.006767"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.023108" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.021133" elapsed="0.002037"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.013791" elapsed="0.009458"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.007416" elapsed="0.015903"/>
</kw>
<var name="${flowfile}">f20.xml</var>
<status status="PASS" start="2026-05-25T01:53:12.994935" elapsed="0.028436"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.024041" level="INFO">f21.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.023686" elapsed="0.000462"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.028922" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.029116" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.028738" elapsed="0.000421"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.029929" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4be200&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.029368" elapsed="0.000601"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.030628" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.030215" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.031247" level="INFO">${flow_id} = 144</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.030879" elapsed="0.000394"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.031689" level="INFO">${flow_priority} = 21</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.031422" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.032706" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.031861" elapsed="0.000876"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.033224" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.032892" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.033728" level="INFO">${flow_id} = 144</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.033420" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.034251" level="INFO">${flow_priority} = 21</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.033919" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.034756" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.034444" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.035272" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.034950" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.035818" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4be200&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.035505" elapsed="0.000355"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.028277" elapsed="0.007637"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.049590" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.049635" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.049731" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.042823" elapsed="0.006934"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.052511" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.049914" elapsed="0.002657"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.042415" elapsed="0.010235"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.036062" elapsed="0.016658"/>
</kw>
<var name="${flowfile}">f21.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.023506" elapsed="0.029265"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.053452" level="INFO">f22.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.053102" elapsed="0.000410"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.058379" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f22.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f22.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.058557" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.058191" elapsed="0.000418"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.059415" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3eda80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.058823" elapsed="0.000630"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.060050" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.059666" elapsed="0.000441"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.060697" level="INFO">${flow_id} = 145</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.060322" elapsed="0.000410"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.061369" level="INFO">${flow_priority} = 22</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.060942" elapsed="0.000462"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.062563" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.061612" elapsed="0.001024"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.063253" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.062865" elapsed="0.000429"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.063752" level="INFO">${flow_id} = 145</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.063446" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.064266" level="INFO">${flow_priority} = 22</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.063940" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.064756" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.064457" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.065288" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.064953" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.065832" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3eda80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.065520" elapsed="0.000354"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.057709" elapsed="0.008219"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.079769" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=145 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=145 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.079813" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=145 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.079909" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.072994" elapsed="0.006941"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.082856" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.080178" elapsed="0.002737"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.072613" elapsed="0.010381"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.066092" elapsed="0.016994"/>
</kw>
<var name="${flowfile}">f22.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.052903" elapsed="0.030239"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.083798" level="INFO">f23.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.083454" elapsed="0.000406"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.088647" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f23.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f23.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.088834" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.088461" elapsed="0.000414"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.089676" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ec0e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.089104" elapsed="0.000610"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.090337" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.089927" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.091026" level="INFO">${flow_id} = 146</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.090585" elapsed="0.000501"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.091525" level="INFO">${flow_priority} = 23</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.091256" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.092425" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.091703" elapsed="0.000752"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.092923" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.092607" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.093441" level="INFO">${flow_id} = 146</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.093132" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.093943" level="INFO">${flow_priority} = 23</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.093632" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.094459" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.094155" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.094973" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.094665" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.095542" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ec0e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.095185" elapsed="0.000399"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.087980" elapsed="0.007659"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.110284" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=146 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=146 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.110330" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=146 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.110420" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.102500" elapsed="0.007945"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.114894" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.110631" elapsed="0.004362"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.102119" elapsed="0.013035"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.095787" elapsed="0.019485"/>
</kw>
<var name="${flowfile}">f23.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.083276" elapsed="0.032077"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.116450" level="INFO">f24.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.115854" elapsed="0.000696"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.121419" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f24.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f24.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.121543" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.121286" elapsed="0.000286"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.122119" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3068e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.121722" elapsed="0.000426"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.122576" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.122301" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.123038" level="INFO">${flow_id} = 147</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.122767" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.123501" level="INFO">${flow_priority} = 24</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.123231" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.124215" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.123676" elapsed="0.000569"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.124714" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.124399" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.125230" level="INFO">${flow_id} = 147</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.124908" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.125733" level="INFO">${flow_priority} = 24</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.125422" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.126241" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.125924" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.126758" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.126438" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.127279" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3068e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.126955" elapsed="0.000401"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.120938" elapsed="0.006474"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.141060" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=147 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=147 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.141150" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=147 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.141276" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.134322" elapsed="0.006989"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.144224" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.141529" elapsed="0.002755"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.133930" elapsed="0.010433"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.127561" elapsed="0.016873"/>
</kw>
<var name="${flowfile}">f24.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.115566" elapsed="0.028919"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.145168" level="INFO">f25.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.144796" elapsed="0.000436"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.150367" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f25.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f25.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.150541" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.150177" elapsed="0.000404"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.151430" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3eef70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.150827" elapsed="0.000642"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.152088" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.151682" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.152718" level="INFO">${flow_id} = 148</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.152340" elapsed="0.000413"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.153365" level="INFO">${flow_priority} = 25</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.152963" elapsed="0.000437"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.154658" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.153609" elapsed="0.001092"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.155332" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.154921" elapsed="0.000453"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.155837" level="INFO">${flow_id} = 148</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.155531" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.156357" level="INFO">${flow_priority} = 25</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.156029" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.156853" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.156553" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.157378" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.157053" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.157884" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3eef70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.157574" elapsed="0.000385"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.149584" elapsed="0.008432"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.170796" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=148 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=148 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.170842" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=148 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.170938" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.164892" elapsed="0.006072"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.173043" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.171150" elapsed="0.001950"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.164514" elapsed="0.008644"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.158181" elapsed="0.015028"/>
</kw>
<var name="${flowfile}">f25.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.144617" elapsed="0.028629"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.173719" level="INFO">f31.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.173471" elapsed="0.000291"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.178187" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f31.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f31.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.178368" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.177971" elapsed="0.000437"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.179224" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc304450&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.178643" elapsed="0.000621"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.179863" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.179477" elapsed="0.000421"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.180517" level="INFO">${flow_id} = 154</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.180136" elapsed="0.000416"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.181233" level="INFO">${flow_priority} = 31</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.180762" elapsed="0.000508"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.182555" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.181481" elapsed="0.001117"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.183294" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.182870" elapsed="0.000465"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.183798" level="INFO">${flow_id} = 154</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.183491" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.184320" level="INFO">${flow_priority} = 31</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.183991" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.184813" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.184514" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.185334" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.185007" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.185839" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc304450&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.185529" elapsed="0.000352"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.177455" elapsed="0.008515"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.199265" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=154 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=154 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.199310" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=154 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.199405" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.192855" elapsed="0.006576"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.201483" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.199587" elapsed="0.001938"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.192477" elapsed="0.009105"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.186134" elapsed="0.015499"/>
</kw>
<var name="${flowfile}">f31.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.173342" elapsed="0.028328"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.202159" level="INFO">f36.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.201894" elapsed="0.000310"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.206506" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f36.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f36.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.206708" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.206319" elapsed="0.000432"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.207533" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ec310&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.206963" elapsed="0.000610"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.208192" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.207785" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.208818" level="INFO">${flow_id} = 159</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.208442" elapsed="0.000411"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.209469" level="INFO">${flow_priority} = 36</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.209089" elapsed="0.000416"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.210535" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.209715" elapsed="0.000863"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.211271" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.210835" elapsed="0.000478"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.211776" level="INFO">${flow_id} = 159</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.211468" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.212304" level="INFO">${flow_priority} = 36</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.211969" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.212796" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.212496" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.213317" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.212992" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.213819" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ec310&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.213513" elapsed="0.000347"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.205836" elapsed="0.008114"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.227194" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=159 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=159 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.227239" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=159 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.227335" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.221026" elapsed="0.006335"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.229411" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.227517" elapsed="0.001936"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.220645" elapsed="0.008866"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.214123" elapsed="0.015440"/>
</kw>
<var name="${flowfile}">f36.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.201766" elapsed="0.027835"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.230087" level="INFO">f38.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.229825" elapsed="0.000308"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.234578" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f38.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f38.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.234779" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.234393" elapsed="0.000427"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.235594" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc306430&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.235028" elapsed="0.000605"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.236252" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.235842" elapsed="0.000447"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.236876" level="INFO">${flow_id} = 161</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.236501" elapsed="0.000410"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.237519" level="INFO">${flow_priority} = 38</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.237142" elapsed="0.000412"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.238648" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.237762" elapsed="0.000932"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.239323" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.238913" elapsed="0.000451"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.239824" level="INFO">${flow_id} = 161</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.239519" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.240343" level="INFO">${flow_priority} = 38</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.240015" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.240833" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.240536" elapsed="0.000341"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.241347" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.241028" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.241846" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc306430&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.241542" elapsed="0.000344"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.233906" elapsed="0.008034"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.259571" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=161 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=161 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.259676" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=161 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.259881" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.248915" elapsed="0.011025"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.265117" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.260369" elapsed="0.004848"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.248534" elapsed="0.016812"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.242145" elapsed="0.023315"/>
</kw>
<var name="${flowfile}">f38.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.229698" elapsed="0.035845"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.266640" level="INFO">f43.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.266041" elapsed="0.000698"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.272530" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f43.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f43.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.272657" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.272397" elapsed="0.000289"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.273266" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1c630&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.272836" elapsed="0.000457"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.273723" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.273447" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.274189" level="INFO">${flow_id} = 166</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.273902" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.274665" level="INFO">${flow_priority} = 43</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.274364" elapsed="0.000334"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.275505" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.274849" elapsed="0.000686"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.276005" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.275689" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.276528" level="INFO">${flow_id} = 166</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.276220" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.277033" level="INFO">${flow_priority} = 43</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.276720" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.277539" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.277241" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.278038" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.277735" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.278556" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1c630&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.278250" elapsed="0.000346"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.272051" elapsed="0.006613"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.292269" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=166 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=166 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.292334" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=166 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.292463" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.285565" elapsed="0.006935"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.295795" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.292729" elapsed="0.003129"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.285186" elapsed="0.010756"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.278846" elapsed="0.017173"/>
</kw>
<var name="${flowfile}">f43.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.265758" elapsed="0.030341"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.296795" level="INFO">f45.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.296431" elapsed="0.000428"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.301937" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f45.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f45.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.302144" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.301744" elapsed="0.000443"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.303007" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ee700&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.302407" elapsed="0.000641"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.303503" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.303227" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.303950" level="INFO">${flow_id} = 168</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.303681" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.304420" level="INFO">${flow_priority} = 45</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.304150" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.305200" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.304593" elapsed="0.000637"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.305701" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.305386" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.306217" level="INFO">${flow_id} = 168</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.305894" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.306761" level="INFO">${flow_priority} = 45</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.306410" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.307285" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.306959" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.307784" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.307479" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.308310" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ee700&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.307980" elapsed="0.000371"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.301253" elapsed="0.007152"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.321315" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=168 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=168 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.321360" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=168 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.321448" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.315354" elapsed="0.006120"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.324044" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.321630" elapsed="0.002496"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.314956" elapsed="0.009250"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.308553" elapsed="0.015724"/>
</kw>
<var name="${flowfile}">f45.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.296244" elapsed="0.028084"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.324985" level="INFO">f101.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.324638" elapsed="0.000408"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.329822" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f101.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f101.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.329997" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.329635" elapsed="0.000402"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.330871" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35a020&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.330279" elapsed="0.000631"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.331542" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.331152" elapsed="0.000426"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.332194" level="INFO">${flow_id} = 224</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.331791" elapsed="0.000440"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.332821" level="INFO">${flow_priority} = 101</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.332443" elapsed="0.000414"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.334061" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.333064" elapsed="0.001060"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.334823" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.334346" elapsed="0.000537"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.335474" level="INFO">${flow_id} = 224</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.335143" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.335976" level="INFO">${flow_priority} = 101</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.335667" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.336489" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.336188" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.336988" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.336683" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.337508" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35a020&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.337200" elapsed="0.000349"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.329172" elapsed="0.008431"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.350304" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=224 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=224 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.350348" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=224 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.350438" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.344556" elapsed="0.005908"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.353381" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.350620" elapsed="0.002804"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.344132" elapsed="0.009350"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.337751" elapsed="0.015781"/>
</kw>
<var name="${flowfile}">f101.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.324462" elapsed="0.029106"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.354038" level="INFO">f102.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.353791" elapsed="0.000307"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.358658" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f102.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f102.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.358846" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.358453" elapsed="0.000433"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.359710" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4dba60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.359124" elapsed="0.000625"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.360386" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.359963" elapsed="0.000459"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.361009" level="INFO">${flow_id} = 225</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.360634" elapsed="0.000411"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.361659" level="INFO">${flow_priority} = 102</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.361280" elapsed="0.000415"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.362972" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.361903" elapsed="0.001113"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.363587" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.363268" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.364106" level="INFO">${flow_id} = 225</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.363784" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.364614" level="INFO">${flow_priority} = 102</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.364302" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.365125" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.364805" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.365629" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.365323" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.366146" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4dba60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.365824" elapsed="0.000364"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.357965" elapsed="0.008278"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.380256" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=225 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=225 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.380300" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=225 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.380389" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.373144" elapsed="0.007271"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.382623" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.380571" elapsed="0.002138"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.372752" elapsed="0.010016"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.366392" elapsed="0.016426"/>
</kw>
<var name="${flowfile}">f102.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.353664" elapsed="0.029190"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.383523" level="INFO">f103.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.383146" elapsed="0.000437"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.388407" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f103.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f103.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.388582" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.388220" elapsed="0.000402"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.389438" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe69e40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.388831" elapsed="0.000646"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.390094" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.389689" elapsed="0.000444"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.390777" level="INFO">${flow_id} = 226</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.390345" elapsed="0.000469"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.391383" level="INFO">${flow_priority} = 103</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.391027" elapsed="0.000381"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.392295" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.391556" elapsed="0.000770"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.392794" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.392481" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.393317" level="INFO">${flow_id} = 226</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.392987" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.393818" level="INFO">${flow_priority} = 103</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.393508" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.394327" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.394009" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.394849" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.394522" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.395370" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe69e40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.395046" elapsed="0.000364"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.387725" elapsed="0.007739"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.408533" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=226 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=226 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.408611" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=226 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.408702" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.402313" elapsed="0.006416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.411029" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.408884" elapsed="0.002248"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.401921" elapsed="0.009316"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.395613" elapsed="0.015704"/>
</kw>
<var name="${flowfile}">f103.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.382951" elapsed="0.028417"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.412027" level="INFO">f104.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.411682" elapsed="0.000428"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.416857" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f104.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f104.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.417034" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.416674" elapsed="0.000421"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.417879" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc307ba0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.417307" elapsed="0.000611"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.418538" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.418153" elapsed="0.000421"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.419361" level="INFO">${flow_id} = 227</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.418832" elapsed="0.000587"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.420396" level="INFO">${flow_priority} = 104</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.419758" elapsed="0.000695"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.422386" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.420785" elapsed="0.001670"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.423395" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.422849" elapsed="0.000587"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.423896" level="INFO">${flow_id} = 227</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.423590" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.424415" level="INFO">${flow_priority} = 104</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.424101" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.424907" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.424609" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.425435" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.425127" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.425936" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc307ba0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.425632" elapsed="0.000345"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.416213" elapsed="0.009818"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.439609" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=227 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=227 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.439689" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=227 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.439781" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.432888" elapsed="0.006919"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.442035" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.439963" elapsed="0.002135"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.432511" elapsed="0.009646"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.426197" elapsed="0.016011"/>
</kw>
<var name="${flowfile}">f104.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.411503" elapsed="0.030742"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.442750" level="INFO">f105.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.442469" elapsed="0.000326"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.447533" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f105.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f105.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.447708" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.447348" elapsed="0.000400"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.448561" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6b6f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.447957" elapsed="0.000644"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.449233" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.448816" elapsed="0.000454"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.449861" level="INFO">${flow_id} = 228</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.449484" elapsed="0.000413"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.450512" level="INFO">${flow_priority} = 105</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.450132" elapsed="0.000415"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.451630" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.450809" elapsed="0.000852"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.452151" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.451818" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.452653" level="INFO">${flow_id} = 228</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.452348" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.453181" level="INFO">${flow_priority} = 105</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.452844" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.453675" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.453376" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.454193" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.453872" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.454728" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6b6f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.454392" elapsed="0.000378"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.446863" elapsed="0.007963"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.467315" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=228 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=228 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.467360" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=228 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.467486" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.461775" elapsed="0.005738"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.469764" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.467670" elapsed="0.002137"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.461392" elapsed="0.008473"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.454976" elapsed="0.014939"/>
</kw>
<var name="${flowfile}">f105.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.442341" elapsed="0.027611"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.470441" level="INFO">f106.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.470190" elapsed="0.000295"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.475145" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f106.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f106.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.475324" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.474940" elapsed="0.000424"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.476166" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3042c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.475575" elapsed="0.000630"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.476804" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.476419" elapsed="0.000421"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.477450" level="INFO">${flow_id} = 229</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.477051" elapsed="0.000435"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.478090" level="INFO">${flow_priority} = 106</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.477698" elapsed="0.000430"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.479344" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.478340" elapsed="0.001035"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.479846" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.479531" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.480364" level="INFO">${flow_id} = 229</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.480040" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.480865" level="INFO">${flow_priority} = 106</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.480556" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.481377" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.481059" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.481876" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.481571" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.482391" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3042c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.482085" elapsed="0.000347"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.474457" elapsed="0.008029"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.494509" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=229 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=229 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.494554" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=229 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.494693" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.489322" elapsed="0.005398"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.496941" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.494879" elapsed="0.002105"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.488926" elapsed="0.008115"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.482632" elapsed="0.014477"/>
</kw>
<var name="${flowfile}">f106.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.470047" elapsed="0.027105"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.497624" level="INFO">f107.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.497376" elapsed="0.000291"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.501922" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f107.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f107.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.502119" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.501735" elapsed="0.000427"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.502974" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3eddf0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.502370" elapsed="0.000643"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.503671" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.503250" elapsed="0.000457"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.504325" level="INFO">${flow_id} = 230</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.503920" elapsed="0.000440"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.504945" level="INFO">${flow_priority} = 107</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.504571" elapsed="0.000409"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.506270" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.505216" elapsed="0.001097"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.507027" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.506528" elapsed="0.000594"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.507624" level="INFO">${flow_id} = 230</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.507313" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.508152" level="INFO">${flow_priority} = 107</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.507818" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.508647" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.508347" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.509166" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.508842" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.509669" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3eddf0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.509363" elapsed="0.000347"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.501275" elapsed="0.008490"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.523737" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=230 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=230 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.523782" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=230 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.523879" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.516618" elapsed="0.007320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.526191" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.524120" elapsed="0.002115"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.516238" elapsed="0.010055"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.509912" elapsed="0.016431"/>
</kw>
<var name="${flowfile}">f107.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.497248" elapsed="0.029132"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.526892" level="INFO">f108.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.526601" elapsed="0.000335"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.531689" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f108.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f108.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.531865" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.531505" elapsed="0.000400"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.532723" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc304450&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.532140" elapsed="0.000623"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.533382" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.532972" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.534002" level="INFO">${flow_id} = 231</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.533627" elapsed="0.000410"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.534678" level="INFO">${flow_priority} = 108</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.534267" elapsed="0.000450"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.535799" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.534928" elapsed="0.000901"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.536323" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.535983" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.536836" level="INFO">${flow_id} = 231</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.536520" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.537364" level="INFO">${flow_priority} = 108</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.537028" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.537863" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.537559" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.538393" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.538059" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.538934" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc304450&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.538587" elapsed="0.000389"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.531024" elapsed="0.008007"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.552465" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=231 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=231 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.552509" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=231 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.552596" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.545833" elapsed="0.006827"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.554917" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.552818" elapsed="0.002142"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.545457" elapsed="0.009561"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.539193" elapsed="0.015919"/>
</kw>
<var name="${flowfile}">f108.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.526475" elapsed="0.028704"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.555863" level="INFO">f109.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.555514" elapsed="0.000410"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.560735" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f109.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f109.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.560911" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.560551" elapsed="0.000400"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.561796" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc0908b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.561183" elapsed="0.000652"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.562460" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.562049" elapsed="0.000447"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.563189" level="INFO">${flow_id} = 232</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.562758" elapsed="0.000463"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.563662" level="INFO">${flow_priority} = 109</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.563391" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.564592" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.563837" elapsed="0.000785"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.565114" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.564779" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.565620" level="INFO">${flow_id} = 232</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.565312" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.566137" level="INFO">${flow_priority} = 109</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.565811" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.566629" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.566331" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.567255" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.566916" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.567756" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc0908b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.567450" elapsed="0.000347"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.560082" elapsed="0.007769"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.581138" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=232 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=232 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.581183" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=232 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.581271" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.574732" elapsed="0.006564"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.584198" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.581488" elapsed="0.002772"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.574337" elapsed="0.010003"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.567999" elapsed="0.016412"/>
</kw>
<var name="${flowfile}">f109.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.555337" elapsed="0.029126"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.585153" level="INFO">f110.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.584773" elapsed="0.000443"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.589999" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f110.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f110.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.590204" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.589813" elapsed="0.000432"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.591062" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc307650&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.590457" elapsed="0.000680"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.591610" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.591333" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.592058" level="INFO">${flow_id} = 233</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.591789" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.592522" level="INFO">${flow_priority} = 110</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.592254" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.593368" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.592697" elapsed="0.000701"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.593870" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.593555" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.594389" level="INFO">${flow_id} = 233</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.594079" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.594919" level="INFO">${flow_priority} = 110</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.594579" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.595445" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.595144" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.595943" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.595638" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.596461" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc307650&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.596153" elapsed="0.000349"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.589349" elapsed="0.007208"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.609093" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=233 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=233 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.609139" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=233 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.609227" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.603443" elapsed="0.005809"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.611795" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.609446" elapsed="0.002410"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.603049" elapsed="0.008886"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.596704" elapsed="0.015301"/>
</kw>
<var name="${flowfile}">f110.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.584597" elapsed="0.027459"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.612739" level="INFO">f113.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.612390" elapsed="0.000410"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.617562" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f113.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f113.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.617737" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.617376" elapsed="0.000402"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.618594" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc304360&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.617988" elapsed="0.000645"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.619299" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.618882" elapsed="0.000453"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.619943" level="INFO">${flow_id} = 236</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.619560" elapsed="0.000408"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.620407" level="INFO">${flow_priority} = 113</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.620135" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.621323" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.620582" elapsed="0.000772"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.621823" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.621510" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.622344" level="INFO">${flow_id} = 236</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.622017" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.622871" level="INFO">${flow_priority} = 113</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.622536" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.623386" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.623083" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.623884" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.623580" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.624402" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc304360&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.624095" elapsed="0.000348"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.616889" elapsed="0.007609"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.637192" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=236 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=236 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.637238" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=236 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.637326" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.631407" elapsed="0.005945"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.639908" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.637547" elapsed="0.002423"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.631005" elapsed="0.009045"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.624646" elapsed="0.015498"/>
</kw>
<var name="${flowfile}">f113.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.612213" elapsed="0.027984"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.640855" level="INFO">f156.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.640509" elapsed="0.000407"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.645681" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f156.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f156.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.645857" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.645498" elapsed="0.000399"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.646726" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7c1d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.646126" elapsed="0.000641"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.647326" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.646979" elapsed="0.000373"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.647772" level="INFO">${flow_id} = 279</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.647504" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.648233" level="INFO">${flow_priority} = 156</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.647948" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.649085" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.648406" elapsed="0.000711"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.649588" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.649273" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.650106" level="INFO">${flow_id} = 279</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.649783" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.650613" level="INFO">${flow_priority} = 156</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.650301" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.651137" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.650821" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.651639" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.651335" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.652160" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7c1d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.651835" elapsed="0.000367"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.645006" elapsed="0.007252"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.664701" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=279 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=279 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.664746" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=279 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.664834" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.659110" elapsed="0.005750"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.667259" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.665056" elapsed="0.002268"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.658714" elapsed="0.008689"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.652405" elapsed="0.015070"/>
</kw>
<var name="${flowfile}">f156.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.640332" elapsed="0.027195"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.668216" level="INFO">f201.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.667841" elapsed="0.000437"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.673154" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f201.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f201.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.673332" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.672931" elapsed="0.000441"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.674171" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e4bd0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.673584" elapsed="0.000626"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.674847" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.674424" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.675444" level="INFO">${flow_id} = 324</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.675146" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.675898" level="INFO">${flow_priority} = 201</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.675629" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.676785" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.676113" elapsed="0.000702"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.677308" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.676974" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.677808" level="INFO">${flow_id} = 324</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.677503" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.678326" level="INFO">${flow_priority} = 201</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.677998" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.678841" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.678517" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.679375" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.679049" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.679874" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e4bd0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.679571" elapsed="0.000343"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.672465" elapsed="0.007503"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.692857" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=324 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=324 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.692901" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=324 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.692989" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.686849" elapsed="0.006165"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.696481" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.693234" elapsed="0.003308"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.686444" elapsed="0.010179"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.680138" elapsed="0.016556"/>
</kw>
<var name="${flowfile}">f201.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.667661" elapsed="0.029084"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.697442" level="INFO">f202.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.697086" elapsed="0.000419"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.702314" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f202.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f202.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.702490" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.702126" elapsed="0.000404"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.703351" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7dee0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.702774" elapsed="0.000606"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.703821" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.703543" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.704289" level="INFO">${flow_id} = 325</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.703998" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.704737" level="INFO">${flow_priority} = 202</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.704467" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.705604" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.704911" elapsed="0.000723"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.706120" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.705788" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.706622" level="INFO">${flow_id} = 325</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.706314" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.707169" level="INFO">${flow_priority} = 202</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.706837" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.707664" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.707361" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.708189" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.707859" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.708693" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7dee0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.708386" elapsed="0.000348"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.701642" elapsed="0.007147"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.722211" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=325 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=325 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.722256" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=325 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.722344" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.715631" elapsed="0.006738"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.725327" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.722523" elapsed="0.002866"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.715250" elapsed="0.010219"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.708937" elapsed="0.016604"/>
</kw>
<var name="${flowfile}">f202.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.696878" elapsed="0.028714"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.726283" level="INFO">f203.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.725904" elapsed="0.000441"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.731142" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f203.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f203.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.731318" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.730935" elapsed="0.000424"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.732153" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e7ba0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.731569" elapsed="0.000624"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.732790" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.732407" elapsed="0.000418"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.733453" level="INFO">${flow_id} = 326</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.733037" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.734092" level="INFO">${flow_priority} = 203</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.733699" elapsed="0.000431"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.735335" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.734339" elapsed="0.001027"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.735839" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.735523" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.736362" level="INFO">${flow_id} = 326</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.736033" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.736867" level="INFO">${flow_priority} = 203</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.736555" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.737382" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.737062" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.737882" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.737576" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.738402" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e7ba0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.738093" elapsed="0.000350"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.730462" elapsed="0.008035"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.751381" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=326 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=326 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.751425" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=326 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.751513" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.745383" elapsed="0.006155"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.753749" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.751692" elapsed="0.002134"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.744982" elapsed="0.008902"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.738646" elapsed="0.015290"/>
</kw>
<var name="${flowfile}">f203.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.725725" elapsed="0.028247"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.754460" level="INFO">f204.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.754210" elapsed="0.000294"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.759124" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f204.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f204.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.759301" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.758916" elapsed="0.000425"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.760136" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7e4d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.759549" elapsed="0.000626"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.760772" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.760387" elapsed="0.000420"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.761416" level="INFO">${flow_id} = 327</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.761015" elapsed="0.000436"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.762035" level="INFO">${flow_priority} = 204</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.761660" elapsed="0.000436"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.763287" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.762306" elapsed="0.001024"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.763988" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.763545" elapsed="0.000500"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.764713" level="INFO">${flow_id} = 327</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.764282" elapsed="0.000487"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.765442" level="INFO">${flow_priority} = 204</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.764981" elapsed="0.000518"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.766152" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.765711" elapsed="0.000504"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.766892" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.766424" elapsed="0.000531"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.767539" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7e4d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.767204" elapsed="0.000376"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.758421" elapsed="0.009223"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.781580" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=327 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=327 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.781625" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=327 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.781713" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.774568" elapsed="0.007170"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.784441" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.781895" elapsed="0.002606"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.774190" elapsed="0.010449"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.767814" elapsed="0.016898"/>
</kw>
<var name="${flowfile}">f204.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.754081" elapsed="0.030682"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.785450" level="INFO">f205.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.785098" elapsed="0.000414"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.790310" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f205.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f205.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.790485" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.790121" elapsed="0.000404"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.791373" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc0903b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.790765" elapsed="0.000647"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.792011" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.791626" elapsed="0.000421"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.792668" level="INFO">${flow_id} = 328</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.792283" elapsed="0.000421"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.793317" level="INFO">${flow_priority} = 205</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.792914" elapsed="0.000438"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.794601" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.793563" elapsed="0.001079"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.795354" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.794904" elapsed="0.000491"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.795854" level="INFO">${flow_id} = 328</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.795549" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.796371" level="INFO">${flow_priority} = 205</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.796044" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.796862" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.796562" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.797390" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.797058" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.797890" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc0903b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.797586" elapsed="0.000344"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.789634" elapsed="0.008351"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.810431" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=328 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=328 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.810475" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=328 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.810564" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.804863" elapsed="0.005726"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.812825" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.810761" elapsed="0.002108"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.804486" elapsed="0.008475"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.798149" elapsed="0.014866"/>
</kw>
<var name="${flowfile}">f205.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.784899" elapsed="0.028154"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.813551" level="INFO">f206.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.813299" elapsed="0.000296"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.817874" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f206.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f206.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.818059" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.817690" elapsed="0.000432"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.818997" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4be480&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.818331" elapsed="0.000707"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.819663" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.819275" elapsed="0.000424"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.820306" level="INFO">${flow_id} = 329</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.819909" elapsed="0.000433"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.820928" level="INFO">${flow_priority} = 206</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.820553" elapsed="0.000411"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.822286" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.821240" elapsed="0.001088"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.823049" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.822544" elapsed="0.000589"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.823609" level="INFO">${flow_id} = 329</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.823300" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.824128" level="INFO">${flow_priority} = 206</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.823800" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.824622" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.824321" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.825143" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.824818" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.825649" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4be480&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.825341" elapsed="0.000349"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.817225" elapsed="0.008519"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.837891" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=329 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=329 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.837937" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=329 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.838027" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.832591" elapsed="0.005463"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.840325" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.838234" elapsed="0.002134"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.832212" elapsed="0.008213"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.825893" elapsed="0.014620"/>
</kw>
<var name="${flowfile}">f206.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.813171" elapsed="0.027380"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.841027" level="INFO">f209.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.840776" elapsed="0.000316"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.845138" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f209.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f209.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.845331" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;co...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.844932" elapsed="0.000439"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.846183" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ee890&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.845584" elapsed="0.000638"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.846855" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.846435" elapsed="0.000457"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.847505" level="INFO">${flow_id} = 332</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.847125" elapsed="0.000416"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.848154" level="INFO">${flow_priority} = 209</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.847750" elapsed="0.000440"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.849387" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/co...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.848398" elapsed="0.001030"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.850100" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.849641" elapsed="0.000519"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.850831" level="INFO">${flow_id} = 332</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.850372" elapsed="0.000518"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.851484" level="INFO">${flow_priority} = 209</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.851149" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.851974" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;co...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.851676" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.852491" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/co...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.852184" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.852988" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ee890&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.852686" elapsed="0.000342"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.844468" elapsed="0.008631"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.864863" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=332 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=332 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.864907" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=332 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.864996" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.859905" elapsed="0.005123"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.867256" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.865210" elapsed="0.002089"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.859530" elapsed="0.007826"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.853250" elapsed="0.014198"/>
</kw>
<var name="${flowfile}">f209.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.840649" elapsed="0.026837"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.867961" level="INFO">f214.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.867712" elapsed="0.000293"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.871673" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f214.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f214.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.871848" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.871490" elapsed="0.000397"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.872675" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc306c00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.872117" elapsed="0.000596"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.873332" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.872924" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.873956" level="INFO">${flow_id} = 337</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.873580" elapsed="0.000412"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.874602" level="INFO">${flow_priority} = 214</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.874223" elapsed="0.000414"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.875760" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.874860" elapsed="0.000942"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.876479" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.876017" elapsed="0.000520"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.877207" level="INFO">${flow_id} = 337</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.876751" elapsed="0.000514"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.877912" level="INFO">${flow_priority} = 214</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.877478" elapsed="0.000490"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.878623" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.878204" elapsed="0.000515"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.879365" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.878933" elapsed="0.000478"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.879866" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc306c00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.879561" elapsed="0.000346"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.870980" elapsed="0.008982"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.893090" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=337 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=337 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.893135" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=337 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.893224" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.887010" elapsed="0.006240"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.895725" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.893408" elapsed="0.002377"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.886582" elapsed="0.009283"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.880128" elapsed="0.015856"/>
</kw>
<var name="${flowfile}">f214.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.867583" elapsed="0.028457"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.896722" level="INFO">f218.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.896374" elapsed="0.000411"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.901723" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f218.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f218.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.901902" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.901534" elapsed="0.000409"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.902737" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3edcb0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.902176" elapsed="0.000603"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.903415" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.902993" elapsed="0.000459"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.904041" level="INFO">${flow_id} = 341</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.903663" elapsed="0.000434"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.904689" level="INFO">${flow_priority} = 218</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.904310" elapsed="0.000414"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.905698" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.904934" elapsed="0.000806"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.906423" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.905957" elapsed="0.000524"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.907210" level="INFO">${flow_id} = 341</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.906731" elapsed="0.000532"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.907732" level="INFO">${flow_priority} = 218</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.907418" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.908244" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.907925" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.908750" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.908441" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.909279" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3edcb0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.908946" elapsed="0.000374"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.900996" elapsed="0.008380"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.922725" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=341 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=341 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.922770" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=341 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.922859" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.916423" elapsed="0.006462"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.925144" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.923044" elapsed="0.002144"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.916029" elapsed="0.009216"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.909526" elapsed="0.015770"/>
</kw>
<var name="${flowfile}">f218.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.896197" elapsed="0.029172"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.925843" level="INFO">f219.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.925596" elapsed="0.000292"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.930338" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f219.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f219.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.930514" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;c...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.930150" elapsed="0.000404"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.931381" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc305e90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.930797" elapsed="0.000624"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.932021" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.931636" elapsed="0.000422"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.932676" level="INFO">${flow_id} = 342</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.932299" elapsed="0.000413"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.933329" level="INFO">${flow_priority} = 219</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.932921" elapsed="0.000445"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.934480" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.933576" elapsed="0.000946"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.935278" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.934788" elapsed="0.000532"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.935787" level="INFO">${flow_id} = 342</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.935477" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.936316" level="INFO">${flow_priority} = 219</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.935981" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.936812" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;c...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.936512" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.937333" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.937009" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.937837" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc305e90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.937531" elapsed="0.000347"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.929671" elapsed="0.008262"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.951794" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=342 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=342 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.951839" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=342 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.951928" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.944986" elapsed="0.006968"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.954223" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.952134" elapsed="0.002133"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.944602" elapsed="0.009723"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.938098" elapsed="0.016278"/>
</kw>
<var name="${flowfile}">f219.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.925468" elapsed="0.028980"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.954956" level="INFO">f220.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.954674" elapsed="0.000327"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.959876" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f220.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f220.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.960050" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.959690" elapsed="0.000421"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.960865" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe68310&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.960326" elapsed="0.000578"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.961532" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.961148" elapsed="0.000420"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.962179" level="INFO">${flow_id} = 343</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.961780" elapsed="0.000435"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.962843" level="INFO">${flow_priority} = 220</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.962427" elapsed="0.000452"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.963727" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.963127" elapsed="0.000630"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.964244" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.963912" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.964747" level="INFO">${flow_id} = 343</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.964440" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.965269" level="INFO">${flow_priority} = 220</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.964940" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.965764" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.965464" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.966283" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.965958" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.966814" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe68310&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.966479" elapsed="0.000379"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.959226" elapsed="0.007688"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:13.980349" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=343 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=343 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.980393" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=343 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:13.980482" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:13.973944" elapsed="0.006564"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.982795" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.980670" elapsed="0.002170"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:13.973564" elapsed="0.009335"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.967087" elapsed="0.015863"/>
</kw>
<var name="${flowfile}">f220.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.954547" elapsed="0.028485"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.983529" level="INFO">f221.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:13.983279" elapsed="0.000302"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:13.988640" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f221.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f221.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:13.988816" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:13.988454" elapsed="0.000403"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:13.989654" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1e7f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:13.989096" elapsed="0.000597"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.990306" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.989902" elapsed="0.000440"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.990966" level="INFO">${flow_id} = 344</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.990552" elapsed="0.000449"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:13.991516" level="INFO">${flow_priority} = 221</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:13.991242" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:13.992326" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:13.991690" elapsed="0.000666"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.992825" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.992510" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.993347" level="INFO">${flow_id} = 344</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.993023" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.993848" level="INFO">${flow_priority} = 221</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.993539" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.994355" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.994039" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.994877" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.994550" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:13.995400" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1e7f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:13.995091" elapsed="0.000349"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:13.987879" elapsed="0.007616"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:14.011756" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=344 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=344 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:14.011801" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=344 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:14.011889" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:14.002313" elapsed="0.009601"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.016820" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:14.012143" elapsed="0.004773"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:14.001916" elapsed="0.015129"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:13.995641" elapsed="0.021551"/>
</kw>
<var name="${flowfile}">f221.xml</var>
<status status="PASS" start="2026-05-25T01:53:13.983149" elapsed="0.034198"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.018462" level="INFO">f222.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:14.017859" elapsed="0.000702"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:14.024544" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f222.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f222.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:14.024669" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:14.024413" elapsed="0.000286"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:14.025235" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe69120&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:14.024848" elapsed="0.000415"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:14.025687" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:14.025413" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:14.026149" level="INFO">${flow_id} = 345</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:14.025862" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:14.026591" level="INFO">${flow_priority} = 222</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:14.026324" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:14.027293" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:14.026783" elapsed="0.000540"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.027790" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:14.027477" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.028305" level="INFO">${flow_id} = 345</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:14.027981" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.028805" level="INFO">${flow_priority} = 222</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:14.028495" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.029325" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:14.028995" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.029824" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:14.029520" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.030341" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe69120&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:14.030017" elapsed="0.000365"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:14.024062" elapsed="0.006374"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:14.043285" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=345 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=345 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:14.043349" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=345 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:14.043472" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:14.037289" elapsed="0.006219"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.046391" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:14.043722" elapsed="0.002728"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:14.036898" elapsed="0.009632"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:14.030583" elapsed="0.016017"/>
</kw>
<var name="${flowfile}">f222.xml</var>
<status status="PASS" start="2026-05-25T01:53:14.017572" elapsed="0.029078"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.047457" level="INFO">f223.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:14.047102" elapsed="0.000417"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:14.052822" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f223.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f223.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:14.052947" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:14.052691" elapsed="0.000285"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:14.053524" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35a750&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:14.053144" elapsed="0.000408"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:14.053978" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:14.053703" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:14.054445" level="INFO">${flow_id} = 346</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:14.054174" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:14.054917" level="INFO">${flow_priority} = 223</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:14.054623" elapsed="0.000320"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:14.055614" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:14.055113" elapsed="0.000530"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.056125" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:14.055796" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.056629" level="INFO">${flow_id} = 346</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:14.056321" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.057147" level="INFO">${flow_priority} = 223</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:14.056820" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.057641" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:14.057340" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.058165" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:14.057836" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.058678" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35a750&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:14.058365" elapsed="0.000383"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:14.052359" elapsed="0.006447"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:14.071355" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=346 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=346 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:14.071398" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=346 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:14.071495" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:14.065677" elapsed="0.005843"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.073600" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:14.071677" elapsed="0.001965"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:14.065297" elapsed="0.008401"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:14.058956" elapsed="0.014794"/>
</kw>
<var name="${flowfile}">f223.xml</var>
<status status="PASS" start="2026-05-25T01:53:14.046888" elapsed="0.026898"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.074279" level="INFO">f224.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:14.074009" elapsed="0.000348"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:14.077758" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f224.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f224.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:14.077882" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:14.077625" elapsed="0.000285"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:14.078453" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6bba0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:14.078060" elapsed="0.000420"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:14.078959" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:14.078635" elapsed="0.000349"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:14.079625" level="INFO">${flow_id} = 347</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:14.079231" elapsed="0.000429"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:14.080272" level="INFO">${flow_priority} = 224</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:14.079872" elapsed="0.000435"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:14.081244" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:14.080517" elapsed="0.000769"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.081934" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:14.081498" elapsed="0.000493"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.082902" level="INFO">${flow_id} = 347</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:14.082224" elapsed="0.000738"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.083640" level="INFO">${flow_priority} = 224</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:14.083198" elapsed="0.000500"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.084363" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:14.083911" elapsed="0.000514"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.085064" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:14.084636" elapsed="0.000518"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.085804" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6bba0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:14.085367" elapsed="0.000495"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:14.077294" elapsed="0.008645"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:14.099697" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=347 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=347 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:14.099743" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=347 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:14.099840" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:14.093661" elapsed="0.006205"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.101931" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:14.100025" elapsed="0.001949"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:14.093145" elapsed="0.008885"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:14.086171" elapsed="0.015928"/>
</kw>
<var name="${flowfile}">f224.xml</var>
<status status="PASS" start="2026-05-25T01:53:14.073881" elapsed="0.028257"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.102610" level="INFO">f225.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:14.102364" elapsed="0.000290"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:14.106115" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f225.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f225.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:14.106242" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:14.105961" elapsed="0.000309"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:14.106815" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6bc90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:14.106422" elapsed="0.000420"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:14.107297" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:14.107002" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:14.107745" level="INFO">${flow_id} = 348</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:14.107474" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:14.108209" level="INFO">${flow_priority} = 225</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:14.107922" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:14.108891" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:14.108390" elapsed="0.000531"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.109403" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:14.109087" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.109899" level="INFO">${flow_id} = 348</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:14.109594" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.110413" level="INFO">${flow_priority} = 225</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:14.110102" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.110952" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:14.110602" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.111466" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:14.111160" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.111966" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6bc90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:14.111661" elapsed="0.000346"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:14.105626" elapsed="0.006435"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:14.124936" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=348 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=348 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:14.124981" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=348 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:14.125104" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:14.118923" elapsed="0.006209"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.127396" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:14.125289" elapsed="0.002152"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:14.118535" elapsed="0.008963"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:14.112232" elapsed="0.015317"/>
</kw>
<var name="${flowfile}">f225.xml</var>
<status status="PASS" start="2026-05-25T01:53:14.102234" elapsed="0.025353"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.128062" level="INFO">f550.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:14.127813" elapsed="0.000315"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:14.131835" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f550.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f550.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:14.132009" level="INFO">${data} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;
    &lt;match&gt;
   ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:14.131650" elapsed="0.000399"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:14.132834" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4e9580&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:14.132283" elapsed="0.000591"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:14.133507" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:14.133115" elapsed="0.000429"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:14.134159" level="INFO">${flow_id} = 550</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:14.133757" elapsed="0.000438"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:14.134806" level="INFO">${flow_priority} = 550</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:14.134408" elapsed="0.000434"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:14.135861" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;f...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:14.135050" elapsed="0.000853"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.136587" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:14.136141" elapsed="0.000504"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.137318" level="INFO">${flow_id} = 550</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:14.136861" elapsed="0.000515"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.138022" level="INFO">${flow_priority} = 550</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:14.137588" elapsed="0.000558"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.138835" level="INFO">${data} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;
    &lt;match&gt;
   ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:14.138371" elapsed="0.000528"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.139494" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;f...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:14.139162" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.139997" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4e9580&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:14.139691" elapsed="0.000347"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:14.131153" elapsed="0.008961"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:14.153098" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=550 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=550 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:14.153144" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=550 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:14.153233" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:14.146976" elapsed="0.006283"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:14.155480" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:14.153414" elapsed="0.002109"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:53:14.146588" elapsed="0.008993"/>
</kw>
<arg>Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:14.140266" elapsed="0.015365"/>
</kw>
<var name="${flowfile}">f550.xml</var>
<status status="PASS" start="2026-05-25T01:53:14.127684" elapsed="0.027984"/>
</iter>
<var>${flowfile}</var>
<value>@{flowlist0}</value>
<status status="PASS" start="2026-05-25T01:53:12.482526" elapsed="1.673174"/>
</for>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.156388" level="INFO">Slept 3 seconds.</msg>
<arg>${flow_update_time}</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-05-25T01:53:14.155854" elapsed="3.000774"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:53:17.163211" level="INFO">dpctl dump-flows -O OpenFlow13</msg>
<arg>dpctl dump-flows -O OpenFlow13</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:53:17.157316" elapsed="0.006051"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:53:17.198814" level="INFO">*** s1 ------------------------------------------------------------------------
 cookie=0xa, duration=31.790s, table=0, n_packets=14, n_bytes=1100, send_flow_rem priority=0 actions=CONTROLLER:65535
mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:53:17.163780" elapsed="0.035103"/>
</kw>
<doc>Delete all flows and waits for SM to collect data</doc>
<status status="PASS" start="2026-05-25T01:53:12.482179" elapsed="4.716904"/>
</test>
<test id="s1-s3-s1-t118" name="Test Is Flow 1 Deleted" line="310">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:17.210273" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f1.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f1.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:17.210441" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:17.210115" elapsed="0.000356"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:17.211223" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6bab0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:17.210648" elapsed="0.000605"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.211700" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.211410" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.212202" level="INFO">${flow_id} = 124</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.211883" elapsed="0.000345"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.212725" level="INFO">${flow_priority} = 1</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.212381" elapsed="0.000377"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:17.213626" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:17.212925" elapsed="0.000737"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.214303" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.213875" elapsed="0.000478"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.214935" level="INFO">${flow_id} = 124</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.214547" elapsed="0.000437"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.215656" level="INFO">${flow_priority} = 1</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.215235" elapsed="0.000471"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.216312" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.215910" elapsed="0.000462"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.216898" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.216566" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.217597" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6bab0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.217249" elapsed="0.000399"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:17.209758" elapsed="0.007961"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.218387" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.217912" elapsed="0.000507"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.218858" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;124&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;1&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf1&lt;/flow-name&gt;
    &lt;priority&gt;1&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.218600" elapsed="0.000375"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.226790" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:17.226478" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:17.233708" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=124?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=124?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:17.234989" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=124?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:17.235181" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:17.226950" elapsed="0.008269"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.235812" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.235450" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.238973" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.236105" elapsed="0.002985"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:17.241888" elapsed="0.000052"/>
</return>
<status status="PASS" start="2026-05-25T01:53:17.239213" elapsed="0.002791"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.239180" elapsed="0.002870"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:17.242330" elapsed="0.000038"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:17.242672" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:17.242477" elapsed="0.000269"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:17.242452" elapsed="0.000327"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.242825" elapsed="0.000021"/>
</return>
<msg time="2026-05-25T01:53:17.245246" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:17.245310" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 124 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:17.226154" elapsed="0.019187"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.248423" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:17.246135" elapsed="0.002353"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.246108" elapsed="0.002412"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.249317" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.248728" elapsed="0.000628"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.250110" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.249584" elapsed="0.000564"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:17.250219" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:53:17.250472" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:17.245643" elapsed="0.004864"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:17.250729" elapsed="0.000622"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:17.225551" elapsed="0.025892"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.259531" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:17.259225" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:17.265600" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:17.265926" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:17.266028" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:17.259690" elapsed="0.006364"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.266501" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.266244" elapsed="0.000304"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.268705" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.266693" elapsed="0.002064"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.270576" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:17.268828" elapsed="0.001797"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.268808" elapsed="0.001840"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:17.273867" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:17.273931" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:17.270790" elapsed="0.003174"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:17.276750" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:17.274092" elapsed="0.002737"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.274045" elapsed="0.002817"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:17.276909" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:53:17.277206" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:17.277270" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 124 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:17.258797" elapsed="0.018505"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.280366" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:17.278058" elapsed="0.002355"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.278032" elapsed="0.002403"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.280989" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.280584" elapsed="0.000433"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.281553" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.281199" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:17.281629" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:17.281809" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:17.277596" elapsed="0.004239"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:17.281992" elapsed="0.000406"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:17.258174" elapsed="0.024289"/>
</kw>
<arg>f1.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:17.206469" elapsed="0.076052"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:17.199415" elapsed="0.083230"/>
</test>
<test id="s1-s3-s1-t119" name="Test Is Flow 2 Deleted" line="312">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:17.293984" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f2.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f2.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:17.294149" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:17.293841" elapsed="0.000338"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:17.294744" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc306a20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:17.294335" elapsed="0.000437"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.295285" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.294927" elapsed="0.000385"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.295746" level="INFO">${flow_id} = 125</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.295469" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.296222" level="INFO">${flow_priority} = 2</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.295927" elapsed="0.000321"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:17.297013" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:17.296401" elapsed="0.000642"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.297556" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.297220" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.298092" level="INFO">${flow_id} = 125</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.297754" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.298618" level="INFO">${flow_priority} = 2</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.298291" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.299159" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.298812" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.299677" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.299358" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.300209" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc306a20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.299875" elapsed="0.000376"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:17.293507" elapsed="0.006800"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.300842" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.300458" elapsed="0.000414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.301281" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;125&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;
    &lt;/match&gt;
    &lt;cookie&gt;2&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf2&lt;/flow-name&gt;
    &lt;priority&gt;2&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.301022" elapsed="0.000317"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.309287" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:17.308967" elapsed="0.000347"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:17.314549" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=125?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=125?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:17.314760" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=125?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:17.314860" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:17.309445" elapsed="0.005441"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.315376" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.315117" elapsed="0.000306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.317610" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.315568" elapsed="0.002095"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:17.319523" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-05-25T01:53:17.317737" elapsed="0.001854"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.317715" elapsed="0.001901"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:17.319760" elapsed="0.000023"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:17.319990" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:17.319853" elapsed="0.000190"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:17.319836" elapsed="0.000244"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.320117" elapsed="0.000022"/>
</return>
<msg time="2026-05-25T01:53:17.322401" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:17.322465" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 125 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:17.308651" elapsed="0.013848"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.325582" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:17.323340" elapsed="0.002319"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.323314" elapsed="0.002383"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.326615" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.325929" elapsed="0.000727"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.327553" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.326894" elapsed="0.000696"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:17.327662" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:53:17.327911" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:17.322794" elapsed="0.005153"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:17.328171" elapsed="0.000389"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:17.308090" elapsed="0.020536"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.336506" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:17.336190" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:17.341440" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:17.341556" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:17.341652" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:17.336667" elapsed="0.005011"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.342117" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.341840" elapsed="0.000328"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.344505" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.342314" elapsed="0.002283"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.346468" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:17.344673" elapsed="0.001845"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.344653" elapsed="0.001887"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:17.349703" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:17.349768" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:17.346681" elapsed="0.003119"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:17.352330" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:17.349909" elapsed="0.002500"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.349882" elapsed="0.002561"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:17.352490" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:53:17.352761" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:17.352822" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 125 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:17.335748" elapsed="0.017106"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.355898" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:17.353642" elapsed="0.002318"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.353616" elapsed="0.002375"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.356830" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.356254" elapsed="0.000615"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.357622" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.357122" elapsed="0.000536"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:17.357730" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:53:17.357980" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:17.353176" elapsed="0.004839"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:17.358261" elapsed="0.000548"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:17.335123" elapsed="0.023775"/>
</kw>
<arg>f2.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:17.290192" elapsed="0.068788"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:17.282937" elapsed="0.076272"/>
</test>
<test id="s1-s3-s1-t120" name="Test Is Flow 3 Deleted" line="314">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:17.370515" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f3.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f3.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:17.370662" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:17.370372" elapsed="0.000319"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:17.371305" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bea70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:17.370846" elapsed="0.000488"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.371776" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.371491" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.372253" level="INFO">${flow_id} = 126</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.371957" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.372704" level="INFO">${flow_priority} = 3</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.372432" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:17.373662" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:17.372880" elapsed="0.000814"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.374277" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.373879" elapsed="0.000452"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.374880" level="INFO">${flow_id} = 126</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.374534" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.375449" level="INFO">${flow_priority} = 3</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.375113" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.375966" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.375648" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.376509" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.376184" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.377034" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bea70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.376710" elapsed="0.000381"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:17.370026" elapsed="0.007123"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.377687" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.377302" elapsed="0.000416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.378132" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;126&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:00:01&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;3&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf3&lt;/flow-name&gt;
    &lt;priority&gt;3&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.377871" elapsed="0.000321"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.385954" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:17.385649" elapsed="0.000332"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:17.391868" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=126?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=126?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:17.392110" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=126?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:17.392218" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:17.386129" elapsed="0.006115"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.392658" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.392404" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.394895" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.392848" elapsed="0.002099"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:17.397110" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-05-25T01:53:17.395056" elapsed="0.002152"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.394999" elapsed="0.002244"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:17.397447" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:17.397815" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:17.397621" elapsed="0.000267"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:17.397595" elapsed="0.000327"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.397969" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:17.400274" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:17.400338" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 126 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:17.385328" elapsed="0.015042"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.403373" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:17.401153" elapsed="0.002285"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.401126" elapsed="0.002344"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.404265" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.403675" elapsed="0.000629"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.405031" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.404534" elapsed="0.000557"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:17.405169" elapsed="0.000041"/>
</return>
<msg time="2026-05-25T01:53:17.405422" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:17.400666" elapsed="0.004792"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:17.405677" elapsed="0.000563"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:17.384753" elapsed="0.021577"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.414753" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:17.414454" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:17.420173" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:17.420285" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:17.420381" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:17.414911" elapsed="0.005496"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.420817" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.420564" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.423504" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.421007" elapsed="0.002550"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.425907" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:17.423630" elapsed="0.002347"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.423608" elapsed="0.002400"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:17.429668" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:17.429733" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:17.426226" elapsed="0.003539"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:17.432339" elapsed="0.000037"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:17.429873" elapsed="0.002551"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.429846" elapsed="0.002611"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:17.432503" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:53:17.432774" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:17.432834" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 126 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:17.414056" elapsed="0.018810"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.435977" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:17.433718" elapsed="0.002325"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.433692" elapsed="0.002403"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.436726" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.436316" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.437295" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.436920" elapsed="0.000402"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:17.437373" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:17.437553" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:17.433247" elapsed="0.004332"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:17.437738" elapsed="0.000402"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:17.413444" elapsed="0.024761"/>
</kw>
<arg>f3.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:17.366775" elapsed="0.071488"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:17.359575" elapsed="0.078805"/>
</test>
<test id="s1-s3-s1-t121" name="Test Is Flow 4 Deleted" line="316">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:17.449420" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f4.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f4.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:17.449559" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:17.449278" elapsed="0.000312"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:17.450169" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc093790&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:17.449743" elapsed="0.000454"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.450642" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.450352" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.451133" level="INFO">${flow_id} = 127</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.450821" elapsed="0.000339"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.451589" level="INFO">${flow_priority} = 4</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.451315" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:17.452578" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:17.451765" elapsed="0.000845"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.453127" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.452770" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.453653" level="INFO">${flow_id} = 127</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.453328" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.454193" level="INFO">${flow_priority} = 4</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.453848" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.454706" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.454392" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.455283" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.454904" elapsed="0.000426"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.455855" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc093790&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.455526" elapsed="0.000371"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:17.448933" elapsed="0.007019"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.456509" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.456119" elapsed="0.000420"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.456939" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;127&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;4&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf4&lt;/flow-name&gt;
    &lt;priority&gt;4&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.456694" elapsed="0.000304"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.464818" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:17.464472" elapsed="0.000376"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:17.471552" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=127?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=127?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:17.471834" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=127?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:17.471952" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:17.464983" elapsed="0.006999"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.472525" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.472220" elapsed="0.000359"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.475275" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.472745" elapsed="0.002584"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:17.477457" elapsed="0.000032"/>
</return>
<status status="PASS" start="2026-05-25T01:53:17.475407" elapsed="0.002123"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.475381" elapsed="0.002175"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:17.477705" elapsed="0.000023"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:17.477948" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:17.477798" elapsed="0.000210"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:17.477781" elapsed="0.000254"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.478090" elapsed="0.000018"/>
</return>
<msg time="2026-05-25T01:53:17.479952" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:17.479999" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 127 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:17.464091" elapsed="0.015931"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.483305" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:17.480833" elapsed="0.002542"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.480807" elapsed="0.002601"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.484256" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.483632" elapsed="0.000652"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.484806" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.484451" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:17.484883" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:17.485062" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:17.480341" elapsed="0.004764"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:17.485268" elapsed="0.000392"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:17.463509" elapsed="0.022214"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.494108" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:17.493650" elapsed="0.000506"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:17.500513" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:17.500677" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:17.500817" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:17.494342" elapsed="0.006513"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.501739" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.501117" elapsed="0.000690"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.504982" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.502023" elapsed="0.003033"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.507803" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:17.505185" elapsed="0.002690"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.505154" elapsed="0.002753"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:17.511853" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:17.511922" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:17.508135" elapsed="0.003822"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:17.513802" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:17.512090" elapsed="0.001768"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.512041" elapsed="0.001840"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:17.513914" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:17.514124" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:17.514174" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 127 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:17.493089" elapsed="0.021109"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.516450" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:17.514782" elapsed="0.001715"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.514764" elapsed="0.001755"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.517081" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.516667" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.517633" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.517280" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:17.517745" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:53:17.517928" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:17.514407" elapsed="0.003547"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:17.518128" elapsed="0.000389"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:17.492168" elapsed="0.026413"/>
</kw>
<arg>f4.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:17.445677" elapsed="0.072961"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:17.438642" elapsed="0.080114"/>
</test>
<test id="s1-s3-s1-t122" name="Test Is Flow 5 Deleted" line="318">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:17.529902" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f5.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f5.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:17.530045" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:17.529761" elapsed="0.000328"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:17.530663" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc090a40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:17.530244" elapsed="0.000447"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.531184" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.530844" elapsed="0.000368"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.531640" level="INFO">${flow_id} = 128</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.531366" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.532107" level="INFO">${flow_priority} = 5</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.531819" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:17.534580" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:17.532284" elapsed="0.002328"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.535153" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.534775" elapsed="0.000424"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.535686" level="INFO">${flow_id} = 128</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.535357" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.536233" level="INFO">${flow_priority} = 5</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.535884" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.536752" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.536432" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.537296" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.536952" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.537828" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc090a40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.537497" elapsed="0.000375"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:17.529430" elapsed="0.008498"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.538488" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.538097" elapsed="0.000422"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.538919" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;128&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;5&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;5&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.538672" elapsed="0.000346"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.546792" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:17.546484" elapsed="0.000336"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:17.552173" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=128?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=128?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:17.552375" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=128?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:17.552484" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:17.546952" elapsed="0.005559"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.552924" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.552669" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.555198" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.553133" elapsed="0.002117"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:17.557056" elapsed="0.000045"/>
</return>
<status status="PASS" start="2026-05-25T01:53:17.555324" elapsed="0.001817"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.555302" elapsed="0.001864"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:17.557307" elapsed="0.000023"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:17.557532" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:17.557399" elapsed="0.000184"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:17.557382" elapsed="0.000224"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.557638" elapsed="0.000015"/>
</return>
<msg time="2026-05-25T01:53:17.559288" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:17.559333" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 128 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:17.546160" elapsed="0.013196"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.562179" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:17.559898" elapsed="0.002348"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.559880" elapsed="0.002399"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.563127" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.562496" elapsed="0.000673"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.563936" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.563415" elapsed="0.000560"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:17.564049" elapsed="0.000063"/>
</return>
<msg time="2026-05-25T01:53:17.564336" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:17.559565" elapsed="0.004808"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:17.564606" elapsed="0.000590"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:17.545565" elapsed="0.019724"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.574103" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:17.573794" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:17.579728" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:17.579871" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:17.579967" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:17.574262" elapsed="0.005730"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.580430" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.580178" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.582756" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.580620" elapsed="0.002188"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.584910" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:17.582878" elapsed="0.002102"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.582858" elapsed="0.002155"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:17.589014" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:17.589101" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:17.585238" elapsed="0.003899"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:17.591790" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:17.589250" elapsed="0.002621"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.589223" elapsed="0.002683"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:17.591953" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:53:17.592257" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:17.592322" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 128 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:17.573419" elapsed="0.018936"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.595517" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:17.593174" elapsed="0.002406"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.593148" elapsed="0.002463"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.596383" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.595815" elapsed="0.000595"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.596922" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.596573" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:17.596998" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:17.597190" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:17.592666" elapsed="0.004549"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:17.597372" elapsed="0.000382"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:17.572801" elapsed="0.025017"/>
</kw>
<arg>f5.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:17.526049" elapsed="0.071825"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:17.519018" elapsed="0.078966"/>
</test>
<test id="s1-s3-s1-t123" name="Test Is Flow 6 Deleted" line="320">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:17.608931" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f6.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f6.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:17.609063" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:17.608796" elapsed="0.000315"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:17.609665" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc091580&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:17.609264" elapsed="0.000429"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.610179" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.609847" elapsed="0.000359"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.610631" level="INFO">${flow_id} = 129</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.610360" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.611103" level="INFO">${flow_priority} = 6</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.610809" elapsed="0.000320"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:17.612100" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:17.611286" elapsed="0.000846"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.612625" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.612291" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.613168" level="INFO">${flow_id} = 129</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.612825" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.613695" level="INFO">${flow_priority} = 6</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.613367" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.614216" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.613890" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.614733" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.614414" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.615297" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc091580&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.614929" elapsed="0.000409"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:17.608467" elapsed="0.006928"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.615925" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.615545" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.616364" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;129&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;6&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;6&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.616122" elapsed="0.000301"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.624185" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:17.623871" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:17.630048" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=129?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=129?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:17.630267" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=129?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:17.630398" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:17.624342" elapsed="0.006082"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.630838" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.630586" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.633622" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.631026" elapsed="0.002667"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:17.636285" elapsed="0.000048"/>
</return>
<status status="PASS" start="2026-05-25T01:53:17.633790" elapsed="0.002599"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.633762" elapsed="0.002664"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:17.636635" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:17.636964" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:17.636766" elapsed="0.000274"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:17.636742" elapsed="0.000352"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.637144" elapsed="0.000021"/>
</return>
<msg time="2026-05-25T01:53:17.639531" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:17.639594" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 129 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:17.623554" elapsed="0.016072"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.642846" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:17.640459" elapsed="0.002454"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.640434" elapsed="0.002511"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.643802" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.643235" elapsed="0.000605"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.644529" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.644098" elapsed="0.000457"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:17.644605" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:17.644782" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:17.639915" elapsed="0.004893"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:17.644963" elapsed="0.000400"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:17.622957" elapsed="0.022470"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.653138" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:17.652827" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:17.658887" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:17.658997" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:17.659139" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:17.653294" elapsed="0.005873"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.659578" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.659326" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.661903" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.659765" elapsed="0.002228"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.663843" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:17.662079" elapsed="0.001812"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.662045" elapsed="0.001868"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:17.667622" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:17.667686" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:17.664052" elapsed="0.003666"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:17.670379" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:17.667824" elapsed="0.002632"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.667798" elapsed="0.002692"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:17.670536" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:53:17.670804" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:17.670864" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 129 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:17.652454" elapsed="0.018441"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.673475" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:17.671696" elapsed="0.001823"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.671671" elapsed="0.001870"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.674097" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.673686" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.674641" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.674288" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:17.674716" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:17.674894" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:17.671236" elapsed="0.003683"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:17.675100" elapsed="0.000399"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:17.651831" elapsed="0.023733"/>
</kw>
<arg>f6.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:17.605218" elapsed="0.070403"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:17.598252" elapsed="0.077479"/>
</test>
<test id="s1-s3-s1-t124" name="Test Is Flow 7 Deleted" line="322">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:17.686744" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f7.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f7.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:17.686874" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:17.686609" elapsed="0.000293"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:17.687508" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ed3f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:17.687093" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.687968" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.687689" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.688437" level="INFO">${flow_id} = 130</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.688164" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.688885" level="INFO">${flow_priority} = 7</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.688616" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:17.689958" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:17.689062" elapsed="0.000927"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.690497" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.690163" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.691084" level="INFO">${flow_id} = 130</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.690732" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.691623" level="INFO">${flow_priority} = 7</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.691293" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.692146" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.691817" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.692663" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.692345" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.693196" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ed3f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.692860" elapsed="0.000378"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:17.686281" elapsed="0.007013"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.693819" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.693443" elapsed="0.000407"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.694265" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;130&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;15&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;7&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf7&lt;/flow-name&gt;
    &lt;priority&gt;7&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.693999" elapsed="0.000328"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.702353" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:17.702033" elapsed="0.000347"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:17.708400" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=130?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=130?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:17.708597" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=130?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:17.708694" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:17.702510" elapsed="0.006210"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.709153" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.708881" elapsed="0.000320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.711421" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.709347" elapsed="0.002124"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:17.713569" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:53:17.711540" elapsed="0.002164"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.711521" elapsed="0.002222"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:17.713944" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:17.714285" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:17.714093" elapsed="0.000265"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:17.714048" elapsed="0.000342"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.714435" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:53:17.716701" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:17.716764" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 130 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:17.701711" elapsed="0.015086"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.719785" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:17.717572" elapsed="0.002278"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.717546" elapsed="0.002335"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.720662" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.720108" elapsed="0.000592"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.721439" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.720927" elapsed="0.000548"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:17.721544" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:53:17.721790" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:17.717106" elapsed="0.004719"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:17.722043" elapsed="0.000557"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:17.701151" elapsed="0.021540"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.731016" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:17.730720" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:17.736104" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:17.736219" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:17.736314" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:17.731217" elapsed="0.005122"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.736917" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.736498" elapsed="0.000466"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.739143" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.737130" elapsed="0.002067"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.741501" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:17.739267" elapsed="0.002300"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.739247" elapsed="0.002351"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:17.745435" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:17.745500" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:17.741798" elapsed="0.003735"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:17.748023" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:17.745640" elapsed="0.002480"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.745613" elapsed="0.002542"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:17.748249" elapsed="0.000041"/>
</return>
<msg time="2026-05-25T01:53:17.748525" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:17.748587" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 130 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:17.730340" elapsed="0.018278"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.751626" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:17.749397" elapsed="0.002291"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.749372" elapsed="0.002347"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.752464" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.751923" elapsed="0.000568"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.753005" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.752654" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:17.753097" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:17.753277" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:17.748910" elapsed="0.004393"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:17.753459" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:17.729716" elapsed="0.024190"/>
</kw>
<arg>f7.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:17.683015" elapsed="0.070948"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:17.675973" elapsed="0.078116"/>
</test>
<test id="s1-s3-s1-t125" name="Test Is Flow 8 Deleted" line="324">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:17.765188" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f8.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f8.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:17.765319" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:17.765037" elapsed="0.000311"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:17.765921" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc306390&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:17.765501" elapsed="0.000449"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.766399" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.766119" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.766850" level="INFO">${flow_id} = 131</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.766579" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.767327" level="INFO">${flow_priority} = 8</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.767027" elapsed="0.000326"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:17.768439" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:17.767504" elapsed="0.000966"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.768962" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.768628" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.769500" level="INFO">${flow_id} = 131</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.769175" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.770019" level="INFO">${flow_priority} = 8</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.769693" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.770539" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.770227" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.771053" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.770734" elapsed="0.000441"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.771652" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc306390&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.771329" elapsed="0.000365"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:17.764709" elapsed="0.007040"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.772298" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.771899" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.772721" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;131&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:00&lt;/address&gt;
                &lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;8&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf8&lt;/flow-name&gt;
    &lt;priority&gt;8&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.772480" elapsed="0.000305"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.780469" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:17.780171" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:17.785342" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=131?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=131?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:17.785533" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=131?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:17.785632" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:17.780627" elapsed="0.005031"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.786085" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.785819" elapsed="0.000316"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.788329" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.786282" elapsed="0.002098"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:17.790184" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-05-25T01:53:17.788449" elapsed="0.001800"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.788429" elapsed="0.001844"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:17.790414" elapsed="0.000021"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:17.790638" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:17.790504" elapsed="0.000185"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:17.790488" elapsed="0.000223"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.790743" elapsed="0.000015"/>
</return>
<msg time="2026-05-25T01:53:17.792544" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:17.792606" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 131 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:17.779840" elapsed="0.012798"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.795679" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:17.793469" elapsed="0.002273"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.793444" elapsed="0.002329"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.796565" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.795977" elapsed="0.000626"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.797341" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.796829" elapsed="0.000549"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:17.797449" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:53:17.797696" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:17.792976" elapsed="0.004755"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:17.797949" elapsed="0.000561"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:17.779286" elapsed="0.019314"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.807010" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:17.806715" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:17.812311" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:17.812421" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:17.812525" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:17.807192" elapsed="0.005359"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.812971" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.812715" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.815145" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.813175" elapsed="0.002022"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.816985" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:17.815266" elapsed="0.001766"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.815247" elapsed="0.001807"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:17.819841" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:17.819887" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:17.817213" elapsed="0.002698"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:17.822083" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:17.819986" elapsed="0.002178"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.819967" elapsed="0.002231"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:17.822244" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:53:17.822511" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:17.822572" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 131 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:17.806340" elapsed="0.016263"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.825603" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:17.823396" elapsed="0.002269"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.823371" elapsed="0.002325"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.826483" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.825897" elapsed="0.000624"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.827371" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.826810" elapsed="0.000597"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:17.827479" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:53:17.827728" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:17.822900" elapsed="0.004863"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:17.827982" elapsed="0.000452"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:17.805711" elapsed="0.022788"/>
</kw>
<arg>f8.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:17.761446" elapsed="0.067108"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:17.754408" elapsed="0.074258"/>
</test>
<test id="s1-s3-s1-t126" name="Test Is Flow 9 Deleted" line="326">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:17.840311" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f9.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f9.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:17.840445" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:17.840171" elapsed="0.000303"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:17.841048" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e7380&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:17.840626" elapsed="0.000466"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.841531" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.841249" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.841981" level="INFO">${flow_id} = 132</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.841711" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.842452" level="INFO">${flow_priority} = 9</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.842181" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:17.843384" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:17.842627" elapsed="0.000788"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.843905" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.843573" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.844446" level="INFO">${flow_id} = 132</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.844118" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.844964" level="INFO">${flow_priority} = 9</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.844639" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.845483" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.845171" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.846007" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.845688" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.846540" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e7380&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.846221" elapsed="0.000360"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:17.839822" elapsed="0.006815"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.847196" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.846786" elapsed="0.000479"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.847667" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;132&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;9&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf9&lt;/flow-name&gt;
    &lt;priority&gt;9&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.847424" elapsed="0.000306"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.855486" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:17.855158" elapsed="0.000356"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:17.861458" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=132?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=132?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:17.861732" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=132?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:17.861885" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:17.855648" elapsed="0.006273"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.862524" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.862165" elapsed="0.000422"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.865870" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.862787" elapsed="0.003154"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:17.868583" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-05-25T01:53:17.866041" elapsed="0.002636"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.866011" elapsed="0.002701"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:17.868912" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:17.869256" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:17.869039" elapsed="0.000291"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:17.869016" elapsed="0.000346"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.869408" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:17.871894" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:17.871959" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 132 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:17.854755" elapsed="0.017237"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.874967" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:17.872779" elapsed="0.002252"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.872754" elapsed="0.002307"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.875899" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.875342" elapsed="0.000595"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.876594" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.876211" elapsed="0.000441"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:17.876704" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:17.876884" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:17.872312" elapsed="0.004598"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:17.877080" elapsed="0.000388"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:17.854195" elapsed="0.023337"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.885265" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:17.884948" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:17.891453" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:17.891566" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:17.891660" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:17.885423" elapsed="0.006262"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.892118" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.891843" elapsed="0.000326"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.894270" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.892312" elapsed="0.002008"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.896180" elapsed="0.000026"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:17.894388" elapsed="0.001874"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.894369" elapsed="0.001932"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:17.900155" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:17.900220" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:17.896506" elapsed="0.003746"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:17.902957" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:17.900358" elapsed="0.002677"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.900332" elapsed="0.002783"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:17.903170" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:53:17.903440" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:17.903500" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 132 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:17.884569" elapsed="0.018963"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.905903" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:17.904328" elapsed="0.001620"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.904306" elapsed="0.001665"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.906527" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.906131" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.907087" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.906715" elapsed="0.000401"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:17.907167" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:17.907347" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:17.903822" elapsed="0.003550"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:17.907567" elapsed="0.000386"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:17.883941" elapsed="0.024076"/>
</kw>
<arg>f9.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:17.836406" elapsed="0.071683"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:17.829017" elapsed="0.079189"/>
</test>
<test id="s1-s3-s1-t127" name="Test Is Flow 10 Deleted" line="328">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:17.919534" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f10.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f10.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:17.919664" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:17.919400" elapsed="0.000293"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:17.920273" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7f100&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:17.919843" elapsed="0.000457"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.920726" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.920452" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.921192" level="INFO">${flow_id} = 133</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.920902" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.921635" level="INFO">${flow_priority} = 10</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.921369" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:17.922552" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:17.921809" elapsed="0.000773"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.923103" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.922740" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.923625" level="INFO">${flow_id} = 133</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.923303" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.924159" level="INFO">${flow_priority} = 10</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.923817" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.924664" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.924354" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.925190" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.924858" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.925703" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7f100&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:17.925386" elapsed="0.000358"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:17.919050" elapsed="0.006748"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.926339" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.925944" elapsed="0.000425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.926758" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;133&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;10&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf10&lt;/flow-name&gt;
    &lt;priority&gt;10&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.926519" elapsed="0.000345"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.934864" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:17.934566" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:17.940495" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=133?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=133?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:17.940686" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=133?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:17.940784" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:17.935022" elapsed="0.005787"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.941250" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.940967" elapsed="0.000328"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.943492" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.941439" elapsed="0.002104"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:17.945857" elapsed="0.000038"/>
</return>
<status status="PASS" start="2026-05-25T01:53:17.943612" elapsed="0.002335"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.943592" elapsed="0.002389"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:17.946198" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:17.946512" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:17.946325" elapsed="0.000259"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:17.946303" elapsed="0.000312"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.946659" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:17.948919" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:17.948981" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 133 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:17.934100" elapsed="0.014913"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.952013" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:17.949789" elapsed="0.002307"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.949764" elapsed="0.002372"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.952743" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.952348" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.953296" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.952931" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:17.953371" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:17.953548" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:17.949327" elapsed="0.004246"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:17.953728" elapsed="0.000397"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:17.933530" elapsed="0.020658"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.961867" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:17.961572" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:17.967361" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:17.967509" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:17.967605" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:17.962022" elapsed="0.005609"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.968042" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.967791" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.971882" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:17.968255" elapsed="0.003678"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.974455" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:17.972003" elapsed="0.002519"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.971984" elapsed="0.002568"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:17.978410" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:17.978490" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:17.974744" elapsed="0.003782"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:17.980844" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:17.978639" elapsed="0.002260"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.978612" elapsed="0.002310"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:17.980955" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:17.981165" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:17.981209" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 133 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:17.961194" elapsed="0.020038"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:17.983379" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:17.981769" elapsed="0.001656"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:17.981752" elapsed="0.001694"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.983991" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.983593" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:17.984571" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:17.984207" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:17.984647" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:17.984823" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:17.981442" elapsed="0.003407"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:17.985003" elapsed="0.000401"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:17.960562" elapsed="0.024906"/>
</kw>
<arg>f10.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:17.915856" elapsed="0.069668"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:17.908561" elapsed="0.077070"/>
</test>
<test id="s1-s3-s1-t128" name="Test Is Flow 11 Deleted" line="330">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:17.997249" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f11.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f11.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:17.997383" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:17.997108" elapsed="0.000304"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:17.997991" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e7b50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:17.997565" elapsed="0.000454"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.998512" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.998228" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.998968" level="INFO">${flow_id} = 134</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.998694" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:17.999469" level="INFO">${flow_priority} = 11</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:17.999192" elapsed="0.000303"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:18.000575" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:17.999646" elapsed="0.000961"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.001115" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.000767" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.001660" level="INFO">${flow_id} = 134</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.001329" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.002208" level="INFO">${flow_priority} = 11</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.001856" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.002717" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.002405" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.003267" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.002913" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.003783" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e7b50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.003463" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:17.996761" elapsed="0.007118"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.004436" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.004029" elapsed="0.000437"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.004860" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;134&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;1&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;27&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv4-match&gt;
            &lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;
            &lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;
        &lt;/icmpv4-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;11&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf11&lt;/flow-name&gt;
    &lt;priority&gt;11&lt;/priority&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.004618" elapsed="0.000306"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.012600" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:18.012291" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:18.018124" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=134?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=134?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:18.018348" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=134?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:18.018480" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:18.012766" elapsed="0.005740"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.018920" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.018668" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.021688" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.019161" elapsed="0.002597"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:18.024301" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-05-25T01:53:18.021858" elapsed="0.002537"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.021829" elapsed="0.002603"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:18.024631" elapsed="0.000037"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:18.024993" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:18.024789" elapsed="0.000297"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:18.024760" elapsed="0.000361"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.025167" elapsed="0.000021"/>
</return>
<msg time="2026-05-25T01:53:18.027466" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:18.027530" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 134 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:18.011953" elapsed="0.015609"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.029944" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.028347" elapsed="0.001643"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.028326" elapsed="0.001686"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.030571" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.030175" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.031138" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.030761" elapsed="0.000409"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:18.031221" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:18.031397" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:18.027854" elapsed="0.003568"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:18.031578" elapsed="0.000385"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:18.011398" elapsed="0.020628"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.039938" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:18.039633" elapsed="0.000332"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:18.046783" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:18.046894" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:18.046999" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:18.040118" elapsed="0.006906"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.047492" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.047238" elapsed="0.000302"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.050313" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.047697" elapsed="0.002742"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.053003" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.050539" elapsed="0.002551"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.050512" elapsed="0.002612"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:18.056853" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:18.056909" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:18.053325" elapsed="0.003611"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:18.058746" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:18.057018" elapsed="0.001785"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.056998" elapsed="0.001829"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:18.058861" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:18.059055" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:18.059132" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 134 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:18.039148" elapsed="0.020012"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.061382" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.059765" elapsed="0.001664"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.059745" elapsed="0.001706"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.062002" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.061601" elapsed="0.000429"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.062569" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.062214" elapsed="0.000382"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:18.062646" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:18.062826" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:18.059398" elapsed="0.003454"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:18.063010" elapsed="0.000433"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:18.038491" elapsed="0.025016"/>
</kw>
<arg>f11.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:17.993451" elapsed="0.070112"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:17.986026" elapsed="0.077647"/>
</test>
<test id="s1-s3-s1-t129" name="Test Is Flow 14 Deleted" line="332">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:18.075325" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f14.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f14.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:18.075464" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:18.075179" elapsed="0.000313"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:18.076064" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc305670&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:18.075643" elapsed="0.000466"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.076551" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.076264" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.076998" level="INFO">${flow_id} = 137</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.076729" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.077461" level="INFO">${flow_priority} = 14</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.077190" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:18.078563" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:18.077637" elapsed="0.000957"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.079115" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.078753" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.079683" level="INFO">${flow_id} = 137</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.079356" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.080222" level="INFO">${flow_priority} = 14</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.079879" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.080741" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.080425" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.081276" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.080940" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.081796" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc305670&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.081475" elapsed="0.000362"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:18.074801" elapsed="0.007091"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.082445" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.082042" elapsed="0.000434"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.082867" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;137&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x806&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;arp-op&gt;1&lt;/arp-op&gt;
        &lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;
        &lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;
        &lt;arp-source-hardware-address&gt;
            &lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;
        &lt;/arp-source-hardware-address&gt;
        &lt;arp-target-hardware-address&gt;
            &lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;
        &lt;/arp-target-hardware-address&gt;
    &lt;/match&gt;
    &lt;cookie&gt;14&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf14&lt;/flow-name&gt;
    &lt;priority&gt;14&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.082627" elapsed="0.000303"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.090656" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:18.090359" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:18.095801" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=137?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=137?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:18.095998" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=137?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:18.096117" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:18.090813" elapsed="0.005335"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.096567" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.096309" elapsed="0.000313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.098821" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.096781" elapsed="0.002091"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:18.101153" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-05-25T01:53:18.098974" elapsed="0.002273"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.098952" elapsed="0.002336"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:18.101507" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:18.101825" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:18.101636" elapsed="0.000260"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:18.101613" elapsed="0.000315"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.101973" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:18.104270" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:18.104334" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 137 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:18.090010" elapsed="0.014356"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.107351" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.105137" elapsed="0.002278"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.105111" elapsed="0.002335"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.108235" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.107650" elapsed="0.000613"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.108771" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.108426" elapsed="0.000371"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:18.108846" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:18.109023" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:18.104657" elapsed="0.004391"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:18.109220" elapsed="0.000380"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:18.089454" elapsed="0.020208"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.117604" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:18.117304" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:18.124336" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:18.124447" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:18.124552" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:18.117761" elapsed="0.006818"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.124993" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.124738" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.127227" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.125206" elapsed="0.002073"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.129522" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.127349" elapsed="0.002240"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.127329" elapsed="0.002290"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:18.133407" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:18.133470" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:18.129815" elapsed="0.003687"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:18.136015" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:18.133609" elapsed="0.002559"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.133583" elapsed="0.002621"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:18.136251" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:53:18.136523" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:18.136584" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 137 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:18.116886" elapsed="0.019729"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.139652" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.137393" elapsed="0.002322"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.137368" elapsed="0.002378"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.140499" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.139953" elapsed="0.000572"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.141041" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.140690" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:18.141134" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:18.141313" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:18.136910" elapsed="0.004429"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:18.141495" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:18.116270" elapsed="0.025673"/>
</kw>
<arg>f14.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:18.071559" elapsed="0.070440"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:18.064110" elapsed="0.078021"/>
</test>
<test id="s1-s3-s1-t130" name="Test Is Flow 15 Deleted" line="334">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:18.153532" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f15.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f15.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:18.153662" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:18.153397" elapsed="0.000297"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:18.154273" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1dd50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:18.153849" elapsed="0.000452"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.154732" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.154455" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.155233" level="INFO">${flow_id} = 138</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.154912" elapsed="0.000347"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.155681" level="INFO">${flow_priority} = 15</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.155412" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:18.156526" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:18.155854" elapsed="0.000703"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.157045" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.156714" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.157585" level="INFO">${flow_id} = 138</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.157264" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.158143" level="INFO">${flow_priority} = 15</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.157797" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.158665" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.158339" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.159263" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.158901" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.159783" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1dd50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.159462" elapsed="0.000363"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:18.153050" elapsed="0.006830"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.160435" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.160032" elapsed="0.000433"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.160859" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;138&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;15&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf15&lt;/flow-name&gt;
    &lt;priority&gt;15&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.160618" elapsed="0.000303"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.168611" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:18.168310" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:18.173984" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=138?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=138?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:18.174196" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=138?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:18.174305" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:18.168768" elapsed="0.005563"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.174748" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.174491" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.177627" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.174934" elapsed="0.002764"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:18.180254" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:53:18.177797" elapsed="0.002546"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.177769" elapsed="0.002608"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:18.180573" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:18.180885" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:18.180700" elapsed="0.000256"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:18.180676" elapsed="0.000311"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.181031" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:53:18.183416" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:18.183479" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 138 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:18.167975" elapsed="0.015536"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.185975" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.184352" elapsed="0.001668"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.184330" elapsed="0.001712"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.186608" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.186211" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.187185" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.186797" elapsed="0.000419"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:18.187275" elapsed="0.000033"/>
</return>
<msg time="2026-05-25T01:53:18.187483" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:18.183853" elapsed="0.003660"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:18.187693" elapsed="0.000417"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:18.167420" elapsed="0.020757"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.195917" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:18.195622" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:18.201374" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:18.201525" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:18.201657" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:18.196109" elapsed="0.005583"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.202291" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.201917" elapsed="0.000437"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.205346" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.202552" elapsed="0.002864"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.207941" elapsed="0.000026"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.205512" elapsed="0.002512"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.205485" elapsed="0.002576"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:18.211785" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:18.211849" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:18.208286" elapsed="0.003595"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:18.214616" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:18.211985" elapsed="0.002709"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.211960" elapsed="0.002766"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:18.214772" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:53:18.215038" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:18.215132" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 138 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:18.195247" elapsed="0.019926"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.218209" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.215967" elapsed="0.002305"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.215941" elapsed="0.002362"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.219178" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.218510" elapsed="0.000722"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.219955" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.219463" elapsed="0.000528"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:18.220087" elapsed="0.000052"/>
</return>
<msg time="2026-05-25T01:53:18.220326" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:18.215482" elapsed="0.004869"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:18.220507" elapsed="0.000407"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:18.194600" elapsed="0.026379"/>
</kw>
<arg>f15.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:18.149551" elapsed="0.071483"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:18.142521" elapsed="0.078639"/>
</test>
<test id="s1-s3-s1-t131" name="Test Is Flow 16 Deleted" line="336">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:18.232097" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f16.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f16.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:18.232230" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:18.231947" elapsed="0.000311"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:18.232811" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bfc40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:18.232408" elapsed="0.000431"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.233285" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.232989" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.233730" level="INFO">${flow_id} = 139</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.233461" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.234193" level="INFO">${flow_priority} = 16</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.233907" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:18.235048" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:18.234383" elapsed="0.000712"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.235598" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.235266" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.236130" level="INFO">${flow_id} = 139</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.235793" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.236661" level="INFO">${flow_priority} = 16</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.236329" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.237182" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.236855" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.237699" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.237380" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.238239" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bfc40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.237903" elapsed="0.000378"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:18.231619" elapsed="0.006718"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.238868" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.238486" elapsed="0.000448"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.239374" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    &lt;priority&gt;16&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.239103" elapsed="0.000332"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.247325" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:18.246996" elapsed="0.000356"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:18.252648" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:18.252846" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:18.252945" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:18.247483" elapsed="0.005488"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.253416" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.253159" elapsed="0.000303"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.255674" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.253608" elapsed="0.002117"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:18.257569" elapsed="0.000033"/>
</return>
<status status="PASS" start="2026-05-25T01:53:18.255796" elapsed="0.001848"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.255775" elapsed="0.001898"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:18.257848" elapsed="0.000027"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:18.258141" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:18.257957" elapsed="0.000253"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:18.257938" elapsed="0.000302"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.258277" elapsed="0.000018"/>
</return>
<msg time="2026-05-25T01:53:18.260309" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:18.260384" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 139 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:18.246681" elapsed="0.013741"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.264004" elapsed="0.000029"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.261323" elapsed="0.002785"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.261294" elapsed="0.002856"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.265041" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.264403" elapsed="0.000711"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.265950" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.265381" elapsed="0.000614"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:18.266161" elapsed="0.000054"/>
</return>
<msg time="2026-05-25T01:53:18.266455" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:18.260767" elapsed="0.005724"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:18.266713" elapsed="0.000560"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:18.246127" elapsed="0.021211"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.275010" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:18.274708" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:18.280426" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:18.280549" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:18.280645" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:18.275217" elapsed="0.005454"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.281108" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.280834" elapsed="0.000325"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.283472" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.281306" elapsed="0.002218"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.285823" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.283594" elapsed="0.002295"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.283575" elapsed="0.002345"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:18.289667" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:18.289731" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:18.286136" elapsed="0.003627"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:18.292252" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:18.289870" elapsed="0.002438"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.289844" elapsed="0.002488"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:18.292365" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:18.292557" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:18.292601" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 139 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:18.274330" elapsed="0.018294"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.294754" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.293187" elapsed="0.001612"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.293170" elapsed="0.001651"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.295391" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.294966" elapsed="0.000451"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.295930" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.295580" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:18.296006" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:18.296203" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:18.292834" elapsed="0.003395"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:18.296385" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:18.273703" elapsed="0.023168"/>
</kw>
<arg>f16.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:18.228362" elapsed="0.068567"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:18.221411" elapsed="0.075638"/>
</test>
<test id="s1-s3-s1-t132" name="Test Is Flow 17 Deleted" line="338">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:18.308080" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f17.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f17.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:18.308227" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:18.307928" elapsed="0.000329"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:18.308821" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc76a70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:18.308409" elapsed="0.000440"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.309306" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.309003" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.309754" level="INFO">${flow_id} = 140</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.309485" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.310216" level="INFO">${flow_priority} = 17</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.309931" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:18.311242" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:18.310391" elapsed="0.000883"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.311775" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.311436" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.312326" level="INFO">${flow_id} = 140</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.311976" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.312853" level="INFO">${flow_priority} = 17</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.312524" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.313382" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.313050" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.313900" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.313581" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.314437" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc76a70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.314115" elapsed="0.000363"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:18.307598" elapsed="0.006935"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.315063" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.314683" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.315521" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    &lt;priority&gt;17&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;protocol-match-fields&gt;
            &lt;mpls-label&gt;567&lt;/mpls-label&gt;
            &lt;mpls-tc&gt;3&lt;/mpls-tc&gt;
            &lt;mpls-bos&gt;1&lt;/mpls-bos&gt;
        &lt;/protocol-match-fields&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.315281" elapsed="0.000334"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.323337" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:18.323004" elapsed="0.000360"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:18.328738" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=140?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=140?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:18.329014" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=140?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:18.329185" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:18.323495" elapsed="0.005726"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.329789" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.329440" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.332929" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.330048" elapsed="0.002951"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:18.335576" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:53:18.333127" elapsed="0.002540"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.333096" elapsed="0.002605"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:18.335898" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:18.336242" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:18.336024" elapsed="0.000278"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:18.336001" elapsed="0.000324"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.336356" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:53:18.337957" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:18.338002" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 140 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:18.322689" elapsed="0.015336"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.340177" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.338576" elapsed="0.001655"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.338559" elapsed="0.001693"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.340789" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.340397" elapsed="0.000419"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.341342" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.340977" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:18.341416" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:18.341591" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:18.338247" elapsed="0.003368"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:18.341771" elapsed="0.000396"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:18.322132" elapsed="0.020099"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.349970" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:18.349674" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:18.356539" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:18.356686" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:18.356783" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:18.350140" elapsed="0.006669"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.357323" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.356968" elapsed="0.000419"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.360601" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.357590" elapsed="0.003083"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.363247" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.360772" elapsed="0.002545"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.360744" elapsed="0.002604"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:18.367045" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:18.367171" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:18.363543" elapsed="0.003667"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:18.369259" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:18.367319" elapsed="0.001996"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.367292" elapsed="0.002047"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:18.369372" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:18.369567" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:18.369610" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 140 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:18.349299" elapsed="0.020334"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.371778" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.370199" elapsed="0.001626"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.370180" elapsed="0.001667"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.372453" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.372010" elapsed="0.000471"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.373001" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.372645" elapsed="0.000382"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:18.373098" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:53:18.373280" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:18.369846" elapsed="0.003459"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:18.373463" elapsed="0.000383"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:18.348673" elapsed="0.025238"/>
</kw>
<arg>f17.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:18.304235" elapsed="0.069735"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:18.297315" elapsed="0.076784"/>
</test>
<test id="s1-s3-s1-t133" name="Test Is Flow 18 Deleted" line="340">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:18.385521" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f18.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f18.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:18.385662" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:18.385383" elapsed="0.000308"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:18.386267" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc77d80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:18.385844" elapsed="0.000457"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.386898" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.386539" elapsed="0.000395"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.387454" level="INFO">${flow_id} = 141</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.387157" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.387912" level="INFO">${flow_priority} = 18</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.387636" elapsed="0.000302"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:18.390553" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:18.388109" elapsed="0.002476"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.391112" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.390747" elapsed="0.000430"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.391667" level="INFO">${flow_id} = 141</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.391337" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.392213" level="INFO">${flow_priority} = 18</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.391862" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.392744" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.392424" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.393283" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.392940" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.393808" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc77d80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.393480" elapsed="0.000370"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:18.385033" elapsed="0.008873"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.394457" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.394056" elapsed="0.000431"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.394880" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;18&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;18&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.394638" elapsed="0.000300"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.402744" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:18.402438" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:18.408397" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=141?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=141?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:18.408612" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=141?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:18.408747" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:18.402902" elapsed="0.005881"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.409268" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.408985" elapsed="0.000329"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.411532" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.409460" elapsed="0.002123"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:18.413445" elapsed="0.000033"/>
</return>
<status status="PASS" start="2026-05-25T01:53:18.411657" elapsed="0.001859"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.411634" elapsed="0.001907"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:18.413684" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:18.413910" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:18.413776" elapsed="0.000185"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:18.413759" elapsed="0.000225"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.414016" elapsed="0.000015"/>
</return>
<msg time="2026-05-25T01:53:18.415663" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:18.415708" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 141 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:18.402105" elapsed="0.013626"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.418618" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.416406" elapsed="0.002277"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.416372" elapsed="0.002341"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.419522" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.418917" elapsed="0.000644"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.420338" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.419790" elapsed="0.000593"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:18.420455" elapsed="0.000042"/>
</return>
<msg time="2026-05-25T01:53:18.420709" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:18.415940" elapsed="0.004805"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:18.420963" elapsed="0.000570"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:18.401520" elapsed="0.020103"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.430157" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:18.429840" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:18.437512" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:18.437627" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:18.437723" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:18.430316" elapsed="0.007433"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.438187" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.437908" elapsed="0.000325"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.440572" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.438376" elapsed="0.002296"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.442559" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.440763" elapsed="0.001847"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.440736" elapsed="0.001897"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:18.445925" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:18.445990" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:18.442774" elapsed="0.003248"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:18.448525" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:18.446150" elapsed="0.002452"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.446122" elapsed="0.002513"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:18.448681" elapsed="0.000041"/>
</return>
<msg time="2026-05-25T01:53:18.448955" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:18.449016" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 141 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:18.429462" elapsed="0.019586"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.452084" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.449841" elapsed="0.002321"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.449815" elapsed="0.002385"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.452799" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.452388" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.453354" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.452986" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:18.453429" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:18.453607" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:18.449372" elapsed="0.004260"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:18.453790" elapsed="0.000404"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:18.428829" elapsed="0.025430"/>
</kw>
<arg>f18.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:18.381762" elapsed="0.072554"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:18.374361" elapsed="0.080078"/>
</test>
<test id="s1-s3-s1-t134" name="Test Is Flow 19 Deleted" line="342">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:18.465693" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f19.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f19.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:18.465853" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:18.465546" elapsed="0.000335"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:18.466472" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc091c10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:18.466037" elapsed="0.000463"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.466938" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.466655" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.467436" level="INFO">${flow_id} = 142</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.467132" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.467888" level="INFO">${flow_priority} = 19</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.467615" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:18.468664" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:18.468081" elapsed="0.000614"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.469411" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.468854" elapsed="0.000600"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.469994" level="INFO">${flow_id} = 142</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.469663" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.470538" level="INFO">${flow_priority} = 19</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.470208" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.471046" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.470731" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.471608" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.471285" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.472146" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc091c10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.471806" elapsed="0.000382"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:18.465209" elapsed="0.007036"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.472794" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.472399" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.473252" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;19&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;19&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.472979" elapsed="0.000330"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.481036" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:18.480729" elapsed="0.000334"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:18.486148" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=142?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=142?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:18.486408" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=142?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:18.486509" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:18.481212" elapsed="0.005322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.486951" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.486696" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.489782" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.487187" elapsed="0.002669"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:18.492606" elapsed="0.000050"/>
</return>
<status status="PASS" start="2026-05-25T01:53:18.489968" elapsed="0.002746"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.489934" elapsed="0.002817"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:18.492963" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:18.493328" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:18.493124" elapsed="0.000336"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:18.493098" elapsed="0.000400"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.493547" elapsed="0.000021"/>
</return>
<msg time="2026-05-25T01:53:18.495999" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:18.496084" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 142 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:18.480404" elapsed="0.015716"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.498291" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.496702" elapsed="0.001635"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.496684" elapsed="0.001675"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.498913" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.498509" elapsed="0.000431"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.499485" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.499120" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:18.499561" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:18.499739" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:18.496357" elapsed="0.003408"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:18.499923" elapsed="0.000413"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:18.479818" elapsed="0.020584"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.508177" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:18.507861" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:18.514549" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:18.514662" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:18.514757" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:18.508335" elapsed="0.006447"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.515262" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.514944" elapsed="0.000364"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.518318" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.515452" elapsed="0.002941"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.521121" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.518495" elapsed="0.002698"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.518466" elapsed="0.002761"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:18.524990" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:18.525058" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:18.521433" elapsed="0.003681"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:18.527802" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:18.525228" elapsed="0.002655"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.525200" elapsed="0.002718"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:18.527966" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:53:18.528241" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:18.528286" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 142 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:18.507482" elapsed="0.020827"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.530502" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.528906" elapsed="0.001642"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.528887" elapsed="0.001683"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.531132" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.530717" elapsed="0.000453"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.531687" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.531335" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:18.531764" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:18.531941" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:18.528569" elapsed="0.003398"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:18.532142" elapsed="0.000392"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:18.506825" elapsed="0.025776"/>
</kw>
<arg>f19.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:18.461940" elapsed="0.070720"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:18.454794" elapsed="0.077992"/>
</test>
<test id="s1-s3-s1-t135" name="Test Is Flow 20 Deleted" line="344">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:18.543945" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f20.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f20.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:18.544112" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:18.543803" elapsed="0.000340"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:18.544703" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3eff60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:18.544297" elapsed="0.000434"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.545189" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.544887" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.545636" level="INFO">${flow_id} = 143</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.545368" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.546094" level="INFO">${flow_priority} = 20</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.545812" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:18.546849" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:18.546273" elapsed="0.000606"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.547414" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.547035" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.548135" level="INFO">${flow_id} = 143</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.547611" elapsed="0.000568"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.548674" level="INFO">${flow_priority} = 20</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.548338" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.549202" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.548871" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.549725" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.549405" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.550259" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3eff60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.549923" elapsed="0.000378"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:18.543472" elapsed="0.006925"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.550932" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.550549" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.551384" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;20&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;20&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xf0ff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.551131" elapsed="0.000309"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.559187" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:18.558845" elapsed="0.000370"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:18.565443" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=143?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=143?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:18.565804" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=143?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:18.565976" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:18.559348" elapsed="0.006670"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.566794" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.566326" elapsed="0.000557"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.570299" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.567209" elapsed="0.003166"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:18.573098" elapsed="0.000047"/>
</return>
<status status="PASS" start="2026-05-25T01:53:18.570482" elapsed="0.002719"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.570451" elapsed="0.002787"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:18.573448" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:18.573781" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:18.573581" elapsed="0.000275"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:18.573557" elapsed="0.000334"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.573937" elapsed="0.000021"/>
</return>
<msg time="2026-05-25T01:53:18.576317" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:18.576362" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 143 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:18.558529" elapsed="0.017856"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.578531" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.576950" elapsed="0.001626"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.576931" elapsed="0.001667"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.579175" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.578749" elapsed="0.000453"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.579713" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.579365" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:18.579830" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:18.580011" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:18.576598" elapsed="0.003438"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:18.580212" elapsed="0.000393"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:18.557954" elapsed="0.022715"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.588771" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:18.588459" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:18.595680" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:18.595793" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:18.595887" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:18.588929" elapsed="0.006984"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.596350" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.596095" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.598705" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.596547" elapsed="0.002210"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.600854" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.598827" elapsed="0.002100"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.598807" elapsed="0.002153"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:18.604779" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:18.604846" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:18.601188" elapsed="0.003692"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:18.607572" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:18.604997" elapsed="0.002657"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.604970" elapsed="0.002718"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:18.607736" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:53:18.608017" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:18.608102" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 143 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:18.588057" elapsed="0.020080"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.611355" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.608941" elapsed="0.002482"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.608915" elapsed="0.002541"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.612249" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.611674" elapsed="0.000602"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.612795" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.612445" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:18.612871" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:18.613047" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:18.608453" elapsed="0.004634"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:18.613284" elapsed="0.000389"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:18.587398" elapsed="0.026340"/>
</kw>
<arg>f20.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:18.540200" elapsed="0.073595"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:18.533108" elapsed="0.080803"/>
</test>
<test id="s1-s3-s1-t136" name="Test Is Flow 21 Deleted" line="346">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:18.624954" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:18.625117" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:18.624817" elapsed="0.000330"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:18.625729" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e7150&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:18.625299" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.626205" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.625910" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.626652" level="INFO">${flow_id} = 144</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.626383" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.627112" level="INFO">${flow_priority} = 21</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.626828" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:18.628202" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:18.627302" elapsed="0.000932"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.628726" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.628392" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.629273" level="INFO">${flow_id} = 144</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.628923" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.629796" level="INFO">${flow_priority} = 21</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.629468" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.630327" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.629991" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.630846" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.630525" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.631409" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e7150&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.631044" elapsed="0.000407"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:18.624492" elapsed="0.007013"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.632039" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.631655" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.632482" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.632240" elapsed="0.000340"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.640325" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:18.640002" elapsed="0.000350"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:18.647952" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:18.648227" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:18.648374" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:18.640483" elapsed="0.007928"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.649015" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.648646" elapsed="0.000457"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.652383" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.649317" elapsed="0.003140"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:18.655191" elapsed="0.000045"/>
</return>
<status status="PASS" start="2026-05-25T01:53:18.652563" elapsed="0.002729"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.652533" elapsed="0.002796"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:18.655537" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:18.655867" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:18.655668" elapsed="0.000273"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:18.655644" elapsed="0.000330"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.656021" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:18.658471" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:18.658537" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:18.639684" elapsed="0.018886"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.661255" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.659423" elapsed="0.001877"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.659397" elapsed="0.001925"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.661867" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.661469" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.662434" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.662055" elapsed="0.000405"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:18.662511" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:18.662688" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:18.658879" elapsed="0.003834"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:18.662870" elapsed="0.000410"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:18.639096" elapsed="0.024249"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.671209" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:18.670888" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:18.677363" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:18.677514" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:18.677610" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:18.671367" elapsed="0.006268"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.678047" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.677794" elapsed="0.000322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.681544" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.678324" elapsed="0.003296"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.684357" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.681724" elapsed="0.002704"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.681695" elapsed="0.002766"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:18.688516" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:18.688563" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:18.684666" elapsed="0.003921"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:18.690370" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:18.688665" elapsed="0.001761"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.688646" elapsed="0.001804"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:18.690483" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:18.690678" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:18.690722" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:18.670510" elapsed="0.020235"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.692892" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.691320" elapsed="0.001617"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.691302" elapsed="0.001658"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.693524" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.693121" elapsed="0.000431"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.694078" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.693714" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:18.694157" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:18.694336" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:18.690958" elapsed="0.003403"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:18.694518" elapsed="0.000382"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:18.669884" elapsed="0.025080"/>
</kw>
<arg>f21.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:18.621247" elapsed="0.073774"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:18.614231" elapsed="0.080927"/>
</test>
<test id="s1-s3-s1-t137" name="Test Is Flow 22 Deleted" line="348">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:18.706162" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f22.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f22.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:18.706302" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:18.706008" elapsed="0.000323"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:18.706901" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc306d40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:18.706484" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.707452" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.707142" elapsed="0.000337"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.707906" level="INFO">${flow_id} = 145</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.707633" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.708377" level="INFO">${flow_priority} = 22</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.708101" elapsed="0.000302"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:18.709447" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:18.708555" elapsed="0.000924"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.709978" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.709639" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.710519" level="INFO">${flow_id} = 145</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.710192" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.711043" level="INFO">${flow_priority} = 22</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.710716" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.711580" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.711264" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.712111" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.711777" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.712631" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc306d40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.712310" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:18.705681" elapsed="0.007046"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.713274" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.712876" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.713699" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;22&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;22&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.713458" elapsed="0.000302"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.721420" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:18.721118" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:18.727921" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=145?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=145?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:18.728156" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=145?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:18.728300" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:18.721575" elapsed="0.006751"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.728740" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.728488" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.730970" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.728929" elapsed="0.002092"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:18.733245" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-05-25T01:53:18.731107" elapsed="0.002236"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.731085" elapsed="0.002294"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:18.733587" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:18.733919" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:18.733720" elapsed="0.000274"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:18.733697" elapsed="0.000331"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.734096" elapsed="0.000023"/>
</return>
<msg time="2026-05-25T01:53:18.736520" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:18.736586" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 145 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:18.720788" elapsed="0.015832"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.739806" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.737437" elapsed="0.002437"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.737410" elapsed="0.002498"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.740730" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.740143" elapsed="0.000626"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.741550" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.741008" elapsed="0.000580"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:18.741661" elapsed="0.000041"/>
</return>
<msg time="2026-05-25T01:53:18.741923" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:18.736926" elapsed="0.005034"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:18.742211" elapsed="0.000569"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:18.720233" elapsed="0.022642"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.751007" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:18.750711" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:18.757668" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:18.757781" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:18.757886" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:18.751202" elapsed="0.006710"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.758352" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.758093" elapsed="0.000304"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.760708" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.758540" elapsed="0.002297"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.763582" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.760942" elapsed="0.002712"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.760913" elapsed="0.002775"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:18.767863" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:18.767930" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:18.763895" elapsed="0.004069"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:18.770713" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:18.768098" elapsed="0.002701"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.768049" elapsed="0.002786"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:18.770884" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:53:18.771195" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:18.771240" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 145 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:18.750332" elapsed="0.020931"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.773385" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.771805" elapsed="0.001625"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.771787" elapsed="0.001665"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.773994" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.773598" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.774553" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.774200" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:18.774629" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:18.774806" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:18.771476" elapsed="0.003356"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:18.774987" elapsed="0.000415"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:18.749710" elapsed="0.025755"/>
</kw>
<arg>f22.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:18.702438" elapsed="0.073083"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:18.695434" elapsed="0.080199"/>
</test>
<test id="s1-s3-s1-t138" name="Test Is Flow 23 Deleted" line="350">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:18.786592" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f23.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f23.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:18.786758" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:18.786456" elapsed="0.000331"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:18.787386" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bccc0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:18.786937" elapsed="0.000477"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.787844" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.787567" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.788313" level="INFO">${flow_id} = 146</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.788021" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.788757" level="INFO">${flow_priority} = 23</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.788489" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:18.789844" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:18.788931" elapsed="0.000945"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.790385" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.790033" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.790953" level="INFO">${flow_id} = 146</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.790626" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.791515" level="INFO">${flow_priority} = 23</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.791165" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.792025" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.791709" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.792559" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.792239" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.793091" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bccc0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.792755" elapsed="0.000379"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:18.786131" elapsed="0.007058"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.793718" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.793339" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.794161" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;23&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;23&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.793898" elapsed="0.000326"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.801907" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:18.801607" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:18.808767" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=146?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=146?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:18.809102" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=146?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:18.809250" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:18.802078" elapsed="0.007210"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.809891" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.809521" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.813236" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.810188" elapsed="0.003123"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:18.816056" elapsed="0.000065"/>
</return>
<status status="PASS" start="2026-05-25T01:53:18.813415" elapsed="0.002765"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.813385" elapsed="0.002834"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:18.816430" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:18.816760" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:18.816563" elapsed="0.000273"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:18.816539" elapsed="0.000331"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.816918" elapsed="0.000021"/>
</return>
<msg time="2026-05-25T01:53:18.819370" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:18.819437" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 146 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:18.801291" elapsed="0.018180"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.821809" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.820252" elapsed="0.001602"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.820235" elapsed="0.001641"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.822437" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.822020" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.822972" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.822625" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:18.823047" elapsed="0.000042"/>
</return>
<msg time="2026-05-25T01:53:18.823254" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:18.819777" elapsed="0.003502"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:18.823434" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:18.800722" elapsed="0.023157"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.831745" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:18.831448" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:18.839108" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:18.839247" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:18.839354" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:18.831900" elapsed="0.007480"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.839789" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.839538" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.844239" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.839977" elapsed="0.004374"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.848294" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.844503" elapsed="0.003838"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.844460" elapsed="0.003904"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:18.851167" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:18.851224" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:18.848502" elapsed="0.002745"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:18.853002" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:18.851323" elapsed="0.001783"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.851304" elapsed="0.001830"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:18.853168" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:18.853361" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:18.853405" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 146 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:18.831028" elapsed="0.022399"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.855569" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.853972" elapsed="0.001642"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.853955" elapsed="0.001682"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.856199" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.855784" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.856741" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.856390" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:18.856817" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:18.856992" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:18.853640" elapsed="0.003378"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:18.857195" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:18.830417" elapsed="0.027226"/>
</kw>
<arg>f23.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:18.782877" elapsed="0.074822"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:18.775885" elapsed="0.081929"/>
</test>
<test id="s1-s3-s1-t139" name="Test Is Flow 24 Deleted" line="352">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:18.870797" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f24.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f24.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:18.870955" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:18.870658" elapsed="0.000327"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:18.871638" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bd990&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:18.871155" elapsed="0.000511"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.872124" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.871822" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.872576" level="INFO">${flow_id} = 147</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.872305" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.873022" level="INFO">${flow_priority} = 24</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.872754" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:18.873756" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:18.873214" elapsed="0.000572"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.874290" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.873942" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.874804" level="INFO">${flow_id} = 147</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.874485" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.876098" level="INFO">${flow_priority} = 24</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.874995" elapsed="0.001253"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.876853" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.876485" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.877464" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.877138" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.877999" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bd990&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.877664" elapsed="0.000378"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:18.870321" elapsed="0.007794"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.878665" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.878269" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.879150" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;24&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;24&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                        &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.878853" elapsed="0.000382"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.886911" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:18.886611" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:18.893945" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=147?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=147?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:18.894299" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=147?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:18.894461" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:18.887079" elapsed="0.007420"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.895135" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.894738" elapsed="0.000483"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.898566" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.895436" elapsed="0.003206"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:18.901442" elapsed="0.000044"/>
</return>
<status status="PASS" start="2026-05-25T01:53:18.898750" elapsed="0.002792"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.898719" elapsed="0.002859"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:18.901788" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:18.902142" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:18.901922" elapsed="0.000298"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:18.901897" elapsed="0.000358"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.902303" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:18.904806" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:18.904873" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 147 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:18.886295" elapsed="0.018612"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.945759" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.905734" elapsed="0.040092"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.905707" elapsed="0.040143"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.946698" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.946181" elapsed="0.000548"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.947325" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.946899" elapsed="0.000455"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:18.947406" elapsed="0.000035"/>
</return>
<msg time="2026-05-25T01:53:18.947601" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:18.905238" elapsed="0.042390"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:18.947788" elapsed="0.000435"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:18.885712" elapsed="0.062577"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.956262" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:18.955939" elapsed="0.000350"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:18.964700" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:18.964843" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:18.964955" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:18.956423" elapsed="0.008557"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.965431" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.965174" elapsed="0.000302"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.967659" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:18.965621" elapsed="0.002091"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.971414" elapsed="0.000035"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.967788" elapsed="0.003735"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.967767" elapsed="0.003808"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:18.976867" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:18.976916" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:18.971884" elapsed="0.005056"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:18.978784" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:18.977019" elapsed="0.001822"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.977000" elapsed="0.001865"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:18.978898" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:53:18.979110" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:18.979155" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 147 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:18.955560" elapsed="0.023619"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:18.981520" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:18.979743" elapsed="0.001823"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:18.979725" elapsed="0.001863"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.982155" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.981738" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.982698" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:18.982347" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:18.982823" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:18.983004" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:18.979410" elapsed="0.003620"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:18.983220" elapsed="0.000390"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:18.954891" elapsed="0.028783"/>
</kw>
<arg>f24.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:18.865106" elapsed="0.118626"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:18.858087" elapsed="0.125773"/>
</test>
<test id="s1-s3-s1-t140" name="Test Is Flow 25 Deleted" line="354">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:18.995036" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f25.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f25.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:18.995252" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:18.994892" elapsed="0.000391"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:18.995867" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4be7a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:18.995436" elapsed="0.000459"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.996353" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.996049" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.996798" level="INFO">${flow_id} = 148</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.996529" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:18.997260" level="INFO">${flow_priority} = 25</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:18.996974" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:18.998188" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:18.997436" elapsed="0.000783"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.998712" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.998375" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.999254" level="INFO">${flow_id} = 148</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.998906" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:18.999771" level="INFO">${flow_priority} = 25</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.999447" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.000291" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:18.999963" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.000802" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.000485" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.001330" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4be7a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.000996" elapsed="0.000375"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:18.994563" elapsed="0.006862"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.001954" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.001575" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.002388" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;25&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;25&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.002149" elapsed="0.000338"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.010273" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:19.009951" elapsed="0.000349"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:19.020036" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=148?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=148?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:19.020422" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=148?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:19.020666" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:19.010429" elapsed="0.010294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.021689" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.021110" elapsed="0.000679"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.026796" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.022142" elapsed="0.004770"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:19.031012" elapsed="0.000092"/>
</return>
<status status="PASS" start="2026-05-25T01:53:19.027104" elapsed="0.004091"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.027027" elapsed="0.004272"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:19.031641" elapsed="0.000052"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:19.032227" elapsed="0.000040"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:19.031860" elapsed="0.000447"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:19.031820" elapsed="0.000515"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.032374" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:53:19.033978" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:19.034023" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 148 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:19.009634" elapsed="0.024412"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.036206" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.034615" elapsed="0.001637"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.034597" elapsed="0.001677"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.036817" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.036421" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.037378" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.037005" elapsed="0.000399"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:19.037454" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:19.037630" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:19.034282" elapsed="0.003372"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:19.037811" elapsed="0.000403"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:19.009076" elapsed="0.029202"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.046026" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:19.045727" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:19.055379" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:19.055540" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:19.055637" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:19.046199" elapsed="0.009463"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.056101" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.055824" elapsed="0.000326"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.058419" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.056295" elapsed="0.002175"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.060437" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.058540" elapsed="0.001968"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.058520" elapsed="0.002021"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:19.064906" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:19.064974" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:19.060748" elapsed="0.004261"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:19.067706" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:19.065144" elapsed="0.002646"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.065115" elapsed="0.002710"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:19.067874" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:53:19.068170" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:19.068214" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 148 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:19.045343" elapsed="0.022894"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.070362" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.068779" elapsed="0.001627"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.068761" elapsed="0.001667"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.070967" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.070573" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.071544" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.071176" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:19.071621" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:19.071796" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:19.068449" elapsed="0.003372"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:19.071978" elapsed="0.000403"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:19.044718" elapsed="0.027728"/>
</kw>
<arg>f25.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:18.991328" elapsed="0.081174"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:18.984282" elapsed="0.088337"/>
</test>
<test id="s1-s3-s1-t141" name="Test Is Flow 31 Deleted" line="356">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:19.083836" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f31.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f31.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:19.083999" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:19.083659" elapsed="0.000368"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:19.084616" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bf060&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:19.084209" elapsed="0.000435"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.085176" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.084840" elapsed="0.000364"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.085635" level="INFO">${flow_id} = 154</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.085360" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.086100" level="INFO">${flow_priority} = 31</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.085812" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:19.087091" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:19.086280" elapsed="0.000844"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.087655" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.087317" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.088193" level="INFO">${flow_id} = 154</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.087854" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.088716" level="INFO">${flow_priority} = 31</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.088390" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.089243" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.088909" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.089754" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.089438" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.090286" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bf060&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.089950" elapsed="0.000378"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:19.083325" elapsed="0.007059"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.090913" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.090533" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.091399" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;154&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;31&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf31&lt;/flow-name&gt;
    &lt;priority&gt;31&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.091110" elapsed="0.000350"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.099143" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:19.098828" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:19.105226" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=154?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=154?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:19.105449" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=154?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:19.105598" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:19.099319" elapsed="0.006309"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.106129" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.105814" elapsed="0.000367"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.108383" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.106331" elapsed="0.002102"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:19.110234" elapsed="0.000030"/>
</return>
<status status="PASS" start="2026-05-25T01:53:19.108504" elapsed="0.001797"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.108484" elapsed="0.001842"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:19.110468" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:19.110693" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:19.110558" elapsed="0.000186"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:19.110541" elapsed="0.000225"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.110798" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:53:19.112607" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:19.112674" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 154 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:19.098512" elapsed="0.014195"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.115889" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.113523" elapsed="0.002434"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.113497" elapsed="0.002493"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.116815" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.116231" elapsed="0.000623"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.117630" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.117113" elapsed="0.000554"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:19.117741" elapsed="0.000041"/>
</return>
<msg time="2026-05-25T01:53:19.117999" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:19.113013" elapsed="0.005023"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:19.118289" elapsed="0.000565"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:19.097941" elapsed="0.021005"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.127125" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:19.126803" elapsed="0.000354"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:19.132812" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:19.132924" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:19.133030" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:19.127307" elapsed="0.005749"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.133504" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.133248" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.135673" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.133693" elapsed="0.002067"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.137577" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.135832" elapsed="0.001794"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.135812" elapsed="0.001837"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:19.140428" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:19.140491" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:19.137789" elapsed="0.002735"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:19.142994" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:19.140632" elapsed="0.002458"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.140605" elapsed="0.002521"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:19.143173" elapsed="0.000054"/>
</return>
<msg time="2026-05-25T01:53:19.143472" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:19.143533" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 154 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:19.126425" elapsed="0.017139"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.146570" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.144363" elapsed="0.002271"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.144336" elapsed="0.002328"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.147520" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.146872" elapsed="0.000687"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.148305" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.147789" elapsed="0.000542"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:19.148380" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:53:19.148561" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:19.143867" elapsed="0.004719"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:19.148745" elapsed="0.000406"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:19.125777" elapsed="0.023437"/>
</kw>
<arg>f31.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:19.079932" elapsed="0.069340"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:19.072894" elapsed="0.076497"/>
</test>
<test id="s1-s3-s1-t142" name="Test Is Flow 36 Deleted" line="358">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:19.160468" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f36.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f36.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:19.160634" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:19.160327" elapsed="0.000337"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:19.161247" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e4590&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:19.160818" elapsed="0.000457"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.161714" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.161431" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.162189" level="INFO">${flow_id} = 159</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.161896" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.162646" level="INFO">${flow_priority} = 36</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.162368" elapsed="0.000304"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:19.163642" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:19.162825" elapsed="0.000848"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.164187" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.163832" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.164782" level="INFO">${flow_id} = 159</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.164433" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.165329" level="INFO">${flow_priority} = 36</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.164979" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.165840" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.165523" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.166375" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.166036" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.166893" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e4590&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.166572" elapsed="0.000362"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:19.159978" elapsed="0.007011"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.167572" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.167154" elapsed="0.000448"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.167998" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;159&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;36&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf36&lt;/flow-name&gt;
    &lt;priority&gt;36&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.167754" elapsed="0.000301"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.175790" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:19.175486" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:19.181613" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=159?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=159?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:19.181819" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=159?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:19.181918" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:19.175948" elapsed="0.005996"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.182390" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.182132" elapsed="0.000304"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.184910" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.182581" elapsed="0.002404"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:19.187808" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-05-25T01:53:19.185112" elapsed="0.002795"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.185059" elapsed="0.002886"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:19.188191" elapsed="0.000034"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:19.188531" elapsed="0.000076"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:19.188329" elapsed="0.000329"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:19.188303" elapsed="0.000390"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.188743" elapsed="0.000022"/>
</return>
<msg time="2026-05-25T01:53:19.191176" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:19.191329" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 159 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:19.175130" elapsed="0.016251"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.193762" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.192207" elapsed="0.001601"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.192187" elapsed="0.001643"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.194396" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.193975" elapsed="0.000448"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.194934" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.194584" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:19.195010" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:19.195204" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:19.191701" elapsed="0.003554"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:19.195413" elapsed="0.000385"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:19.174556" elapsed="0.021306"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.205836" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:19.205540" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:19.211737" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:19.211849" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:19.211954" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:19.205991" elapsed="0.005988"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.212553" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.212178" elapsed="0.000442"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.215768" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.212833" elapsed="0.003009"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.218554" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.215943" elapsed="0.002681"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.215915" elapsed="0.002744"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:19.222542" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:19.222608" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:19.218862" elapsed="0.003779"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:19.224943" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:19.222753" elapsed="0.002245"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.222726" elapsed="0.002295"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:19.225053" elapsed="0.000043"/>
</return>
<msg time="2026-05-25T01:53:19.225263" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:19.225306" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 159 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:19.205165" elapsed="0.020163"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.227500" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.225911" elapsed="0.001634"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.225893" elapsed="0.001674"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.228128" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.227713" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.228669" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.228318" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:19.228745" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:19.228921" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:19.225578" elapsed="0.003369"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:19.229121" elapsed="0.000391"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:19.204535" elapsed="0.025041"/>
</kw>
<arg>f36.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:19.156724" elapsed="0.072908"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:19.149673" elapsed="0.080073"/>
</test>
<test id="s1-s3-s1-t143" name="Test Is Flow 38 Deleted" line="360">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:19.240614" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f38.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f38.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:19.240749" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:19.240478" elapsed="0.000300"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:19.241348" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7dad0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:19.240930" elapsed="0.000447"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.241810" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.241530" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.242277" level="INFO">${flow_id} = 161</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.241988" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.242723" level="INFO">${flow_priority} = 38</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.242454" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:19.243762" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:19.242897" elapsed="0.000896"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.244307" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.243950" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.244823" level="INFO">${flow_id} = 161</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.244502" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.245366" level="INFO">${flow_priority} = 38</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.245016" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.245872" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.245558" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.246400" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.246081" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.246911" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7dad0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.246594" elapsed="0.000405"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:19.240151" elapsed="0.006904"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.247618" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.247235" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.248040" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;161&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;38&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf38&lt;/flow-name&gt;
    &lt;priority&gt;38&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.247799" elapsed="0.000317"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.255760" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:19.255462" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:19.261796" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=161?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=161?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:19.261997" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=161?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:19.262118" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:19.255916" elapsed="0.006229"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.262565" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.262306" elapsed="0.000303"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.264794" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.262756" elapsed="0.002088"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:19.266645" elapsed="0.000030"/>
</return>
<status status="PASS" start="2026-05-25T01:53:19.264916" elapsed="0.001795"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.264895" elapsed="0.001841"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:19.266877" elapsed="0.000021"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:19.267114" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:19.266966" elapsed="0.000205"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:19.266950" elapsed="0.000245"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.267255" elapsed="0.000016"/>
</return>
<msg time="2026-05-25T01:53:19.268860" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:19.268905" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 161 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:19.255106" elapsed="0.013822"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.271196" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.269482" elapsed="0.001772"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.269464" elapsed="0.001812"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.271816" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.271420" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.272414" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.272040" elapsed="0.000400"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:19.272491" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:19.272669" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:19.269151" elapsed="0.003544"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:19.272851" elapsed="0.000406"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:19.254542" elapsed="0.018779"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.281027" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:19.280731" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:19.287453" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:19.287564" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:19.287670" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:19.281201" elapsed="0.006495"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.288134" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.287857" elapsed="0.000323"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.290276" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.288326" elapsed="0.002001"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.292168" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.290396" elapsed="0.001822"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.290376" elapsed="0.001864"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:19.294913" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:19.294958" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:19.292379" elapsed="0.002601"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:19.296763" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:19.295056" elapsed="0.001762"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.295038" elapsed="0.001802"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:19.296873" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:19.297064" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:19.297124" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 161 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:19.280357" elapsed="0.016790"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.299273" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.297691" elapsed="0.001627"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.297674" elapsed="0.001666"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.299881" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.299486" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.300433" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.300084" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:19.300509" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:19.300684" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:19.297362" elapsed="0.003347"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:19.300903" elapsed="0.000400"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:19.279734" elapsed="0.021632"/>
</kw>
<arg>f38.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:19.236910" elapsed="0.064511"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:19.230002" elapsed="0.071535"/>
</test>
<test id="s1-s3-s1-t144" name="Test Is Flow 43 Deleted" line="362">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:19.312554" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f43.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f43.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:19.312713" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:19.312417" elapsed="0.000326"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:19.313321" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7cfe0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:19.312897" elapsed="0.000452"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.313780" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.313503" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.314244" level="INFO">${flow_id} = 166</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.313957" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.314689" level="INFO">${flow_priority} = 43</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.314422" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:19.315723" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:19.314862" elapsed="0.000892"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.316262" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.315911" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.316779" level="INFO">${flow_id} = 166</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.316459" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.317320" level="INFO">${flow_priority} = 43</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.316974" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.317823" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.317513" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.318353" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.318019" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.318866" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7cfe0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.318549" elapsed="0.000358"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:19.312087" elapsed="0.006875"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.319532" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.319125" elapsed="0.000437"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.319955" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;166&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;43&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf43&lt;/flow-name&gt;
    &lt;priority&gt;43&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.319713" elapsed="0.000335"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.327681" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:19.327373" elapsed="0.000335"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:19.333056" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=166?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=166?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:19.333280" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=166?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:19.333377" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:19.327840" elapsed="0.005563"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.333812" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.333561" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.336094" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.333999" elapsed="0.002153"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:19.338862" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-05-25T01:53:19.336260" elapsed="0.002700"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.336230" elapsed="0.002767"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:19.339232" elapsed="0.000063"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:19.339696" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:19.339402" elapsed="0.000374"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:19.339377" elapsed="0.000433"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.339856" elapsed="0.000021"/>
</return>
<msg time="2026-05-25T01:53:19.342298" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:19.342364" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 166 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:19.327015" elapsed="0.015383"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.345151" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.343216" elapsed="0.001981"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.343191" elapsed="0.002029"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.345779" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.345367" elapsed="0.000450"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.346362" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.345984" elapsed="0.000404"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:19.346438" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:19.346613" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:19.342703" elapsed="0.003935"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:19.346792" elapsed="0.000399"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:19.326460" elapsed="0.020809"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.355040" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:19.354747" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:19.361374" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:19.361535" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:19.361640" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:19.355211" elapsed="0.006455"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.362097" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.361824" elapsed="0.000320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.364337" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.362292" elapsed="0.002119"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.367112" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.364512" elapsed="0.002671"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.364484" elapsed="0.002733"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:19.371301" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:19.371371" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:19.367432" elapsed="0.003975"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:19.373428" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:19.371519" elapsed="0.001964"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.371491" elapsed="0.002015"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:19.373539" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:19.373731" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:19.373774" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 166 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:19.354371" elapsed="0.019426"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.375931" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.374359" elapsed="0.001617"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.374341" elapsed="0.001657"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.376555" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.376159" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.377109" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.376745" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:19.377192" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:19.377368" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:19.374008" elapsed="0.003385"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:19.377549" elapsed="0.000383"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:19.353746" elapsed="0.024250"/>
</kw>
<arg>f43.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:19.308826" elapsed="0.069226"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:19.301794" elapsed="0.076388"/>
</test>
<test id="s1-s3-s1-t145" name="Test Is Flow 45 Deleted" line="364">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:19.390963" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f45.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f45.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:19.391115" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:19.390824" elapsed="0.000322"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:19.391717" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc74950&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:19.391319" elapsed="0.000426"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.392234" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.391899" elapsed="0.000362"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.392688" level="INFO">${flow_id} = 168</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.392416" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.393154" level="INFO">${flow_priority} = 45</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.392865" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:19.393931" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:19.393331" elapsed="0.000630"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.394470" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.394133" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.394984" level="INFO">${flow_id} = 168</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.394665" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.395531" level="INFO">${flow_priority} = 45</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.395193" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.396034" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.395723" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.396562" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.396245" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.397095" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc74950&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.396756" elapsed="0.000383"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:19.390487" elapsed="0.006708"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.397726" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.397345" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.398255" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;168&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;1180719718&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xfff0ffff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
    &lt;cookie&gt;45&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf45&lt;/flow-name&gt;
    &lt;priority&gt;45&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.397905" elapsed="0.000409"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.405934" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:19.405637" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:19.411023" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=168?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=168?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:19.411279" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=168?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:19.411387" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:19.406103" elapsed="0.005309"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.411859" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.411607" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.414083" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.412047" elapsed="0.002089"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:19.415969" elapsed="0.000030"/>
</return>
<status status="PASS" start="2026-05-25T01:53:19.414213" elapsed="0.001823"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.414190" elapsed="0.001871"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:19.416259" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:19.416587" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:19.416392" elapsed="0.000270"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:19.416368" elapsed="0.000327"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.416742" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:19.419387" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:19.419453" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 168 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:19.405324" elapsed="0.014163"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.422651" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.420306" elapsed="0.002411"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.420280" elapsed="0.002469"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.423608" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.422966" elapsed="0.000683"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.424353" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.423889" elapsed="0.000490"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:19.424429" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:19.424606" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:19.419796" elapsed="0.004836"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:19.424786" elapsed="0.000401"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:19.404758" elapsed="0.020493"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.432953" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:19.432657" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:19.438955" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:19.439086" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:19.439187" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:19.433125" elapsed="0.006089"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.439640" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.439388" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.441775" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.439827" elapsed="0.002033"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.443691" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.441931" elapsed="0.001807"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.441911" elapsed="0.001849"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:19.447462" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:19.447530" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:19.443896" elapsed="0.003667"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:19.450205" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:19.447674" elapsed="0.002612"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.447646" elapsed="0.002676"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:19.450371" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:53:19.450654" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:19.450719" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 168 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:19.432283" elapsed="0.018470"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.453541" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.451609" elapsed="0.001977"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.451582" elapsed="0.002026"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.454172" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.453755" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.454731" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.454363" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:19.454806" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:19.454984" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:19.451061" elapsed="0.003948"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:19.455180" elapsed="0.000402"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:19.431658" elapsed="0.023987"/>
</kw>
<arg>f45.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:19.385567" elapsed="0.070135"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:19.378480" elapsed="0.077337"/>
</test>
<test id="s1-s3-s1-t146" name="Test Is Flow 101 Deleted" line="366">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:19.466838" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f101.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f101.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:19.467006" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:19.466702" elapsed="0.000333"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:19.467633" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc76480&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:19.467201" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.468105" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.467812" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.468556" level="INFO">${flow_id} = 224</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.468287" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.468998" level="INFO">${flow_priority} = 101</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.468730" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:19.469907" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:19.469189" elapsed="0.000749"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.470445" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.470112" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.471001" level="INFO">${flow_id} = 224</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.470676" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.471564" level="INFO">${flow_priority} = 101</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.471211" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.472080" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.471756" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.472599" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.472278" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.473130" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc76480&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.472795" elapsed="0.000378"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:19.466372" elapsed="0.006857"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.473763" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.473379" elapsed="0.000414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.474202" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;101&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;101&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.473945" elapsed="0.000321"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.482061" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:19.481763" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:19.486511" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=224?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=224?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:19.486712" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=224?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:19.486821" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:19.482232" elapsed="0.004614"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.487489" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.487003" elapsed="0.000565"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.489786" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.487737" elapsed="0.002100"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:19.491680" elapsed="0.000030"/>
</return>
<status status="PASS" start="2026-05-25T01:53:19.489909" elapsed="0.001879"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.489887" elapsed="0.001930"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:19.491960" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:19.492235" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:19.492051" elapsed="0.000260"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:19.492034" elapsed="0.000311"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.492392" elapsed="0.000021"/>
</return>
<msg time="2026-05-25T01:53:19.494787" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:19.494854" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 224 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:19.481447" elapsed="0.013441"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.498093" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.495728" elapsed="0.002434"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.495702" elapsed="0.002492"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.498993" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.498411" elapsed="0.000622"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.499848" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.499327" elapsed="0.000559"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:19.499998" elapsed="0.000041"/>
</return>
<msg time="2026-05-25T01:53:19.500251" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:19.495213" elapsed="0.005063"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:19.500433" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:19.480870" elapsed="0.020007"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.508688" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:19.508390" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:19.513463" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:19.513573" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:19.513669" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:19.508845" elapsed="0.004850"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.514126" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.513853" elapsed="0.000321"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.516625" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.514318" elapsed="0.002381"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.519437" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.516803" elapsed="0.002704"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.516773" elapsed="0.002768"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:19.523732" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:19.523801" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:19.519744" elapsed="0.004091"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:19.525723" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:19.523948" elapsed="0.001830"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.523920" elapsed="0.001882"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:19.525873" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:19.526081" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:19.526128" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 224 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:19.507994" elapsed="0.018156"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.528298" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.526696" elapsed="0.001647"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.526678" elapsed="0.001687"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.528909" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.528512" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.529471" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.529114" elapsed="0.000383"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:19.529547" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:19.529723" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:19.526365" elapsed="0.003383"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:19.529905" elapsed="0.000400"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:19.507383" elapsed="0.022986"/>
</kw>
<arg>f101.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:19.463117" elapsed="0.067310"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:19.456100" elapsed="0.074439"/>
</test>
<test id="s1-s3-s1-t147" name="Test Is Flow 102 Deleted" line="368">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:19.541568" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f102.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f102.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:19.541706" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:19.541432" elapsed="0.000303"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:19.542332" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc752b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:19.541888" elapsed="0.000473"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.542791" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.542514" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.543278" level="INFO">${flow_id} = 225</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.542969" elapsed="0.000337"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.543730" level="INFO">${flow_priority} = 102</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.543459" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:19.544835" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:19.543904" elapsed="0.000962"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.545378" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.545024" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.545899" level="INFO">${flow_id} = 225</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.545575" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.546441" level="INFO">${flow_priority} = 102</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.546107" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.546949" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.546635" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.547500" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.547161" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.548058" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc752b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.547733" elapsed="0.000383"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:19.541105" elapsed="0.007069"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.548710" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.548326" elapsed="0.000414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.549150" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;102&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;102&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.548892" elapsed="0.000322"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.556964" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:19.556665" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:19.562767" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=225?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=225?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:19.563041" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=225?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:19.563227" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:19.557137" elapsed="0.006119"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.563916" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.563557" elapsed="0.000405"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.566466" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.564267" elapsed="0.002251"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:19.568405" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:53:19.566613" elapsed="0.001871"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.566580" elapsed="0.001931"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:19.568661" elapsed="0.000023"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:19.568893" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:19.568755" elapsed="0.000189"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:19.568738" elapsed="0.000229"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.569002" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:53:19.570650" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:19.570696" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 225 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:19.556345" elapsed="0.014452"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.573499" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.571466" elapsed="0.002102"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.571447" elapsed="0.002154"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.574458" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.573827" elapsed="0.000670"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.575306" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.574739" elapsed="0.000608"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:19.575422" elapsed="0.000043"/>
</return>
<msg time="2026-05-25T01:53:19.575692" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:19.571050" elapsed="0.004678"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:19.575960" elapsed="0.000608"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:19.555766" elapsed="0.020900"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.585659" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:19.585350" elapsed="0.000336"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:19.591676" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:19.591799" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:19.591908" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:19.585820" elapsed="0.006114"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.592389" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.592125" elapsed="0.000310"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.594554" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.592582" elapsed="0.002023"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.596452" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.594676" elapsed="0.001825"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.594656" elapsed="0.001870"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:19.599390" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:19.599436" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:19.596667" elapsed="0.002792"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:19.601767" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:19.599536" elapsed="0.002313"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.599517" elapsed="0.002366"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:19.601931" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:53:19.602235" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:19.602300" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 225 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:19.584949" elapsed="0.017384"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.605527" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.603157" elapsed="0.002435"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.603130" elapsed="0.002494"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.606547" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.605921" elapsed="0.000666"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.607422" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.606833" elapsed="0.000629"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:19.607538" elapsed="0.000042"/>
</return>
<msg time="2026-05-25T01:53:19.607805" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:19.602646" elapsed="0.005198"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:19.608095" elapsed="0.000422"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:19.584323" elapsed="0.024259"/>
</kw>
<arg>f102.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:19.537835" elapsed="0.070806"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:19.530807" elapsed="0.077958"/>
</test>
<test id="s1-s3-s1-t148" name="Test Is Flow 103 Deleted" line="370">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:19.620101" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f103.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f103.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:19.620265" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:19.619943" elapsed="0.000350"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:19.620886" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7f240&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:19.620446" elapsed="0.000467"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.621363" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.621081" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.621806" level="INFO">${flow_id} = 226</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.621539" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.622265" level="INFO">${flow_priority} = 103</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.621981" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:19.623398" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:19.622439" elapsed="0.000990"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.623926" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.623589" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.624459" level="INFO">${flow_id} = 226</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.624137" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.624984" level="INFO">${flow_priority} = 103</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.624652" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.625506" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.625193" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.626021" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.625703" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.626554" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7f240&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.626235" elapsed="0.000360"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:19.619614" elapsed="0.007034"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.627194" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.626797" elapsed="0.000465"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.627678" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;103&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;103&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.627434" elapsed="0.000306"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.635387" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:19.635052" elapsed="0.000362"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:19.640883" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=226?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=226?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:19.641231" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=226?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:19.641378" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:19.635546" elapsed="0.005869"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.642021" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.641650" elapsed="0.000464"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.645379" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.642331" elapsed="0.003124"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:19.648183" elapsed="0.000046"/>
</return>
<status status="PASS" start="2026-05-25T01:53:19.645561" elapsed="0.002723"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.645531" elapsed="0.002789"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:19.648529" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:19.648858" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:19.648661" elapsed="0.000272"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:19.648637" elapsed="0.000330"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.649014" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:19.651457" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:19.651522" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 226 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:19.634737" elapsed="0.016819"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.653858" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.652307" elapsed="0.001596"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.652288" elapsed="0.001636"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.654481" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.654084" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.655060" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.654708" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:19.655152" elapsed="0.000032"/>
</return>
<msg time="2026-05-25T01:53:19.655350" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:19.651861" elapsed="0.003514"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:19.655530" elapsed="0.000383"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:19.634180" elapsed="0.021796"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.663963" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:19.663665" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:19.669332" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:19.669495" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:19.669649" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:19.664282" elapsed="0.005404"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.670319" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.669922" elapsed="0.000462"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.673527" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.670593" elapsed="0.003007"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.676318" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.673702" elapsed="0.002688"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.673673" elapsed="0.002750"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:19.680433" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:19.680480" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:19.676627" elapsed="0.003876"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:19.682281" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:19.680578" elapsed="0.001757"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.680560" elapsed="0.001799"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:19.682392" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:19.682583" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:19.682626" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 226 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:19.663262" elapsed="0.019387"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.684783" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.683213" elapsed="0.001615"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.683195" elapsed="0.001655"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.685413" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.684997" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.685954" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.685603" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:19.686028" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:19.686228" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:19.682861" elapsed="0.003430"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:19.686454" elapsed="0.000382"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:19.662629" elapsed="0.024271"/>
</kw>
<arg>f103.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:19.616383" elapsed="0.070574"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:19.609226" elapsed="0.077865"/>
</test>
<test id="s1-s3-s1-t149" name="Test Is Flow 104 Deleted" line="372">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:19.698656" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f104.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f104.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:19.698802" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:19.698511" elapsed="0.000320"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:19.699476" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7e890&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:19.698983" elapsed="0.000522"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.699940" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.699660" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.700406" level="INFO">${flow_id} = 227</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.700135" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.700851" level="INFO">${flow_priority} = 104</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.700583" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:19.701759" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:19.701027" elapsed="0.000762"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.702304" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.701948" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.702826" level="INFO">${flow_id} = 227</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.702504" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.703386" level="INFO">${flow_priority} = 104</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.703023" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.703896" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.703582" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.704427" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.704107" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.704940" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7e890&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.704622" elapsed="0.000358"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:19.698179" elapsed="0.006857"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.705588" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.705203" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.706010" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;104&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;104&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.705771" elapsed="0.000374"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.713851" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:19.713548" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:19.719003" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=227?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=227?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:19.719226" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=227?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:19.719401" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:19.714009" elapsed="0.005422"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.719849" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.719595" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.723250" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.720040" elapsed="0.003309"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:19.728033" elapsed="0.000120"/>
</return>
<status status="PASS" start="2026-05-25T01:53:19.723698" elapsed="0.004536"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.723592" elapsed="0.004680"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:19.728577" elapsed="0.000038"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:19.728921" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:19.728722" elapsed="0.000274"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:19.728698" elapsed="0.000330"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.729094" elapsed="0.000021"/>
</return>
<msg time="2026-05-25T01:53:19.731449" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:19.731516" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 227 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:19.713229" elapsed="0.018321"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.734656" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.732436" elapsed="0.002284"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.732411" elapsed="0.002341"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.735649" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.734970" elapsed="0.000717"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.736441" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.735920" elapsed="0.000557"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:19.736549" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:53:19.736796" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:19.731911" elapsed="0.004920"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:19.737054" elapsed="0.000598"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:19.712651" elapsed="0.025093"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.746264" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:19.745934" elapsed="0.000357"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:19.752722" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:19.752945" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:19.753046" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:19.746428" elapsed="0.006664"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.753517" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.753262" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.755717" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.753705" elapsed="0.002064"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.758158" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.755839" elapsed="0.002385"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.755820" elapsed="0.002435"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:19.762266" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:19.762330" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:19.758450" elapsed="0.003912"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:19.765204" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:19.762469" elapsed="0.002816"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.762443" elapsed="0.002874"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:19.765363" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:53:19.765629" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:19.765689" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 227 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:19.745548" elapsed="0.020172"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.768587" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.766503" elapsed="0.002130"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.766478" elapsed="0.002176"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.769221" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.768808" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.769760" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.769411" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:19.769836" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:19.770011" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:19.766015" elapsed="0.004021"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:19.770215" elapsed="0.000382"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:19.744905" elapsed="0.025756"/>
</kw>
<arg>f104.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:19.694727" elapsed="0.075993"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:19.687495" elapsed="0.083358"/>
</test>
<test id="s1-s3-s1-t150" name="Test Is Flow 105 Deleted" line="374">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:19.782324" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f105.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f105.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:19.782484" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:19.782177" elapsed="0.000336"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:19.783119" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bdcb0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:19.782668" elapsed="0.000479"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.783674" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.783385" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.784141" level="INFO">${flow_id} = 228</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.783855" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.784590" level="INFO">${flow_priority} = 105</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.784321" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:19.785532" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:19.784768" elapsed="0.000795"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.786057" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.785724" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.786589" level="INFO">${flow_id} = 228</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.786271" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.787121" level="INFO">${flow_priority} = 105</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.786780" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.787651" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.787337" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.788181" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.787847" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.788695" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bdcb0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.788378" elapsed="0.000358"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:19.781830" elapsed="0.006961"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.789380" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.788971" elapsed="0.000440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.789804" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;105&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;105&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.789565" elapsed="0.000301"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.799591" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:19.799251" elapsed="0.000367"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:19.807494" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=228?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=228?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:19.807749" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=228?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:19.807905" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:19.799751" elapsed="0.008181"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.808461" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.808114" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.811606" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.808723" elapsed="0.002955"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:19.814236" elapsed="0.000047"/>
</return>
<status status="PASS" start="2026-05-25T01:53:19.811782" elapsed="0.002556"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.811751" elapsed="0.002622"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:19.814573" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:19.814886" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:19.814699" elapsed="0.000258"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:19.814676" elapsed="0.000314"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.815033" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:19.817006" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:19.817052" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 228 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:19.798912" elapsed="0.018177"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.819233" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.817634" elapsed="0.001647"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.817616" elapsed="0.001702"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.819964" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.819478" elapsed="0.000512"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.820522" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.820172" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:19.820597" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:53:19.820777" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:19.817304" elapsed="0.003499"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:19.820970" elapsed="0.000419"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:19.798330" elapsed="0.023122"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.829227" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:19.828905" elapsed="0.000350"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:19.835940" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:19.836086" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:19.836187" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:19.829389" elapsed="0.006823"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.836636" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.836376" elapsed="0.000305"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.838962" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.836824" elapsed="0.002239"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.841253" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.839152" elapsed="0.002169"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.839130" elapsed="0.002222"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:19.845383" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:19.845447" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:19.841546" elapsed="0.003934"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:19.847983" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:19.845587" elapsed="0.002472"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.845560" elapsed="0.002554"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:19.848161" elapsed="0.000033"/>
</return>
<msg time="2026-05-25T01:53:19.848357" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:19.848400" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 228 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:19.828530" elapsed="0.019892"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.850532" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.848964" elapsed="0.001613"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.848946" elapsed="0.001652"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.851178" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.850744" elapsed="0.000464"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.851744" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.851392" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:19.851819" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:19.851995" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:19.848634" elapsed="0.003386"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:19.852191" elapsed="0.000395"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:19.827891" elapsed="0.024759"/>
</kw>
<arg>f105.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:19.778524" elapsed="0.074183"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:19.771372" elapsed="0.081462"/>
</test>
<test id="s1-s3-s1-t151" name="Test Is Flow 106 Deleted" line="376">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:19.864196" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f106.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f106.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:19.864351" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:19.864038" elapsed="0.000342"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:19.864967" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bd490&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:19.864538" elapsed="0.000457"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.865450" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.865167" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.865898" level="INFO">${flow_id} = 229</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.865629" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.866359" level="INFO">${flow_priority} = 106</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.866089" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:19.867484" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:19.866534" elapsed="0.000982"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.868015" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.867675" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.868595" level="INFO">${flow_id} = 229</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.868269" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.869138" level="INFO">${flow_priority} = 106</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.868792" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.869647" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.869333" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.870182" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.869843" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.870698" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bd490&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.870378" elapsed="0.000360"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:19.863712" elapsed="0.007081"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.871349" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.870941" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.871774" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;106&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;106&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.871533" elapsed="0.000304"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.879494" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:19.879162" elapsed="0.000359"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:19.885365" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=229?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=229?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:19.885666" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=229?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:19.885802" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:19.879651" elapsed="0.006186"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.886443" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.886085" elapsed="0.000420"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.889626" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.886708" elapsed="0.002989"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:19.892260" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-05-25T01:53:19.889795" elapsed="0.002601"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.889766" elapsed="0.002668"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:19.892639" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:19.892988" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:19.892768" elapsed="0.000316"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:19.892744" elapsed="0.000377"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.893169" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:19.895483" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:19.895548" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 229 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:19.878831" elapsed="0.016748"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.897872" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.896307" elapsed="0.001611"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.896289" elapsed="0.001652"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.898505" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.898102" elapsed="0.000430"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.899060" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.898695" elapsed="0.000408"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:19.899154" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:19.899350" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:19.895870" elapsed="0.003506"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:19.899535" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:19.878280" elapsed="0.021700"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.907805" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:19.907505" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:19.913954" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:19.914085" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:19.914198" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:19.907960" elapsed="0.006263"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.914635" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.914382" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.917190" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.914822" elapsed="0.002441"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.919822" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.917362" elapsed="0.002534"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.917334" elapsed="0.002602"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:19.923894" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:19.923962" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:19.920157" elapsed="0.003837"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:19.926184" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:19.924127" elapsed="0.002116"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.924098" elapsed="0.002169"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:19.926338" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:53:19.926535" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:19.926579" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 229 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:19.907063" elapsed="0.019539"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.928749" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.927166" elapsed="0.001629"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.927148" elapsed="0.001670"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.929408" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.928986" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.929948" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.929598" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:19.930024" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:19.930224" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:19.926815" elapsed="0.003435"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:19.930407" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:19.906450" elapsed="0.024404"/>
</kw>
<arg>f106.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:19.860485" elapsed="0.070425"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:19.853344" elapsed="0.077675"/>
</test>
<test id="s1-s3-s1-t152" name="Test Is Flow 107 Deleted" line="378">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:19.942299" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f107.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f107.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:19.942435" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:19.942161" elapsed="0.000303"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:19.943045" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e6de0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:19.942615" elapsed="0.000473"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.943548" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.943243" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.943995" level="INFO">${flow_id} = 230</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.943727" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:19.944456" level="INFO">${flow_priority} = 107</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:19.944186" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:19.945577" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:19.944628" elapsed="0.000979"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.946110" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.945762" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.946628" level="INFO">${flow_id} = 230</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.946306" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.947161" level="INFO">${flow_priority} = 107</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.946820" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.947690" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.947375" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.948220" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.947887" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.948780" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e6de0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:19.948456" elapsed="0.000366"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:19.941817" elapsed="0.007059"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.949425" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.949025" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.949847" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;107&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;107&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.949607" elapsed="0.000303"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.957613" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:19.957294" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:19.963449" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=230?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=230?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:19.963699" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=230?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:19.963802" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:19.957774" elapsed="0.006054"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.964271" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.963990" elapsed="0.000327"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.966535" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.964462" elapsed="0.002123"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:19.968553" elapsed="0.000045"/>
</return>
<status status="PASS" start="2026-05-25T01:53:19.966664" elapsed="0.001988"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.966639" elapsed="0.002048"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:19.968885" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:19.969222" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:19.969011" elapsed="0.000283"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:19.968988" elapsed="0.000338"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.969370" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:19.971666" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:19.971729" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 230 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:19.956947" elapsed="0.014868"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.974803" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.972604" elapsed="0.002262"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.972579" elapsed="0.002318"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.975707" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.975119" elapsed="0.000626"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.976397" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:19.975970" elapsed="0.000453"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:19.976473" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:19.976650" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:19.972138" elapsed="0.004537"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:19.976844" elapsed="0.000433"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:19.956388" elapsed="0.020953"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.985303" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:19.984983" elapsed="0.000347"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:19.990020" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:19.990153" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:19.990261" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:19.985461" elapsed="0.004826"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.990700" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.990448" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:19.992905" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:19.990890" elapsed="0.002066"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:19.994761" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:19.993026" elapsed="0.001786"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.993006" elapsed="0.001836"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:19.998272" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:19.998337" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:19.994987" elapsed="0.003382"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:20.000907" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:19.998477" elapsed="0.002511"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:19.998449" elapsed="0.002571"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:20.001087" elapsed="0.000041"/>
</return>
<msg time="2026-05-25T01:53:20.001361" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:20.001433" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 230 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:19.984592" elapsed="0.016882"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.004451" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.002268" elapsed="0.002229"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.002243" elapsed="0.002277"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.005130" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.004708" elapsed="0.000450"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.005682" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.005328" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:20.005759" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:20.005936" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:20.001777" elapsed="0.004185"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:20.006135" elapsed="0.000393"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:19.983959" elapsed="0.022635"/>
</kw>
<arg>f107.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:19.938571" elapsed="0.068081"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:19.931426" elapsed="0.075352"/>
</test>
<test id="s1-s3-s1-t153" name="Test Is Flow 108 Deleted" line="380">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:20.018403" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f108.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f108.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:20.018566" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:20.018261" elapsed="0.000334"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:20.019222" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc76c00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:20.018748" elapsed="0.000503"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.019777" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.019433" elapsed="0.000373"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.020261" level="INFO">${flow_id} = 231</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.019964" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.020715" level="INFO">${flow_priority} = 108</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.020442" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:20.021699" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:20.020893" elapsed="0.000837"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.022247" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.021890" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.022767" level="INFO">${flow_id} = 231</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.022444" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.023310" level="INFO">${flow_priority} = 108</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.022963" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.023851" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.023535" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.024389" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.024048" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.024928" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc76c00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.024588" elapsed="0.000385"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:20.017910" elapsed="0.007119"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.025586" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.025198" elapsed="0.000461"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.026091" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;108&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;108&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.025819" elapsed="0.000340"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.034039" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:20.033730" elapsed="0.000351"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:20.039982" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=231?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=231?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:20.040250" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=231?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:20.040408" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:20.034223" elapsed="0.006221"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.041026" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.040671" elapsed="0.000444"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.044496" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.041320" elapsed="0.003248"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:20.047136" elapsed="0.000046"/>
</return>
<status status="PASS" start="2026-05-25T01:53:20.044673" elapsed="0.002562"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.044642" elapsed="0.002628"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:20.047492" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:20.047811" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:20.047622" elapsed="0.000262"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:20.047598" elapsed="0.000319"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.047962" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:20.050272" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:20.050336" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 231 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:20.033407" elapsed="0.016961"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.053063" elapsed="0.000029"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.051146" elapsed="0.001978"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.051118" elapsed="0.002028"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.053703" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.053300" elapsed="0.000429"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.054310" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.053934" elapsed="0.000402"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:20.054387" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:20.054567" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:20.050662" elapsed="0.003930"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:20.054751" elapsed="0.000424"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:20.032797" elapsed="0.022444"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.063026" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:20.062730" elapsed="0.000354"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:20.067829" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:20.067943" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:20.068040" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:20.063262" elapsed="0.004823"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.068643" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.068290" elapsed="0.000416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.071708" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.068906" elapsed="0.002872"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.074330" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.071874" elapsed="0.002523"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.071848" elapsed="0.002579"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:20.078342" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:20.078405" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:20.074620" elapsed="0.003816"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:20.080887" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:20.078542" elapsed="0.002400"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.078515" elapsed="0.002450"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:20.080997" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:20.081205" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:20.081248" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 231 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:20.062354" elapsed="0.018917"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.083399" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.081811" elapsed="0.001632"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.081794" elapsed="0.001671"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.084009" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.083611" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.084576" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.084223" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:20.084652" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:20.084829" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:20.081482" elapsed="0.003409"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:20.085051" elapsed="0.000403"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:20.061700" elapsed="0.023818"/>
</kw>
<arg>f108.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:20.014447" elapsed="0.071127"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:20.007202" elapsed="0.078498"/>
</test>
<test id="s1-s3-s1-t154" name="Test Is Flow 109 Deleted" line="382">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:20.096823" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f109.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f109.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:20.096966" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:20.096684" elapsed="0.000311"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:20.097605" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc753a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:20.097161" elapsed="0.000473"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.098083" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.097788" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.098531" level="INFO">${flow_id} = 232</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.098264" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.098973" level="INFO">${flow_priority} = 109</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.098706" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:20.099962" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:20.099164" elapsed="0.000828"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.100533" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.100165" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.101101" level="INFO">${flow_id} = 232</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.100740" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.101632" level="INFO">${flow_priority} = 109</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.101305" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.102153" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.101825" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.102673" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.102353" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.103202" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc753a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.102868" elapsed="0.000377"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:20.096357" elapsed="0.006945"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.103862" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.103477" elapsed="0.000416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.104306" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;109&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;109&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.104047" elapsed="0.000366"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.112268" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:20.111951" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:20.117695" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=232?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=232?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:20.117893" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=232?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:20.117991" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:20.112425" elapsed="0.005591"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.118452" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.118198" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.120978" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.118641" elapsed="0.002408"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:20.123610" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:53:20.121173" elapsed="0.002528"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.121143" elapsed="0.002592"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:20.123932" elapsed="0.000069"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:20.124355" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:20.124121" elapsed="0.000321"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:20.124096" elapsed="0.000378"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.124517" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:20.126782" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:20.126845" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 232 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:20.111632" elapsed="0.015245"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.129890" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.127675" elapsed="0.002278"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.127650" elapsed="0.002333"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.130760" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.130208" elapsed="0.000590"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.131570" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.131024" elapsed="0.000581"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:20.131675" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:53:20.131920" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:20.127187" elapsed="0.004768"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:20.132209" elapsed="0.000442"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:20.111029" elapsed="0.021685"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.140615" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:20.140318" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:20.146344" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:20.146490" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:20.146586" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:20.140771" elapsed="0.005841"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.147022" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.146770" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.149913" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.147241" elapsed="0.002743"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.152557" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.150102" elapsed="0.002523"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.150054" elapsed="0.002601"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:20.156542" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:20.156605" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:20.152847" elapsed="0.003790"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:20.159124" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:20.156744" elapsed="0.002459"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.156718" elapsed="0.002518"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:20.159282" elapsed="0.000037"/>
</return>
<msg time="2026-05-25T01:53:20.159598" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:20.159659" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 232 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:20.139921" elapsed="0.019770"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.161988" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.160421" elapsed="0.001612"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.160403" elapsed="0.001651"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.162612" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.162217" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.163169" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.162802" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:20.163250" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:20.163441" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:20.159983" elapsed="0.003483"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:20.163623" elapsed="0.000381"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:20.139286" elapsed="0.024798"/>
</kw>
<arg>f109.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:20.093135" elapsed="0.071008"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:20.086027" elapsed="0.078229"/>
</test>
<test id="s1-s3-s1-t155" name="Test Is Flow 110 Deleted" line="384">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:20.175775" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f110.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f110.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:20.175924" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:20.175635" elapsed="0.000318"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:20.176545" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe68680&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:20.176120" elapsed="0.000453"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.177047" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.176763" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.177519" level="INFO">${flow_id} = 233</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.177245" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.177967" level="INFO">${flow_priority} = 110</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.177697" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:20.179014" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:20.178162" elapsed="0.000883"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.179594" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.179227" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.180126" level="INFO">${flow_id} = 233</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.179790" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.180646" level="INFO">${flow_priority} = 110</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.180321" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.181173" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.180838" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.181761" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.181371" elapsed="0.000436"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.182297" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe68680&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.181961" elapsed="0.000377"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:20.175285" elapsed="0.007108"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.182919" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.182543" elapsed="0.000406"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.183377" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;110&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;110&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.183118" elapsed="0.000334"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.191091" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:20.190778" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:20.196623" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=233?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=233?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:20.196827" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=233?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:20.196963" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:20.191249" elapsed="0.005740"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.197428" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.197174" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.199716" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.197617" elapsed="0.002149"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:20.202152" elapsed="0.000038"/>
</return>
<status status="PASS" start="2026-05-25T01:53:20.199837" elapsed="0.002405"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.199816" elapsed="0.002459"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:20.202472" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:20.202784" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:20.202598" elapsed="0.000257"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:20.202576" elapsed="0.000311"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.202931" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:20.205267" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:20.205330" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 233 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:20.190465" elapsed="0.014896"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.208353" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.206139" elapsed="0.002259"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.206113" elapsed="0.002307"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.208960" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.208565" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.209519" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.209164" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:20.209594" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:20.209770" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:20.205662" elapsed="0.004133"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:20.209950" elapsed="0.000404"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:20.189899" elapsed="0.020518"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.219871" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:20.219574" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:20.224878" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:20.224987" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:20.225111" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:20.220027" elapsed="0.005111"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.225549" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.225298" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.227738" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.225736" elapsed="0.002090"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.230314" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.227898" elapsed="0.002483"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.227878" elapsed="0.002536"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:20.234340" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:20.234409" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:20.230606" elapsed="0.003837"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:20.237028" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:20.234558" elapsed="0.002573"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.234530" elapsed="0.002634"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:20.237212" elapsed="0.000041"/>
</return>
<msg time="2026-05-25T01:53:20.237491" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:20.237552" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 233 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:20.219162" elapsed="0.018421"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.240600" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.238380" elapsed="0.002266"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.238354" elapsed="0.002314"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.241270" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.240817" elapsed="0.000481"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.241868" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.241464" elapsed="0.000431"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:20.241946" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:20.242151" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:20.237888" elapsed="0.004292"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:20.242341" elapsed="0.000391"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:20.218528" elapsed="0.024267"/>
</kw>
<arg>f110.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:20.172045" elapsed="0.070809"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:20.164633" elapsed="0.078343"/>
</test>
<test id="s1-s3-s1-t156" name="Test Is Flow 113 Deleted" line="386">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:20.254535" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f113.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f113.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:20.254684" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:20.254396" elapsed="0.000316"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:20.255316" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc76840&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:20.254863" elapsed="0.000492"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.255793" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.255511" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.256257" level="INFO">${flow_id} = 236</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.255971" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.256702" level="INFO">${flow_priority} = 113</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.256434" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:20.257640" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:20.256876" elapsed="0.000794"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.258176" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.257829" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.258742" level="INFO">${flow_id} = 236</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.258421" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.259271" level="INFO">${flow_priority} = 113</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.258934" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.259824" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.259505" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.260360" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.260026" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.260874" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc76840&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.260555" elapsed="0.000360"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:20.254055" elapsed="0.006915"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.261521" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.261134" elapsed="0.000418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.261944" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;113&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;113&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.261703" elapsed="0.000308"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.269692" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:20.269387" elapsed="0.000332"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:20.275329" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=236?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=236?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:20.275603" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=236?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:20.275715" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:20.269848" elapsed="0.005892"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.276176" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.275903" elapsed="0.000320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.278583" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.276370" elapsed="0.002264"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:20.280700" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-05-25T01:53:20.278737" elapsed="0.002055"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.278715" elapsed="0.002110"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:20.281025" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:20.281369" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:20.281178" elapsed="0.000263"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:20.281154" elapsed="0.000319"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.281518" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:53:20.283814" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:20.283894" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 236 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:20.269048" elapsed="0.014881"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.286920" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.284712" elapsed="0.002273"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.284687" elapsed="0.002328"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.287847" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.287245" elapsed="0.000640"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.288581" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.288137" elapsed="0.000470"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:20.288658" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:20.288835" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:20.284242" elapsed="0.004618"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:20.289015" elapsed="0.000404"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:20.268474" elapsed="0.021009"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.297292" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:20.296971" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:20.301832" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:20.301949" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:20.302044" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:20.297449" elapsed="0.004641"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.302511" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.302258" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.304686" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.302697" elapsed="0.002040"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.306563" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.304805" elapsed="0.001807"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.304786" elapsed="0.001848"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:20.309929" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:20.309992" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:20.306774" elapsed="0.003250"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:20.312810" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:20.310151" elapsed="0.002782"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.310124" elapsed="0.002844"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:20.313014" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:53:20.313310" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:20.313371" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 236 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:20.296575" elapsed="0.016827"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.316403" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.314177" elapsed="0.002272"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.314152" elapsed="0.002320"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.317019" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.316621" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.317582" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.317229" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:20.317658" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:20.317835" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:20.313694" elapsed="0.004166"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:20.318015" elapsed="0.000405"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:20.295945" elapsed="0.022539"/>
</kw>
<arg>f113.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:20.250627" elapsed="0.067913"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:20.243482" elapsed="0.075166"/>
</test>
<test id="s1-s3-s1-t157" name="Test Is Flow 156 Deleted" line="388">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:20.330792" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f156.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f156.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:20.330919" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:20.330659" elapsed="0.000289"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:20.331546" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7f8d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:20.331114" elapsed="0.000461"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.332044" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.331729" elapsed="0.000356"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.332511" level="INFO">${flow_id} = 279</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.332240" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.332956" level="INFO">${flow_priority} = 156</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.332688" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:20.333822" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:20.333147" elapsed="0.000705"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.334359" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.334011" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.334875" level="INFO">${flow_id} = 279</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.334557" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.335433" level="INFO">${flow_priority} = 156</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.335092" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.335939" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.335627" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.336512" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.336190" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.337028" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7f8d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.336710" elapsed="0.000376"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:20.330334" elapsed="0.006810"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.337676" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.337296" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.338110" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;279&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
      &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;156&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf156&lt;/flow-name&gt;
    &lt;priority&gt;156&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.337856" elapsed="0.000316"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.346102" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:20.345790" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:20.350844" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=279?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=279?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:20.351033" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=279?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:20.351147" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:20.346266" elapsed="0.004907"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.351618" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.351333" elapsed="0.000330"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.353860" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.351807" elapsed="0.002103"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:20.355733" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-05-25T01:53:20.353979" elapsed="0.001820"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.353960" elapsed="0.001863"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:20.355969" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:20.356211" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:20.356060" elapsed="0.000203"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:20.356043" elapsed="0.000243"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.356318" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:53:20.357930" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:20.357975" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 279 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:20.345473" elapsed="0.012525"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.360227" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.358591" elapsed="0.001715"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.358574" elapsed="0.001769"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.361143" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.360566" elapsed="0.000614"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.361896" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.361408" elapsed="0.000529"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:20.362006" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:53:20.362279" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:20.358257" elapsed="0.004057"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:20.362530" elapsed="0.000532"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:20.344889" elapsed="0.018284"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.372634" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:20.372338" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:20.377835" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:20.377944" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:20.378038" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:20.372792" elapsed="0.005270"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.378501" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.378251" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.380826" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.378689" elapsed="0.002187"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.382690" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.380946" elapsed="0.001792"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.380927" elapsed="0.001833"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:20.385428" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:20.385474" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:20.382899" elapsed="0.002598"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:20.387270" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:20.385572" elapsed="0.001753"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.385554" elapsed="0.001794"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:20.387412" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:20.387605" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:20.387648" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 279 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:20.371927" elapsed="0.015744"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.390669" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.388466" elapsed="0.002266"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.388441" elapsed="0.002321"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.391658" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.391036" elapsed="0.000660"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.392454" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.391932" elapsed="0.000559"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:20.392562" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:53:20.392808" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:20.388003" elapsed="0.004840"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:20.393060" elapsed="0.000555"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:20.371129" elapsed="0.022575"/>
</kw>
<arg>f156.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:20.326584" elapsed="0.067198"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:20.319014" elapsed="0.074918"/>
</test>
<test id="s1-s3-s1-t158" name="Test Is Flow 201 Deleted" line="390">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:20.405441" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f201.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f201.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:20.405570" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:20.405308" elapsed="0.000290"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:20.406184" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7ecf0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:20.405749" elapsed="0.000467"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.406645" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.406369" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.407109" level="INFO">${flow_id} = 324</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.406824" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.407609" level="INFO">${flow_priority} = 201</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.407288" elapsed="0.000346"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:20.408653" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:20.407784" elapsed="0.000900"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.409187" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.408840" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.409709" level="INFO">${flow_id} = 324</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.409389" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.410247" level="INFO">${flow_priority} = 201</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.409902" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.410748" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.410438" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.411274" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.410942" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.411801" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7ecf0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.411481" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:20.404965" elapsed="0.006931"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.412447" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.412045" elapsed="0.000467"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.412910" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;201&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;201&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.412667" elapsed="0.000304"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.420618" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:20.420321" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:20.426191" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=324?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=324?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:20.426389" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=324?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:20.426486" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:20.420773" elapsed="0.005739"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.426928" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.426673" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.429715" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.427133" elapsed="0.002653"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:20.432389" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:53:20.429886" elapsed="0.002595"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.429857" elapsed="0.002658"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:20.432712" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:20.433025" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:20.432837" elapsed="0.000281"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:20.432814" elapsed="0.000338"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.433198" elapsed="0.000023"/>
</return>
<msg time="2026-05-25T01:53:20.435533" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:20.435596" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 324 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:20.419988" elapsed="0.015640"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.438025" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.436419" elapsed="0.001667"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.436398" elapsed="0.001712"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.438657" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.438259" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.439211" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.438846" elapsed="0.000423"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:20.439322" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:20.439552" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:20.435918" elapsed="0.003660"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:20.439738" elapsed="0.000409"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:20.419441" elapsed="0.020773"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.448191" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:20.447860" elapsed="0.000360"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:20.455497" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:20.455620" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:20.455717" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:20.448353" elapsed="0.007389"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.456182" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.455906" elapsed="0.000345"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.459532" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.456491" elapsed="0.003112"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.462159" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.459705" elapsed="0.002525"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.459674" elapsed="0.002588"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:20.466177" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:20.466240" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:20.462457" elapsed="0.003815"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:20.468684" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:20.466380" elapsed="0.002359"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.466353" elapsed="0.002410"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:20.468795" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:20.468988" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:20.469031" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 324 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:20.447475" elapsed="0.021578"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.471203" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.469613" elapsed="0.001636"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.469596" elapsed="0.001674"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.471864" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.471455" elapsed="0.000436"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.472423" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.472055" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:20.472499" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:20.472675" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:20.469285" elapsed="0.003415"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:20.472903" elapsed="0.000408"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:20.446786" elapsed="0.026589"/>
</kw>
<arg>f201.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:20.401715" elapsed="0.071717"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:20.394307" elapsed="0.079240"/>
</test>
<test id="s1-s3-s1-t159" name="Test Is Flow 202 Deleted" line="392">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:20.484368" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f202.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f202.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:20.484506" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:20.484231" elapsed="0.000304"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:20.485129" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bac50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:20.484690" elapsed="0.000467"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.485599" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.485318" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.486052" level="INFO">${flow_id} = 325</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.485781" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.486521" level="INFO">${flow_priority} = 202</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.486249" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:20.487624" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:20.486698" elapsed="0.000957"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.488180" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.487816" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.488709" level="INFO">${flow_id} = 325</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.488386" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.489245" level="INFO">${flow_priority} = 202</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.488904" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.489752" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.489441" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.490286" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.489948" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.490801" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bac50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.490485" elapsed="0.000358"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:20.483888" elapsed="0.007009"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.491461" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.491047" elapsed="0.000444"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.491885" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;202&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;202&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.491645" elapsed="0.000338"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.499693" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:20.499392" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:20.505279" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=325?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=325?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:20.505548" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=325?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:20.505684" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:20.499851" elapsed="0.005868"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.506324" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.505947" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.509474" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.506589" elapsed="0.002955"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:20.512107" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-05-25T01:53:20.509642" elapsed="0.002557"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.509614" elapsed="0.002619"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:20.512430" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:20.512746" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:20.512556" elapsed="0.000261"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:20.512533" elapsed="0.000315"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.512892" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:53:20.515166" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:20.515228" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 325 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:20.499047" elapsed="0.016213"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.517745" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.516056" elapsed="0.001734"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.516031" elapsed="0.001781"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.518373" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.517958" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.518909" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.518561" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:20.518983" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:20.519177" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:20.515593" elapsed="0.003612"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:20.519364" elapsed="0.000421"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:20.498494" elapsed="0.021355"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.527621" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:20.527295" elapsed="0.000357"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:20.533209" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:20.533355" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:20.533451" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:20.527782" elapsed="0.005695"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.534060" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.533635" elapsed="0.000489"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.536349" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.534271" elapsed="0.002163"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.538968" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.536532" elapsed="0.002502"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.536504" elapsed="0.002579"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:20.542977" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:20.543041" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:20.539282" elapsed="0.003811"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:20.545273" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:20.543202" elapsed="0.002127"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.543176" elapsed="0.002177"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:20.545386" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:20.545576" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:20.545619" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 325 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:20.526903" elapsed="0.018738"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.547783" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.546196" elapsed="0.001633"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.546178" elapsed="0.001673"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.548412" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.547996" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.548953" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.548603" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:20.549029" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:20.549223" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:20.545851" elapsed="0.003397"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:20.549407" elapsed="0.000381"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:20.526293" elapsed="0.023557"/>
</kw>
<arg>f202.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:20.480639" elapsed="0.069266"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:20.473814" elapsed="0.076198"/>
</test>
<test id="s1-s3-s1-t160" name="Test Is Flow 203 Deleted" line="394">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:20.560950" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f203.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f203.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:20.561092" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:20.560817" elapsed="0.000306"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:20.561689" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e4c70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:20.561276" elapsed="0.000441"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.562207" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.561909" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.562659" level="INFO">${flow_id} = 326</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.562388" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.563122" level="INFO">${flow_priority} = 203</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.562835" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:20.564197" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:20.563305" elapsed="0.000923"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.564714" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.564384" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.565244" level="INFO">${flow_id} = 326</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.564908" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.565762" level="INFO">${flow_priority} = 203</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.565438" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.566282" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.565953" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.566793" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.566476" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.567322" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e4c70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.566986" elapsed="0.000377"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:20.560491" elapsed="0.006969"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.567999" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.567614" elapsed="0.000414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.568443" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;203&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;203&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.568199" elapsed="0.000305"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.576210" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:20.575888" elapsed="0.000351"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:20.580874" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=326?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=326?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:20.581085" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=326?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:20.581228" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:20.576369" elapsed="0.004884"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.581669" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.581416" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.583936" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.581859" elapsed="0.002128"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:20.586492" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:53:20.584056" elapsed="0.002526"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.584037" elapsed="0.002579"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:20.586812" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:20.587148" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:20.586938" elapsed="0.000285"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:20.586915" elapsed="0.000340"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.587300" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:20.589556" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:20.589617" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 326 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:20.575573" elapsed="0.014076"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.592598" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.590424" elapsed="0.002220"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.590399" elapsed="0.002266"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.593223" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.592810" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.593758" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.593411" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:20.593833" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:20.594011" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:20.589938" elapsed="0.004098"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:20.594212" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:20.574982" elapsed="0.019674"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.602600" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:20.602304" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:20.607329" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:20.607457" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:20.607562" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:20.602755" elapsed="0.004832"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.607998" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.607746" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.610155" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.608206" elapsed="0.002043"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.612061" elapsed="0.000030"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.610320" elapsed="0.001804"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.610300" elapsed="0.001846"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:20.614886" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:20.614932" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:20.612286" elapsed="0.002669"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:20.617002" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:20.615031" elapsed="0.002067"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.615012" elapsed="0.002120"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:20.617179" elapsed="0.000043"/>
</return>
<msg time="2026-05-25T01:53:20.617454" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:20.617515" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 326 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:20.601910" elapsed="0.015637"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.620551" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.618330" elapsed="0.002283"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.618305" elapsed="0.002339"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.621421" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.620845" elapsed="0.000615"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.622203" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.621687" elapsed="0.000553"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:20.622309" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:53:20.622557" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:20.617840" elapsed="0.004752"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:20.622810" elapsed="0.000557"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:20.601295" elapsed="0.022194"/>
</kw>
<arg>f203.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:20.557247" elapsed="0.066323"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:20.550264" elapsed="0.073457"/>
</test>
<test id="s1-s3-s1-t161" name="Test Is Flow 204 Deleted" line="396">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:20.636208" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f204.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f204.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:20.636337" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:20.636057" elapsed="0.000309"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:20.636927" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace533e20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:20.636518" elapsed="0.000437"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.637401" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.637123" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.637851" level="INFO">${flow_id} = 327</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.637582" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.638313" level="INFO">${flow_priority} = 204</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.638026" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:20.639181" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:20.638487" elapsed="0.000724"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.639710" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.639366" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.640284" level="INFO">${flow_id} = 327</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.639939" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.640802" level="INFO">${flow_priority} = 204</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.640477" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.641325" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.640992" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.641837" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.641519" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.642377" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace533e20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.642031" elapsed="0.000388"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:20.635724" elapsed="0.006751"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.643004" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.642625" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.643463" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;204&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;204&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.643203" elapsed="0.000322"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.651250" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:20.650916" elapsed="0.000362"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:20.656866" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=327?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=327?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:20.657118" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=327?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:20.657230" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:20.651435" elapsed="0.005821"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.657671" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.657418" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.660104" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.657860" elapsed="0.002297"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:20.662718" elapsed="0.000044"/>
</return>
<status status="PASS" start="2026-05-25T01:53:20.660259" elapsed="0.002555"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.660222" elapsed="0.002671"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:20.663116" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:20.663481" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:20.663245" elapsed="0.000317"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:20.663222" elapsed="0.000373"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.663639" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:20.665914" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:20.665976" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 327 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:20.650596" elapsed="0.015413"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.668845" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.666778" elapsed="0.002112"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.666753" elapsed="0.002159"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.669471" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.669057" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.670004" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.669659" elapsed="0.000370"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:20.670095" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:20.670273" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:20.666317" elapsed="0.003981"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:20.670454" elapsed="0.000385"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:20.649999" elapsed="0.020903"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.678622" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:20.678328" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:20.683906" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:20.684016" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:20.684134" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:20.678779" elapsed="0.005381"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.684576" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.684326" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.686735" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.684766" elapsed="0.002020"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.688838" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.686856" elapsed="0.002049"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.686836" elapsed="0.002099"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:20.692839" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:20.692902" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:20.689151" elapsed="0.003784"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:20.695704" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:20.693041" elapsed="0.002741"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.693015" elapsed="0.002799"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:20.695859" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:53:20.696206" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:20.696266" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 327 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:20.677937" elapsed="0.018361"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.699283" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.697050" elapsed="0.002297"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.697025" elapsed="0.002353"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.700201" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.699613" elapsed="0.000634"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.700808" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.700460" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:20.700884" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:20.701061" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:20.696592" elapsed="0.004510"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:20.701260" elapsed="0.000381"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:20.677329" elapsed="0.024375"/>
</kw>
<arg>f204.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:20.630956" elapsed="0.070804"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:20.624099" elapsed="0.077779"/>
</test>
<test id="s1-s3-s1-t162" name="Test Is Flow 205 Deleted" line="398">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:20.712779" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f205.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f205.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:20.712916" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:20.712643" elapsed="0.000302"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:20.713539" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc305440&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:20.713112" elapsed="0.000455"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.713999" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.713720" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.714463" level="INFO">${flow_id} = 328</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.714193" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.714908" level="INFO">${flow_priority} = 205</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.714641" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:20.715856" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:20.715097" elapsed="0.000789"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.716395" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.716041" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.716918" level="INFO">${flow_id} = 328</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.716592" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.717460" level="INFO">${flow_priority} = 205</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.717132" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.717967" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.717653" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.718504" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.718179" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.719059" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc305440&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.718737" elapsed="0.000380"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:20.712312" elapsed="0.006860"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.719732" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.719321" elapsed="0.000441"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.720170" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;328&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;205&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;
    &lt;priority&gt;205&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.719913" elapsed="0.000322"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.728128" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:20.727813" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:20.733436" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=328?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=328?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:20.733626" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=328?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:20.733723" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:20.728288" elapsed="0.005461"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.734184" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.733907" elapsed="0.000323"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.736598" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.734373" elapsed="0.002296"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:20.739305" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-05-25T01:53:20.736766" elapsed="0.002631"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.736738" elapsed="0.002711"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:20.739649" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:20.739964" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:20.739776" elapsed="0.000259"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:20.739753" elapsed="0.000333"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.740134" elapsed="0.000021"/>
</return>
<msg time="2026-05-25T01:53:20.742392" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:20.742454" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 328 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:20.727489" elapsed="0.014997"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.745551" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.743309" elapsed="0.002306"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.743283" elapsed="0.002362"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.746429" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.745851" elapsed="0.000616"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.747210" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.746695" elapsed="0.000551"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:20.747316" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:53:20.747598" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:20.742822" elapsed="0.004812"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:20.747892" elapsed="0.000485"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:20.726865" elapsed="0.021576"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.756175" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:20.755859" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:20.760696" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:20.760805" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:20.760899" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:20.756332" elapsed="0.004593"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.761358" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.761105" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.763697" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.761545" elapsed="0.002203"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.766142" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.763819" elapsed="0.002392"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.763799" elapsed="0.002445"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:20.770117" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:20.770183" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:20.766437" elapsed="0.003779"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:20.772700" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:20.770324" elapsed="0.002453"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.770297" elapsed="0.002513"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:20.772857" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:53:20.773145" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:20.773208" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 328 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:20.755479" elapsed="0.017761"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.776262" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.773993" elapsed="0.002333"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.773968" elapsed="0.002388"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.777020" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.776562" elapsed="0.000485"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.777615" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.777262" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:20.777691" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:20.777866" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:20.773534" elapsed="0.004357"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:20.778056" elapsed="0.000406"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:20.754833" elapsed="0.023694"/>
</kw>
<arg>f205.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:20.709019" elapsed="0.069564"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:20.702166" elapsed="0.076527"/>
</test>
<test id="s1-s3-s1-t163" name="Test Is Flow 206 Deleted" line="400">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:20.789502" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f206.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f206.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:20.789631" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:20.789368" elapsed="0.000292"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:20.790259" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bea70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:20.789816" elapsed="0.000471"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.790719" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.790443" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.791188" level="INFO">${flow_id} = 329</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.790899" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.791684" level="INFO">${flow_priority} = 206</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.791367" elapsed="0.000343"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:20.792787" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:20.791860" elapsed="0.000957"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.793324" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.792975" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.793849" level="INFO">${flow_id} = 329</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.793520" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.794385" level="INFO">${flow_priority} = 206</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.794043" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.794890" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.794578" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.795450" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.795100" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.795975" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bea70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.795651" elapsed="0.000365"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:20.789025" elapsed="0.007061"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.796622" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.796239" elapsed="0.000454"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.797108" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;329&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;206&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;
    &lt;priority&gt;206&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.796848" elapsed="0.000325"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.804829" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:20.804533" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:20.808640" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=329?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=329?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:20.808829" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=329?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:20.808928" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:20.804985" elapsed="0.003968"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.809385" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.809133" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.811648" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.809572" elapsed="0.002128"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:20.813509" elapsed="0.000027"/>
</return>
<status status="PASS" start="2026-05-25T01:53:20.811770" elapsed="0.001802"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.811750" elapsed="0.001846"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:20.813738" elapsed="0.000021"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:20.813962" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:20.813828" elapsed="0.000185"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:20.813811" elapsed="0.000224"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.814082" elapsed="0.000016"/>
</return>
<msg time="2026-05-25T01:53:20.815711" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:20.815756" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 329 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:20.804215" elapsed="0.011564"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.818605" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.816401" elapsed="0.002267"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.816375" elapsed="0.002323"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.819508" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.818902" elapsed="0.000644"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.820284" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.819772" elapsed="0.000591"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:20.820437" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:53:20.820688" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:20.815986" elapsed="0.004738"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:20.820939" elapsed="0.000561"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:20.803647" elapsed="0.017943"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.830210" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:20.829897" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:20.834090" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:20.834200" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:20.834304" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:20.830366" elapsed="0.003963"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.834735" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.834486" elapsed="0.000293"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.836888" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.834920" elapsed="0.002017"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.838755" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.837007" elapsed="0.001795"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.836987" elapsed="0.001838"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:20.841597" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:20.841643" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:20.838962" elapsed="0.002704"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:20.843477" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:20.841742" elapsed="0.001792"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.841723" elapsed="0.001835"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:20.843590" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:20.843782" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:20.843825" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 329 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:20.829523" elapsed="0.014324"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.845983" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.844413" elapsed="0.001615"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.844396" elapsed="0.001654"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.846613" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.846214" elapsed="0.000426"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.847171" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.846803" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:20.847248" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:20.847451" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:20.844059" elapsed="0.003419"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:20.847671" elapsed="0.000390"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:20.828900" elapsed="0.019243"/>
</kw>
<arg>f206.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:20.785742" elapsed="0.062457"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:20.778931" elapsed="0.069376"/>
</test>
<test id="s1-s3-s1-t164" name="Test Is Flow 209 Deleted" line="402">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:20.859347" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f209.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f209.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:20.859576" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;co...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:20.859205" elapsed="0.000402"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:20.860228" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e5f80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:20.859769" elapsed="0.000488"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.860698" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.860412" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.861169" level="INFO">${flow_id} = 332</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.860880" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.861619" level="INFO">${flow_priority} = 209</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.861349" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:20.862531" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/co...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:20.861795" elapsed="0.000766"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.863056" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.862722" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.863632" level="INFO">${flow_id} = 332</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.863276" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.864171" level="INFO">${flow_priority} = 209</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.863829" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.864681" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;co...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.864368" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.865211" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/co...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.864878" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.865728" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e5f80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.865410" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:20.858836" elapsed="0.006989"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.866381" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/co...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.865975" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.866807" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;209&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;209&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.866564" elapsed="0.000345"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.874575" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:20.874273" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:20.881882" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=332?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=332?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:20.882112" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=332?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:20.882228" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:20.874730" elapsed="0.007525"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.882668" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.882416" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.885482" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.882857" elapsed="0.002697"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:20.888129" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-05-25T01:53:20.885656" elapsed="0.002569"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.885626" elapsed="0.002633"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:20.888456" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:20.888765" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:20.888581" elapsed="0.000254"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:20.888558" elapsed="0.000308"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.888909" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:53:20.891238" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:20.891299" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 332 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:20.873905" elapsed="0.017425"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.893755" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.892157" elapsed="0.001643"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.892131" elapsed="0.001691"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.894380" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.893968" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.894916" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.894570" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:20.894991" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:20.895184" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:20.891671" elapsed="0.003541"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:20.895370" elapsed="0.000412"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:20.873347" elapsed="0.022499"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.903582" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:20.903259" elapsed="0.000350"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:20.908817" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:20.908960" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:20.909056" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:20.903738" elapsed="0.005366"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.909522" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.909269" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.911693" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.909710" elapsed="0.002033"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.914154" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.911812" elapsed="0.002408"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.911793" elapsed="0.002458"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:20.918168" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:20.918234" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:20.914443" elapsed="0.003826"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:20.920980" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:20.918376" elapsed="0.002682"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.918349" elapsed="0.002763"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:20.921160" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:53:20.921429" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:20.921489" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 332 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:20.902865" elapsed="0.018655"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.924512" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.922294" elapsed="0.002263"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.922269" elapsed="0.002309"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.925137" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.924725" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.925677" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.925328" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:20.925753" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:20.925927" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:20.921813" elapsed="0.004139"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:20.926124" elapsed="0.000386"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:20.902256" elapsed="0.024317"/>
</kw>
<arg>f209.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:20.855360" elapsed="0.071270"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:20.848543" elapsed="0.078199"/>
</test>
<test id="s1-s3-s1-t165" name="Test Is Flow 214 Deleted" line="404">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:20.937564" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f214.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f214.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:20.937691" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:20.937430" elapsed="0.000289"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:20.938285" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc76bb0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:20.937871" elapsed="0.000442"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.938782" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.938503" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.939256" level="INFO">${flow_id} = 337</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.938961" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:20.939737" level="INFO">${flow_priority} = 214</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:20.939455" elapsed="0.000307"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:20.940577" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:20.939914" elapsed="0.000694"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.941110" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.940767" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.941629" level="INFO">${flow_id} = 337</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.941309" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.942163" level="INFO">${flow_priority} = 214</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.941824" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.942669" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.942358" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.943197" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.942864" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.943742" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc76bb0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:20.943396" elapsed="0.000387"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:20.937102" elapsed="0.006738"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.944395" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.943993" elapsed="0.000432"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.944820" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;214&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;214&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
		&lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
	    &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.944581" elapsed="0.000297"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.952721" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:20.952423" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:20.957951" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=337?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=337?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:20.958162" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=337?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:20.958293" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:20.952878" elapsed="0.005441"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.958728" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.958477" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.960953" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.958914" elapsed="0.002089"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:20.962808" elapsed="0.000027"/>
</return>
<status status="PASS" start="2026-05-25T01:53:20.961086" elapsed="0.001785"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.961052" elapsed="0.001843"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:20.963035" elapsed="0.000021"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:20.963275" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:20.963141" elapsed="0.000185"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:20.963124" elapsed="0.000224"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.963379" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:53:20.965461" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:20.965523" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 337 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:20.952107" elapsed="0.013447"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.968544" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.966325" elapsed="0.002282"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.966300" elapsed="0.002338"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.969410" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.968840" elapsed="0.000607"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.970181" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:20.969672" elapsed="0.000545"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:20.970286" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:53:20.970532" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:20.965844" elapsed="0.004723"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:20.970781" elapsed="0.000555"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:20.951537" elapsed="0.019886"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.980589" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:20.980295" elapsed="0.000320"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:20.985603" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:20.985711" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:20.985806" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:20.980743" elapsed="0.005088"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.986265" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.985989" elapsed="0.000321"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:20.988661" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:20.986452" elapsed="0.002301"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.990579" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.988825" elapsed="0.001802"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.988805" elapsed="0.001844"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:20.993841" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:20.993904" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:20.990788" elapsed="0.003148"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:20.996437" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:20.994041" elapsed="0.002474"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.994015" elapsed="0.002532"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:20.996592" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:53:20.996859" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:20.996920" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 337 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:20.979894" elapsed="0.017057"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:20.999986" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:20.997725" elapsed="0.002324"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:20.997701" elapsed="0.002399"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.000742" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.000328" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.001301" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.000932" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:21.001376" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:21.001554" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:20.997267" elapsed="0.004313"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:21.001735" elapsed="0.000398"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:20.979276" elapsed="0.022923"/>
</kw>
<arg>f214.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:20.933824" elapsed="0.068435"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:20.927007" elapsed="0.075358"/>
</test>
<test id="s1-s3-s1-t166" name="Test Is Flow 218 Deleted" line="406">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:21.013195" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f218.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f218.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:21.013323" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:21.013046" elapsed="0.000306"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:21.013880" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7e890&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:21.013500" elapsed="0.000407"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:21.014361" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:21.014057" elapsed="0.000331"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:21.014805" level="INFO">${flow_id} = 341</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:21.014538" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:21.015265" level="INFO">${flow_priority} = 218</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:21.014978" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:21.017341" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:21.015457" elapsed="0.001914"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.017862" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.017529" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.018433" level="INFO">${flow_id} = 341</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.018108" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.018951" level="INFO">${flow_priority} = 218</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.018628" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.019513" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.019158" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.020038" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.019720" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.020578" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7e890&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.020252" elapsed="0.000368"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:21.012721" elapsed="0.007953"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.021223" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.020824" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.021643" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;go-to-table&gt;
                &lt;table_id&gt;3&lt;/table_id&gt;
            &lt;/go-to-table&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;341&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-mask&gt;0xfff0&lt;/tunnel-mask&gt;
            &lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
    &lt;cookie&gt;218&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;
    &lt;priority&gt;218&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.021404" elapsed="0.000295"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.029338" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:21.029027" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:21.047888" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=341?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=341?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:21.048388" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=341?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:21.048627" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:21.029494" elapsed="0.019188"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.049654" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.049034" elapsed="0.000719"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.054994" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.050215" elapsed="0.004926"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:21.059348" elapsed="0.000067"/>
</return>
<status status="PASS" start="2026-05-25T01:53:21.055319" elapsed="0.004224"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.055268" elapsed="0.004331"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:21.059915" elapsed="0.000048"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:21.060410" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:21.060150" elapsed="0.000347"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:21.060110" elapsed="0.000411"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.060553" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:53:21.062167" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:21.062212" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 341 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:21.028713" elapsed="0.033524"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.064363" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:21.062772" elapsed="0.001637"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.062755" elapsed="0.001676"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.064972" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.064578" elapsed="0.000420"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.065532" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.065180" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:21.065608" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:21.065787" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:21.062445" elapsed="0.003368"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:21.065981" elapsed="0.000418"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:21.028162" elapsed="0.038302"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.074323" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:21.074007" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:21.080041" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:21.080190" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:21.080350" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:21.074481" elapsed="0.005912"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.080979" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.080629" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.084320" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.081268" elapsed="0.003125"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.086935" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:21.084493" elapsed="0.002510"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.084465" elapsed="0.002570"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:21.090642" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:21.090706" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:21.087246" elapsed="0.003492"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:21.093065" elapsed="0.000038"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:21.090844" elapsed="0.002295"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.090818" elapsed="0.002344"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:21.093195" elapsed="0.000033"/>
</return>
<msg time="2026-05-25T01:53:21.093394" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:21.093437" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 341 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:21.073628" elapsed="0.019832"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.095617" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:21.094040" elapsed="0.001621"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.094022" elapsed="0.001661"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.096242" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.095829" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.096781" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.096433" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:21.096857" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:21.097032" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:21.093711" elapsed="0.003346"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:21.097231" elapsed="0.000382"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:21.072993" elapsed="0.024685"/>
</kw>
<arg>f218.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:21.009486" elapsed="0.088249"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:21.002601" elapsed="0.095251"/>
</test>
<test id="s1-s3-s1-t167" name="Test Is Flow 219 Deleted" line="408">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:21.108657" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f219.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f219.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:21.108795" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;c...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:21.108521" elapsed="0.000303"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:21.109405" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4be6b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:21.108975" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:21.109865" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:21.109585" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:21.110328" level="INFO">${flow_id} = 342</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:21.110042" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:21.110772" level="INFO">${flow_priority} = 219</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:21.110505" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:21.111798" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:21.110947" elapsed="0.000883"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.112348" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.111988" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.112869" level="INFO">${flow_id} = 342</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.112546" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.113415" level="INFO">${flow_priority} = 219</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.113063" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.113924" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;c...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.113610" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.114458" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.114138" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.114976" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4be6b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.114655" elapsed="0.000398"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:21.108194" elapsed="0.006934"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.115683" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.115280" elapsed="0.000434"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.116126" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
		&lt;/clear-actions&gt;
	&lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;342&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;10&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;219&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;
    &lt;priority&gt;219&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.115867" elapsed="0.000320"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.123887" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:21.123589" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:21.129779" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=342?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=342?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:21.129973" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=342?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:21.130091" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:21.124044" elapsed="0.006074"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.130527" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.130276" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.133085" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.130714" elapsed="0.002445"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:21.135739" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:53:21.133257" elapsed="0.002572"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.133230" elapsed="0.002633"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:21.136060" elapsed="0.000051"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:21.136398" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:21.136210" elapsed="0.000259"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:21.136186" elapsed="0.000315"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.136544" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:21.138796" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:21.138859" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 342 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:21.123247" elapsed="0.015644"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.141456" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:21.139696" elapsed="0.001806"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.139671" elapsed="0.001853"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.142080" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.141671" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.142659" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.142304" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:21.142735" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:21.142911" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:21.139201" elapsed="0.003735"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:21.143112" elapsed="0.000397"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:21.122678" elapsed="0.020895"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.151313" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:21.150999" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:21.155882" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:21.155990" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:21.156108" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:21.151506" elapsed="0.004629"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.156546" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.156298" elapsed="0.000293"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.158865" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.156733" elapsed="0.002184"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.161003" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:21.158988" elapsed="0.002101"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.158968" elapsed="0.002155"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:21.164802" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:21.164865" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:21.161318" elapsed="0.003579"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:21.167375" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:21.165003" elapsed="0.002481"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.164978" elapsed="0.002551"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:21.167579" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:53:21.167849" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:21.167909" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 342 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:21.150624" elapsed="0.017316"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.170928" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:21.168721" elapsed="0.002270"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.168696" elapsed="0.002326"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.171833" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.171247" elapsed="0.000623"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.172573" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.172120" elapsed="0.000479"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:21.172649" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:21.172823" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:21.168263" elapsed="0.004585"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:21.173052" elapsed="0.000410"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:21.149990" elapsed="0.023536"/>
</kw>
<arg>f219.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:21.104953" elapsed="0.068629"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:21.098132" elapsed="0.075558"/>
</test>
<test id="s1-s3-s1-t168" name="Test Is Flow 220 Deleted" line="410">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:21.184964" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f220.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f220.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:21.185105" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:21.184832" elapsed="0.000304"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:21.185685" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc76430&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:21.185293" elapsed="0.000420"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:21.186166" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:21.185866" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:21.186617" level="INFO">${flow_id} = 343</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:21.186348" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:21.187061" level="INFO">${flow_priority} = 220</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:21.186794" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:21.188023" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:21.187251" elapsed="0.000804"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.188571" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.188236" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.189109" level="INFO">${flow_id} = 343</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.188769" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.189634" level="INFO">${flow_priority} = 220</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.189307" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.190162" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.189832" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.190678" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.190360" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.191208" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc76430&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.190873" elapsed="0.000377"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:21.184502" elapsed="0.006804"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.191860" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.191476" elapsed="0.000414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.192301" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;write-metadata&gt;
                &lt;metadata-mask&gt;12&lt;/metadata-mask&gt;
                &lt;metadata&gt;10&lt;/metadata&gt;
            &lt;/write-metadata&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;343&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;220&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;
    &lt;priority&gt;220&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.192042" elapsed="0.000352"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.200329" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:21.200009" elapsed="0.000347"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:21.206317" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=343?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=343?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:21.206507" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=343?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:21.206604" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:21.200486" elapsed="0.006143"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.207039" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.206788" elapsed="0.000313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.209787" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.207248" elapsed="0.002609"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:21.212400" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:53:21.209953" elapsed="0.002538"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.209926" elapsed="0.002599"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:21.212721" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:21.213036" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:21.212847" elapsed="0.000283"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:21.212824" elapsed="0.000338"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.213206" elapsed="0.000022"/>
</return>
<msg time="2026-05-25T01:53:21.215508" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:21.215581" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 343 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:21.199690" elapsed="0.015924"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.218587" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:21.216394" elapsed="0.002257"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.216369" elapsed="0.002312"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.219488" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.218884" elapsed="0.000646"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.220272" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.219757" elapsed="0.000552"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:21.220363" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:21.220538" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:21.215907" elapsed="0.004656"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:21.220720" elapsed="0.000397"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:21.199090" elapsed="0.022091"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.228869" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:21.228573" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:21.233435" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:21.233589" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:21.233684" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:21.229024" elapsed="0.004686"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.234146" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.233870" elapsed="0.000322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.236485" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.234337" elapsed="0.002199"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.238364" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:21.236606" elapsed="0.001806"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.236587" elapsed="0.001848"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:21.241455" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:21.241518" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:21.238574" elapsed="0.002978"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:21.244038" elapsed="0.000056"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:21.241659" elapsed="0.002484"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.241632" elapsed="0.002545"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:21.244223" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:53:21.244490" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:21.244551" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 343 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:21.228195" elapsed="0.016388"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.247629" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:21.245354" elapsed="0.002337"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.245329" elapsed="0.002393"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.248493" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.247924" elapsed="0.000596"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.249036" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.248685" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:21.249130" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:21.249307" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:21.244875" elapsed="0.004457"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:21.249490" elapsed="0.000382"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:21.227575" elapsed="0.022360"/>
</kw>
<arg>f220.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:21.181175" elapsed="0.068815"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:21.174058" elapsed="0.076058"/>
</test>
<test id="s1-s3-s1-t169" name="Test Is Flow 221 Deleted" line="412">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:21.261340" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f221.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f221.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:21.261468" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:21.261206" elapsed="0.000291"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:21.262050" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc307ec0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:21.261648" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:21.262576" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:21.262295" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:21.263031" level="INFO">${flow_id} = 344</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:21.262758" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:21.263776" level="INFO">${flow_priority} = 221</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:21.263227" elapsed="0.000609"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:21.264869" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:21.264026" elapsed="0.000874"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.265413" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.265057" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.265933" level="INFO">${flow_id} = 344</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.265610" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.266472" level="INFO">${flow_priority} = 221</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.266143" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.266980" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.266665" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.267526" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.267192" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.268045" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc307ec0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.267726" elapsed="0.000376"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:21.260861" elapsed="0.007298"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.268692" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.268308" elapsed="0.000414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.269134" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;344&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;10&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;221&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-write-actions&lt;/flow-name&gt;
    &lt;priority&gt;221&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.268875" elapsed="0.000318"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.276910" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:21.276603" elapsed="0.000334"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:21.282351" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=344?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=344?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:21.282575" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=344?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:21.282676" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:21.277084" elapsed="0.005673"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.283197" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.282925" elapsed="0.000323"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.286004" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.283392" elapsed="0.002704"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:21.288645" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-05-25T01:53:21.286199" elapsed="0.002542"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.286169" elapsed="0.002607"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:21.288975" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:21.289322" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:21.289126" elapsed="0.000267"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:21.289100" elapsed="0.000325"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.289470" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:21.291765" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:21.291828" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 344 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:21.276280" elapsed="0.015580"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.294143" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:21.292556" elapsed="0.001633"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.292538" elapsed="0.001673"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.294757" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.294358" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.295323" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.294945" elapsed="0.000404"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:21.295398" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:21.295611" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:21.292181" elapsed="0.003457"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:21.295796" elapsed="0.000402"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:21.275682" elapsed="0.020580"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.303976" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:21.303681" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:21.309302" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:21.309411" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:21.309506" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:21.304147" elapsed="0.005384"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.309941" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.309692" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.312408" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.310145" elapsed="0.002383"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.315087" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:21.312628" elapsed="0.002528"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.312600" elapsed="0.002588"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:21.318844" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:21.318907" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:21.315384" elapsed="0.003555"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:21.321197" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:21.319045" elapsed="0.002207"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.319019" elapsed="0.002257"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:21.321308" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:21.321500" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:21.321543" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 344 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:21.303282" elapsed="0.018283"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.323718" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:21.322121" elapsed="0.001642"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.322101" elapsed="0.001684"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.324345" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.323931" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.324886" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.324535" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:21.324961" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:21.325156" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:21.321775" elapsed="0.003406"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:21.325338" elapsed="0.000382"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:21.302663" elapsed="0.023119"/>
</kw>
<arg>f221.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:21.257600" elapsed="0.068239"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:21.250441" elapsed="0.075515"/>
</test>
<test id="s1-s3-s1-t170" name="Test Is Flow 222 Deleted" line="414">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:21.337092" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f222.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f222.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:21.337232" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:21.336941" elapsed="0.000320"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:21.337800" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e5da0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:21.337413" elapsed="0.000415"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:21.338278" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:21.337981" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:21.338726" level="INFO">${flow_id} = 345</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:21.338456" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:21.339188" level="INFO">${flow_priority} = 222</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:21.338901" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:21.339896" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:21.339368" elapsed="0.000558"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.340443" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.340105" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.341190" level="INFO">${flow_id} = 345</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.340675" elapsed="0.000564"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.341728" level="INFO">${flow_priority} = 222</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.341395" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.342256" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.341923" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.342770" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.342452" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.343306" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e5da0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.342966" elapsed="0.000381"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:21.336611" elapsed="0.006791"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.343983" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.343594" elapsed="0.000420"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.344429" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;222&lt;/priority&gt;
    &lt;flow-name&gt;Foo222&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;2.2.0.0/16&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;id&gt;345&lt;/id&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                   &lt;order&gt;0&lt;/order&gt;
                   &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.344182" elapsed="0.000303"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.352144" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:21.351830" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:21.357592" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=345?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=345?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:21.357781" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=345?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:21.357879" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:21.352302" elapsed="0.005602"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.358347" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.358084" elapsed="0.000308"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.360613" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.358537" elapsed="0.002127"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:21.362473" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-05-25T01:53:21.360735" elapsed="0.001802"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.360716" elapsed="0.001845"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:21.362702" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:21.362928" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:21.362792" elapsed="0.000187"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:21.362775" elapsed="0.000257"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.363085" elapsed="0.000017"/>
</return>
<msg time="2026-05-25T01:53:21.364966" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:21.365028" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 345 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:21.351514" elapsed="0.013546"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.368031" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:21.365833" elapsed="0.002281"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.365808" elapsed="0.002338"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.368897" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.368349" elapsed="0.000585"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.369668" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.369180" elapsed="0.000524"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:21.369773" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:53:21.370017" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:21.365371" elapsed="0.004680"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:21.370292" elapsed="0.000531"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:21.350937" elapsed="0.019973"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.379108" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:21.378798" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:21.384098" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:21.384209" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:21.384307" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:21.379267" elapsed="0.005064"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.384740" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.384491" elapsed="0.000293"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.387054" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.384927" elapsed="0.002193"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.388937" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:21.387192" elapsed="0.001792"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.387172" elapsed="0.001835"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:21.391591" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:21.391637" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:21.389160" elapsed="0.002501"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:21.393987" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:21.391737" elapsed="0.002346"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.391719" elapsed="0.002399"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:21.394165" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:53:21.394436" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:21.394495" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 345 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:21.378423" elapsed="0.016104"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.397573" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:21.395353" elapsed="0.002281"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.395329" elapsed="0.002336"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.398445" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.397867" elapsed="0.000616"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.399227" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.398713" elapsed="0.000550"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:21.399334" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:53:21.399596" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:21.394818" elapsed="0.004814"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:21.399853" elapsed="0.000562"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:21.377800" elapsed="0.022705"/>
</kw>
<arg>f222.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:21.333355" elapsed="0.067228"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:21.326281" elapsed="0.074452"/>
</test>
<test id="s1-s3-s1-t171" name="Test Is Flow 223 Deleted" line="416">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:21.412986" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f223.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f223.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:21.413129" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:21.412852" elapsed="0.000305"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:21.413686" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7cb30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:21.413308" elapsed="0.000406"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:21.414160" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:21.413866" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:21.414608" level="INFO">${flow_id} = 346</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:21.414339" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:21.415052" level="INFO">${flow_priority} = 223</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:21.414784" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:21.415770" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:21.415244" elapsed="0.000557"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.416305" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.415958" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.416821" level="INFO">${flow_id} = 346</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.416503" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.417357" level="INFO">${flow_priority} = 223</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.417016" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.418038" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.417549" elapsed="0.000550"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.418579" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.418254" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.419112" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7cb30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.418775" elapsed="0.000380"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:21.412523" elapsed="0.006729"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.419822" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.419405" elapsed="0.000448"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.420266" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;223&lt;/priority&gt;
    &lt;flow-name&gt;Foo223&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination-address-no-mask&gt;7.0.17.0&lt;/ipv4-destination-address-no-mask&gt;
        &lt;ipv4-destination-arbitrary-bitmask&gt;255.0.241.0&lt;/ipv4-destination-arbitrary-bitmask&gt;
    &lt;/match&gt;
    &lt;id&gt;346&lt;/id&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                   &lt;order&gt;0&lt;/order&gt;
                   &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.420004" elapsed="0.000318"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.428018" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:21.427720" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:21.431816" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=346?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=346?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:21.432008" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=346?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:21.432128" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:21.428194" elapsed="0.003961"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.432569" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.432316" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.434800" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.432759" elapsed="0.002092"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:21.436677" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-05-25T01:53:21.434920" elapsed="0.001822"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.434900" elapsed="0.001867"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:21.436907" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:21.437149" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:21.436997" elapsed="0.000205"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:21.436981" elapsed="0.000243"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.437256" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:53:21.438859" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:21.438904" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 346 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:21.427391" elapsed="0.011535"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.441501" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:21.439477" elapsed="0.002088"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.439459" elapsed="0.002136"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.442376" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.441801" elapsed="0.000612"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.443154" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.442641" elapsed="0.000549"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:21.443320" elapsed="0.000041"/>
</return>
<msg time="2026-05-25T01:53:21.443585" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:21.439148" elapsed="0.004473"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:21.443840" elapsed="0.000568"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:21.426815" elapsed="0.017682"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.454497" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:21.454202" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:21.458568" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:21.458676" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:21.458770" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:21.454655" elapsed="0.004140"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.459232" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.458957" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.462244" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.459420" elapsed="0.002896"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.464860" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:21.462414" elapsed="0.002514"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.462386" elapsed="0.002573"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:21.468491" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:21.468554" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:21.465175" elapsed="0.003411"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:21.471062" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:21.468693" elapsed="0.002465"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.468666" elapsed="0.002526"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:21.471237" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:53:21.471556" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:21.471625" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 346 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:21.453809" elapsed="0.017848"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.474004" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:21.472442" elapsed="0.001607"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.472424" elapsed="0.001659"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.474630" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.474233" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.475186" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.474821" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:21.475268" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:21.475443" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:21.471954" elapsed="0.003514"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:21.475637" elapsed="0.000382"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:21.453199" elapsed="0.022938"/>
</kw>
<arg>f223.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:21.409276" elapsed="0.066918"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:21.401192" elapsed="0.075110"/>
</test>
<test id="s1-s3-s1-t172" name="Test Is Flow 224 Deleted" line="418">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:21.487751" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f224.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f224.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:21.487889" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:21.487607" elapsed="0.000312"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:21.488485" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe69580&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:21.488090" elapsed="0.000422"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:21.488941" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:21.488665" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:21.489409" level="INFO">${flow_id} = 347</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:21.489139" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:21.489860" level="INFO">${flow_priority} = 224</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:21.489586" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:21.490585" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:21.490035" elapsed="0.000580"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.491118" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.490771" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.491665" level="INFO">${flow_id} = 347</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.491315" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.494024" level="INFO">${flow_priority} = 224</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.491859" elapsed="0.002220"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.494560" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.494238" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.495097" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.494760" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.495634" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe69580&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.495296" elapsed="0.000380"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:21.487227" elapsed="0.008504"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.496288" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.495884" elapsed="0.000433"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.496712" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;224&lt;/priority&gt;
    &lt;flow-name&gt;Foo224&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-destination-address-no-mask&gt;2001:2001:2001:2001:2001:2001:4000:7000&lt;/ipv6-destination-address-no-mask&gt;
        &lt;ipv6-destination-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:F000:F000&lt;/ipv6-destination-arbitrary-bitmask&gt;
    &lt;/match&gt;
    &lt;id&gt;347&lt;/id&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                   &lt;order&gt;0&lt;/order&gt;
                   &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.496468" elapsed="0.000340"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.504495" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:21.504194" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:21.508389" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=347?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=347?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:21.508622" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=347?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:21.508732" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:21.504653" elapsed="0.004104"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.509183" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.508914" elapsed="0.000313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.511400" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.509370" elapsed="0.002080"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:21.513759" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-05-25T01:53:21.511563" elapsed="0.002292"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.511538" elapsed="0.002352"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:21.514107" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:21.514424" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:21.514236" elapsed="0.000258"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:21.514213" elapsed="0.000313"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.514570" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:53:21.517012" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:21.517096" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 347 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:21.503859" elapsed="0.013272"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.520336" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:21.517883" elapsed="0.002516"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.517859" elapsed="0.002570"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.521213" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.520633" elapsed="0.000620"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.521966" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.521479" elapsed="0.000523"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:21.522091" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:53:21.522339" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:21.517426" elapsed="0.004947"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:21.522589" elapsed="0.000556"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:21.503255" elapsed="0.019978"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.531180" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:21.530867" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:21.536445" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:21.536645" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:21.536779" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:21.531336" elapsed="0.005479"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.537421" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.537037" elapsed="0.000447"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.540689" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.537685" elapsed="0.003076"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.543293" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:21.540859" elapsed="0.002501"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.540831" elapsed="0.002560"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:21.546917" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:21.546981" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:21.543617" elapsed="0.003397"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:21.549264" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:21.547142" elapsed="0.002178"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.547114" elapsed="0.002229"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:21.549375" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:21.549567" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:21.549611" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 347 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:21.530493" elapsed="0.019140"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.551772" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:21.550184" elapsed="0.001633"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.550166" elapsed="0.001672"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.552403" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.551984" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.552942" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.552593" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:21.553018" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:21.553211" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:21.549840" elapsed="0.003400"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:21.553396" elapsed="0.000379"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:21.529868" elapsed="0.023969"/>
</kw>
<arg>f224.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:21.483854" elapsed="0.070039"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:21.476682" elapsed="0.077326"/>
</test>
<test id="s1-s3-s1-t173" name="Test Is Flow 225 Deleted" line="420">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:21.567219" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f225.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f225.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:21.567350" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:21.567082" elapsed="0.000297"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:21.567950" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7fc40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:21.567563" elapsed="0.000414"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:21.568459" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:21.568178" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:21.568906" level="INFO">${flow_id} = 348</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:21.568637" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:21.569369" level="INFO">${flow_priority} = 225</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:21.569098" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:21.570055" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:21.569545" elapsed="0.000555"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.570591" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.570263" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.571122" level="INFO">${flow_id} = 348</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.570788" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.571651" level="INFO">${flow_priority} = 225</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.571318" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.572349" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.571844" elapsed="0.000551"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.572875" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.572549" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.573415" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7fc40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.573089" elapsed="0.000368"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:21.566744" elapsed="0.006769"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.574043" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;et...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.573662" elapsed="0.000425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.574481" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;priority&gt;225&lt;/priority&gt;
    &lt;flow-name&gt;Foo225&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source-address-no-mask&gt;2001:2001:2001:2001:0000:2001:4000:0000&lt;/ipv6-source-address-no-mask&gt;
        &lt;ipv6-source-arbitrary-bitmask&gt;FFFF:FFFF:FFFF:FFFF:0000:FFFF:F000:0000&lt;/ipv6-source-arbitrary-bitmask&gt;
    &lt;/match&gt;
    &lt;id&gt;348&lt;/id&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                   &lt;order&gt;0&lt;/order&gt;
                   &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.574241" elapsed="0.000297"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.582178" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:21.581863" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:21.587439" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=348?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=348?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:21.587642" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=348?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:21.587739" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:21.582334" elapsed="0.005431"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.588234" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.587956" elapsed="0.000323"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.590454" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.588423" elapsed="0.002082"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:21.592326" elapsed="0.000027"/>
</return>
<status status="PASS" start="2026-05-25T01:53:21.590574" elapsed="0.001816"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.590554" elapsed="0.001860"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:21.592555" elapsed="0.000021"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:21.592778" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:21.592645" elapsed="0.000184"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:21.592628" elapsed="0.000224"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.592884" elapsed="0.000015"/>
</return>
<msg time="2026-05-25T01:53:21.594519" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:21.594564" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 348 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:21.581549" elapsed="0.013038"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.596992" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:21.595144" elapsed="0.001911"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.595125" elapsed="0.001982"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.597866" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.597312" elapsed="0.000592"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.598653" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.598163" elapsed="0.000527"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:21.598760" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:53:21.599008" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:21.594795" elapsed="0.004249"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:21.599287" elapsed="0.000585"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:21.580985" elapsed="0.018978"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.608967" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:21.608674" elapsed="0.000319"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:21.614498" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:21.614607" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:21.614702" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:21.609138" elapsed="0.005589"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.615165" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.614888" elapsed="0.000325"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.617565" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.615360" elapsed="0.002290"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.619522" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:21.617723" elapsed="0.001849"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.617703" elapsed="0.001891"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:21.622149" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:21.622195" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:21.619732" elapsed="0.002486"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:21.624047" elapsed="0.000037"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:21.622295" elapsed="0.001824"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.622276" elapsed="0.001867"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:21.624180" elapsed="0.000036"/>
</return>
<msg time="2026-05-25T01:53:21.624492" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:21.624553" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 348 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:21.608299" elapsed="0.016286"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.627647" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:21.625367" elapsed="0.002343"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.625342" elapsed="0.002398"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.628530" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.627946" elapsed="0.000623"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.629313" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.628799" elapsed="0.000551"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:21.629421" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:53:21.629671" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:21.624879" elapsed="0.004828"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:21.629931" elapsed="0.000566"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:21.607679" elapsed="0.022909"/>
</kw>
<arg>f225.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:21.563160" elapsed="0.067507"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:21.554349" elapsed="0.076470"/>
</test>
<test id="s1-s3-s1-t174" name="Test Is Flow 550 Deleted" line="422">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:21.642280" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f550.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f550.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:21.642407" level="INFO">${data} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;
    &lt;match&gt;
   ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:21.642139" elapsed="0.000297"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:21.642977" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7d7b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:21.642588" elapsed="0.000417"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:21.643454" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:21.643176" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:21.643934" level="INFO">${flow_id} = 550</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:21.643662" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:21.644406" level="INFO">${flow_priority} = 550</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:21.644134" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:21.645186" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;f...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:21.644590" elapsed="0.000631"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.645711" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.645379" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.646478" level="INFO">${flow_id} = 550</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.645951" elapsed="0.000570"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.647009" level="INFO">${flow_priority} = 550</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.646679" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.647577" level="INFO">${data} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;
    &lt;match&gt;
   ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.647222" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.648122" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;f...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.647782" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.648646" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7d7b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.648323" elapsed="0.000364"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:21.641795" elapsed="0.006948"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.649294" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;f...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.648895" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.649719" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
    &lt;priority&gt;550&lt;/priority&gt;
    &lt;flow-name&gt;flow-tunnel&lt;/flow-name&gt;
    &lt;match&gt;
        &lt;extension-list xmlns="urn:opendaylight:openflowplugin:extension:general"&gt;
            &lt;extension-key xmlns:x="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;x:nxm-nx-tun-ipv4-src-key&lt;/extension-key&gt;
            &lt;extension&gt;
                &lt;nxm-nx-tun-ipv4-src xmlns="urn:opendaylight:openflowplugin:extension:nicira:match"&gt;
                    &lt;ipv4-address&gt;192.168.0.10&lt;/ipv4-address&gt;
                &lt;/nxm-nx-tun-ipv4-src&gt;
            &lt;/extension&gt;
        &lt;/extension-list&gt;
    &lt;/match&gt;
    &lt;id&gt;550&lt;/id&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.649478" elapsed="0.000300"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.657611" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:21.657313" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:21.663711" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=550?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=550?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:21.663903" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=550?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:21.664000" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:21.657768" elapsed="0.006258"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.664621" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.664226" elapsed="0.000457"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.667809" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.664884" elapsed="0.002996"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:21.670469" elapsed="0.000038"/>
</return>
<status status="PASS" start="2026-05-25T01:53:21.667976" elapsed="0.002584"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.667949" elapsed="0.002645"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:21.670791" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:21.671177" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:21.670967" elapsed="0.000285"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:21.670942" elapsed="0.000342"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.671330" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:21.673346" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:21.673392" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 550 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:21.656976" elapsed="0.016439"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.675581" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:21.673957" elapsed="0.001674"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.673939" elapsed="0.001714"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.676212" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.675800" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.676761" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.676407" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:21.676837" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:21.677016" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:21.673623" elapsed="0.003419"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:21.677216" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:21.656426" elapsed="0.021236"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.685573" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:21.685278" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:21.691086" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01bcrvdlsldtic1k7m1kzypn0ku8.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:21.691207" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:53:21.691314" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:21.685730" elapsed="0.005610"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.691815" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.691513" elapsed="0.000347"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.695040" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.692004" elapsed="0.003128"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.697792" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:21.695239" elapsed="0.002622"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.695206" elapsed="0.002687"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:21.701558" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:53:21.701623" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:21.698108" elapsed="0.003548"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:21.704260" elapsed="0.000038"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:21.701765" elapsed="0.002581"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.701739" elapsed="0.002637"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:21.704417" elapsed="0.000032"/>
</return>
<msg time="2026-05-25T01:53:21.704616" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:53:21.704701" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 550 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:21.684883" elapsed="0.019843"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:21.706925" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:21.705304" elapsed="0.001668"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:21.705286" elapsed="0.001708"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.707581" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.707161" elapsed="0.000448"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.708151" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:21.707777" elapsed="0.000401"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:21.708234" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:21.708413" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:21.704945" elapsed="0.003494"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:21.708597" elapsed="0.000391"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:21.684271" elapsed="0.024783"/>
</kw>
<arg>f550.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:21.638470" elapsed="0.070661"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:21.631167" elapsed="0.078083"/>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-05-25T01:53:21.710246" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-05-25T01:53:21.710165" elapsed="0.000151"/>
</kw>
<doc>Test suite for Stats Manager flows collection</doc>
<status status="PASS" start="2026-05-25T01:52:45.188437" elapsed="36.521914"/>
</suite>
<suite id="s1-s3-s2" name="020 SM sal add upd del flows" source="/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Flows_Additional_TCs/Stat_Manager_extended/020_SM_sal_add_upd_del_flows.robot">
<kw name="Initialization Phase" type="SETUP">
<kw name="Create Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:21.763401" level="INFO">Creating Session using : alias=session, url=http://10.30.170.200:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7f5acc2c27d0&gt;, timeout=None, proxies=None, verify=False,                     debug=0 </msg>
<arg>session</arg>
<arg>http://${ODL_SYSTEM_IP}:${RESTCONFPORT}</arg>
<arg>auth=${AUTH}</arg>
<arg>headers=${HEADERS_XML}</arg>
<doc>Create Session: create a HTTP session to a server</doc>
<status status="PASS" start="2026-05-25T01:53:21.763064" elapsed="0.000523"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Switches In Inventory" owner="FlowLib">
<for flavor="IN RANGE">
<iter>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:21.779496" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:21.781294" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 24-May-2026 01:53:21 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":55842,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-9","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"14","byte-count":"1100","duration":{"second":33,"nanosecond":439000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"16","active-flows":1,"packets-matched":"14"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:21.781592" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:21.767547" elapsed="0.014083"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.784922" level="INFO">{"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":55842,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-9","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"14","byte-count":"1100","duration":{"second":33,"nanosecond":439000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"16","active-flows":1,"packets-matched":"14"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s1","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:53:18.809Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"f2:4c:58:8c:b0:53","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"16","received":"9"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":33,"nanosecond":654000000},"bytes":{"transmitted":"1336","received":"726"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"a6:28:87:84:d1:49","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":33,"nanosecond":647000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"8a:d2:eb:04:fb:42","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"17","received":"9"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":33,"nanosecond":655000000},"bytes":{"transmitted":"1406","received":"726"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:53:18.827Z"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.781851" elapsed="0.003616"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>flow-capable-node-connector-statistics</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:53:21.785680" elapsed="0.003102"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>flow-table-statistics</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:53:21.788938" elapsed="0.002236"/>
</kw>
<var name="${switch}">1</var>
<status status="PASS" start="2026-05-25T01:53:21.767421" elapsed="0.023795"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-05-25T01:53:21.765589" elapsed="0.025659"/>
</for>
<arg>${1}</arg>
<doc>Check all switches and stats in operational inventory</doc>
<status status="PASS" start="2026-05-25T01:53:21.764277" elapsed="0.027032"/>
</kw>
<arg>10x</arg>
<arg>1s</arg>
<arg>FlowLib.Check Switches In Inventory</arg>
<arg>${1}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:53:21.763741" elapsed="0.027615"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:53:21.794433" level="INFO">dpctl dump-flows -O OpenFlow13</msg>
<arg>dpctl dump-flows -O OpenFlow13</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:53:21.791507" elapsed="0.002984"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:53:21.830481" level="INFO">*** s1 ------------------------------------------------------------------------
 cookie=0xa, duration=36.430s, table=0, n_packets=14, n_bytes=1100, send_flow_rem priority=0 actions=CONTROLLER:65535
mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:53:21.794645" elapsed="0.035900"/>
</kw>
<doc>Initiate tcp connection with controller</doc>
<status status="PASS" start="2026-05-25T01:53:21.762844" elapsed="0.067763"/>
</kw>
<test id="s1-s3-s2-t1" name="Test Add Flows Group 0" line="36">
<for flavor="IN">
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.831606" level="INFO">f1.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:21.831332" elapsed="0.000324"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:21.834975" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f1.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f1.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:21.835151" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:21.834837" elapsed="0.000344"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:21.835767" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc307510&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:21.835334" elapsed="0.000461"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:21.836318" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:21.835950" elapsed="0.000437"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:21.837373" level="INFO">${flow_id} = 124</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:21.836736" elapsed="0.000694"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:21.838405" level="INFO">${flow_priority} = 1</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:21.837769" elapsed="0.000695"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:21.840478" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:21.838799" elapsed="0.001709"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.840999" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.840672" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.841532" level="INFO">${flow_id} = 124</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.841218" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.842041" level="INFO">${flow_priority} = 1</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.841729" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.842557" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.842252" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.843059" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.842753" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:21.843634" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc307510&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:21.843285" elapsed="0.000393"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:21.834500" elapsed="0.009235"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:21.848035" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc305350&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:21.847688" elapsed="0.000375"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:21.848230" elapsed="0.000272"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:21.848657" elapsed="0.000242"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:21.849049" elapsed="0.000262"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:21.849463" elapsed="0.000539"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:21.850446" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc307560&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:21.850175" elapsed="0.000299"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:21.850622" elapsed="0.000246"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:21.851488" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;1&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf1&lt;/flow-name&gt;
    &lt;priority&gt;1&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:21.851016" elapsed="0.000560"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:21.852138" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:21.851731" elapsed="0.000438"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:22.137903" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '898', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;1&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf1&lt;/flow-name&gt;
    &lt;priority&gt;1&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:22.138133" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:22.138437" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:21.852302" elapsed="0.286197"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:22.143551" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:22.138955" elapsed="0.004718"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc307510&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc307510&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:21.847309" elapsed="0.296508"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:21.843892" elapsed="0.300047"/>
</kw>
<var name="${flowfile}">f1.xml</var>
<status status="PASS" start="2026-05-25T01:53:21.831200" elapsed="0.312822"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:22.145192" level="INFO">f2.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:22.144586" elapsed="0.000708"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:22.150508" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f2.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f2.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:22.150673" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:22.150365" elapsed="0.000395"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:22.151354" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc74c20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:22.150917" elapsed="0.000466"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:22.151865" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:22.151538" elapsed="0.000353"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:22.152331" level="INFO">${flow_id} = 125</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:22.152044" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:22.152779" level="INFO">${flow_priority} = 2</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:22.152510" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:22.153798" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:22.152958" elapsed="0.000871"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:22.154341" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:22.153992" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:22.154846" level="INFO">${flow_id} = 125</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:22.154538" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:22.155371" level="INFO">${flow_priority} = 2</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:22.155039" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:22.155878" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:22.155564" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:22.156401" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:22.156089" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:22.156901" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc74c20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:22.156596" elapsed="0.000346"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:22.149996" elapsed="0.007000"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:22.161199" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc306de0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:22.160855" elapsed="0.000371"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:22.161373" elapsed="0.000268"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:22.161793" elapsed="0.000236"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:22.162192" elapsed="0.000247"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:22.162587" elapsed="0.000333"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:22.163353" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5ace952a20&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:22.163086" elapsed="0.000293"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:22.163525" elapsed="0.000258"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:22.164301" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;
    &lt;/match&gt;
    &lt;cookie&gt;2&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf2&lt;/flow-name&gt;
    &lt;priority&gt;2&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:22.163930" elapsed="0.000431"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:22.164926" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:22.164539" elapsed="0.000417"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:22.638015" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '889', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;
    &lt;/match&gt;
    &lt;cookie&gt;2&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf2&lt;/flow-name&gt;
    &lt;priority&gt;2&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:22.638235" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:22.638511" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:22.165102" elapsed="0.473469"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:22.643569" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:22.639001" elapsed="0.004738"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5abfc74c20&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5abfc74c20&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:22.160501" elapsed="0.483380"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:22.157161" elapsed="0.486840"/>
</kw>
<var name="${flowfile}">f2.xml</var>
<status status="PASS" start="2026-05-25T01:53:22.144290" elapsed="0.499834"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:22.645139" level="INFO">f3.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:22.644659" elapsed="0.000543"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:22.650030" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f3.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f3.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:22.650261" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:22.649836" elapsed="0.000465"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:22.651104" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bfa60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:22.650513" elapsed="0.000632"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:22.651785" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:22.651363" elapsed="0.000461"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:22.652443" level="INFO">${flow_id} = 126</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:22.652040" elapsed="0.000440"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:22.653088" level="INFO">${flow_priority} = 3</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:22.652693" elapsed="0.000433"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:22.654208" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:22.653340" elapsed="0.000911"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:22.654930" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:22.654479" elapsed="0.000509"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:22.655981" level="INFO">${flow_id} = 126</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:22.655226" elapsed="0.000814"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:22.656655" level="INFO">${flow_priority} = 3</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:22.656301" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:22.657165" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:22.656849" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:22.657729" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:22.657419" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:22.658248" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bfa60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:22.657926" elapsed="0.000364"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:22.649346" elapsed="0.008998"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:22.662542" level="INFO">${req} = &lt;Element 'flow' at 0x7f5abfc75080&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:22.662214" elapsed="0.000356"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:22.662718" elapsed="0.000266"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:22.663152" elapsed="0.000245"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:22.663545" elapsed="0.000274"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:22.663969" elapsed="0.000358"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:22.664747" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfc74c70&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:22.664481" elapsed="0.000292"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:22.664920" elapsed="0.000261"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:22.665682" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:00:01&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;3&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf3&lt;/flow-name&gt;
    &lt;priority&gt;3&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:22.665332" elapsed="0.000410"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:22.666282" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:22.665888" elapsed="0.000424"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:23.138665" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '865', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:00:01&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;3&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf3&lt;/flow-name&gt;
    &lt;priority&gt;3&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:23.138832" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:23.139142" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:22.666443" elapsed="0.472763"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:23.144279" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:23.139655" elapsed="0.004742"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc4bfa60&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc4bfa60&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:22.661846" elapsed="0.482691"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:22.658494" elapsed="0.486276"/>
</kw>
<var name="${flowfile}">f3.xml</var>
<status status="PASS" start="2026-05-25T01:53:22.644367" elapsed="0.500485"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:23.145998" level="INFO">f4.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:23.145426" elapsed="0.000706"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:23.150843" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f4.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f4.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:23.151005" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:23.150697" elapsed="0.000337"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:23.151640" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bf790&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:23.151202" elapsed="0.000466"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:23.152162" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:23.151856" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:23.152614" level="INFO">${flow_id} = 127</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:23.152344" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:23.153065" level="INFO">${flow_priority} = 4</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:23.152795" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:23.153923" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:23.153261" elapsed="0.000692"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:23.154462" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:23.154130" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:23.154966" level="INFO">${flow_id} = 127</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:23.154657" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:23.155486" level="INFO">${flow_priority} = 4</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:23.155175" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:23.156004" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:23.155679" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:23.156722" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:23.156218" elapsed="0.000550"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:23.157247" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bf790&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:23.156923" elapsed="0.000366"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:23.150341" elapsed="0.007004"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:23.161576" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc4e7a60&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:23.161234" elapsed="0.000369"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:23.161750" elapsed="0.000266"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:23.162192" elapsed="0.000244"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:23.162585" elapsed="0.000243"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:23.162978" elapsed="0.000356"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:23.163767" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfc76930&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:23.163487" elapsed="0.000307"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:23.163940" elapsed="0.000261"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:23.164766" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;4&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf4&lt;/flow-name&gt;
    &lt;priority&gt;4&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:23.164394" elapsed="0.000434"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:23.165395" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:23.164974" elapsed="0.000452"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:23.639920" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1082', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;4&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf4&lt;/flow-name&gt;
    &lt;priority&gt;4&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:23.640151" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:23.640441" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:23.165555" elapsed="0.474948"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:23.645560" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:23.640957" elapsed="0.004704"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc4bf790&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc4bf790&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:23.160863" elapsed="0.484939"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:23.157496" elapsed="0.488430"/>
</kw>
<var name="${flowfile}">f4.xml</var>
<status status="PASS" start="2026-05-25T01:53:23.145125" elapsed="0.500882"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:23.647183" level="INFO">f5.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:23.646579" elapsed="0.000707"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:23.651396" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f5.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f5.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:23.651565" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:23.651250" elapsed="0.000344"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:23.652210" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6a700&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:23.651747" elapsed="0.000491"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:23.652678" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:23.652395" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:23.653147" level="INFO">${flow_id} = 128</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:23.652858" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:23.653602" level="INFO">${flow_priority} = 5</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:23.653327" elapsed="0.000355"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:23.654535" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:23.653838" elapsed="0.000729"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:23.655058" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:23.654730" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:23.655587" level="INFO">${flow_id} = 128</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:23.655274" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:23.656277" level="INFO">${flow_priority} = 5</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:23.655800" elapsed="0.000520"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:23.658321" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:23.656480" elapsed="0.001890"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:23.658849" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:23.658530" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:23.659451" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6a700&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:23.659125" elapsed="0.000369"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:23.650877" elapsed="0.008674"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:23.663918" level="INFO">${req} = &lt;Element 'flow' at 0x7f5abfe6ac00&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:23.663521" elapsed="0.000425"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:23.664110" elapsed="0.000270"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:23.664532" elapsed="0.000238"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:23.664919" elapsed="0.000260"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:23.665330" elapsed="0.000339"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:23.666105" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfe69fd0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:23.665822" elapsed="0.000312"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:23.666288" elapsed="0.000245"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:23.667055" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;5&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;5&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:23.666681" elapsed="0.000453"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:23.667676" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:23.667281" elapsed="0.000425"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:24.141174" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1191', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;5&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;5&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:24.141500" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:24.141790" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:23.667868" elapsed="0.473985"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:24.146887" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:24.142338" elapsed="0.004649"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5abfe6a700&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5abfe6a700&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:23.663157" elapsed="0.484001"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:23.659703" elapsed="0.487580"/>
</kw>
<var name="${flowfile}">f5.xml</var>
<status status="PASS" start="2026-05-25T01:53:23.646281" elapsed="0.501083"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:24.148494" level="INFO">f6.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:24.147959" elapsed="0.000601"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:24.153110" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f6.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f6.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:24.153274" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:24.152951" elapsed="0.000352"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:24.153893" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc75f80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:24.153458" elapsed="0.000465"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:24.154378" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:24.154093" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:24.154831" level="INFO">${flow_id} = 129</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:24.154558" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:24.155304" level="INFO">${flow_priority} = 6</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:24.155009" elapsed="0.000321"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:24.156178" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:24.155483" elapsed="0.000727"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:24.156701" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:24.156373" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:24.157223" level="INFO">${flow_id} = 129</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:24.156899" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:24.157731" level="INFO">${flow_priority} = 6</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:24.157416" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:24.158449" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:24.157925" elapsed="0.000571"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:24.158961" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:24.158650" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:24.159486" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc75f80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:24.159175" elapsed="0.000354"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:24.152595" elapsed="0.006989"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:24.163854" level="INFO">${req} = &lt;Element 'flow' at 0x7f5abfc74270&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:24.163498" elapsed="0.000387"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:24.164037" elapsed="0.000289"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:24.164479" elapsed="0.000238"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:24.164902" elapsed="0.000262"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:24.165316" elapsed="0.000338"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:24.166088" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc4ba9d0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:24.165807" elapsed="0.000309"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:24.166265" elapsed="0.000245"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:24.167028" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;6&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;6&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:24.166657" elapsed="0.000449"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:24.167651" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:24.167255" elapsed="0.000427"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:24.642001" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1151', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;6&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;6&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:24.642236" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:24.642527" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:24.167814" elapsed="0.474776"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:24.647623" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:24.643046" elapsed="0.004676"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5abfc75f80&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5abfc75f80&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:24.163141" elapsed="0.484720"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:24.159735" elapsed="0.488307"/>
</kw>
<var name="${flowfile}">f6.xml</var>
<status status="PASS" start="2026-05-25T01:53:24.147602" elapsed="0.500552"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:24.649300" level="INFO">f7.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:24.648698" elapsed="0.000702"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:24.654570" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f7.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f7.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:24.654739" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:24.654424" elapsed="0.000344"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:24.655445" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6b740&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:24.654979" elapsed="0.000496"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:24.655926" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:24.655631" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:24.656400" level="INFO">${flow_id} = 130</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:24.656125" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:24.656861" level="INFO">${flow_priority} = 7</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:24.656579" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:24.657797" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:24.657039" elapsed="0.000789"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:24.658338" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:24.657993" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:24.658842" level="INFO">${flow_id} = 130</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:24.658534" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:24.659578" level="INFO">${flow_priority} = 7</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:24.659034" elapsed="0.000586"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:24.660104" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:24.659775" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:24.660610" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:24.660303" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:24.661128" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6b740&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:24.660806" elapsed="0.000364"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:24.654052" elapsed="0.007173"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:24.665484" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc4b8950&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:24.665123" elapsed="0.000388"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:24.665658" elapsed="0.000266"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:24.666103" elapsed="0.000240"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:24.666491" elapsed="0.000243"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:24.666882" elapsed="0.000361"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:24.667665" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfe691c0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:24.667398" elapsed="0.000293"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:24.667839" elapsed="0.000289"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:24.668666" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;15&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;7&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf7&lt;/flow-name&gt;
    &lt;priority&gt;7&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:24.668277" elapsed="0.000489"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:24.669347" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:24.668917" elapsed="0.000460"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:25.143460" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1336', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;15&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;7&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf7&lt;/flow-name&gt;
    &lt;priority&gt;7&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:25.143647" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:25.143934" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:24.669509" elapsed="0.474513"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:25.149165" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:25.144534" elapsed="0.004734"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5abfe6b740&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5abfe6b740&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:24.664750" elapsed="0.484658"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:24.661375" elapsed="0.488155"/>
</kw>
<var name="${flowfile}">f7.xml</var>
<status status="PASS" start="2026-05-25T01:53:24.648398" elapsed="0.501213"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:25.150748" level="INFO">f8.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:25.150177" elapsed="0.000673"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:25.155243" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f8.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f8.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:25.155407" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:25.155098" elapsed="0.000338"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:25.156056" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4be5c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:25.155590" elapsed="0.000510"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:25.156548" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:25.156257" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:25.157000" level="INFO">${flow_id} = 131</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:25.156728" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:25.157466" level="INFO">${flow_priority} = 8</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:25.157193" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:25.158647" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:25.157643" elapsed="0.001035"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:25.159189" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:25.158842" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:25.159702" level="INFO">${flow_id} = 131</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:25.159390" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:25.160322" level="INFO">${flow_priority} = 8</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:25.159955" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:25.160824" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:25.160520" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:25.161345" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:25.161020" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:25.161850" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4be5c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:25.161543" elapsed="0.000349"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:25.154728" elapsed="0.007219"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:25.166245" level="INFO">${req} = &lt;Element 'flow' at 0x7f5ace4e6a20&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:25.165865" elapsed="0.000408"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:25.166420" elapsed="0.000271"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:25.166844" elapsed="0.000254"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:25.167249" elapsed="0.000244"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:25.167642" elapsed="0.000357"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:25.168455" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfe699e0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:25.168182" elapsed="0.000300"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:25.168630" elapsed="0.000246"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:25.169445" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:00&lt;/address&gt;
                &lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;8&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf8&lt;/flow-name&gt;
    &lt;priority&gt;8&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:25.169025" elapsed="0.000487"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:25.170096" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:25.169659" elapsed="0.000469"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:25.644219" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1490', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:00&lt;/address&gt;
                &lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;8&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf8&lt;/flow-name&gt;
    &lt;priority&gt;8&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:25.644545" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:25.644880" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:25.170260" elapsed="0.474686"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:25.650147" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:25.645438" elapsed="0.004813"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc4be5c0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc4be5c0&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:25.165508" elapsed="0.484884"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:25.162111" elapsed="0.488401"/>
</kw>
<var name="${flowfile}">f8.xml</var>
<status status="PASS" start="2026-05-25T01:53:25.149849" elapsed="0.500745"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:25.651729" level="INFO">f9.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:25.651155" elapsed="0.000676"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:25.657396" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f9.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f9.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:25.657626" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:25.657187" elapsed="0.000483"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:25.658560" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7e8e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:25.657888" elapsed="0.000714"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:25.659260" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:25.658834" elapsed="0.000470"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:25.659909" level="INFO">${flow_id} = 132</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:25.659523" elapsed="0.000423"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:25.660624" level="INFO">${flow_priority} = 9</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:25.660227" elapsed="0.000434"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:25.661990" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:25.660875" elapsed="0.001146"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:25.662549" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:25.662206" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:25.663064" level="INFO">${flow_id} = 132</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:25.662751" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:25.663604" level="INFO">${flow_priority} = 9</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:25.663282" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:25.664138" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:25.663804" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:25.664659" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:25.664345" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:25.665199" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7e8e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:25.664862" elapsed="0.000381"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:25.656664" elapsed="0.008636"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:25.669640" level="INFO">${req} = &lt;Element 'flow' at 0x7f5abfe6ac00&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:25.669259" elapsed="0.000409"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:25.669821" elapsed="0.000288"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:25.670263" elapsed="0.000242"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:25.670697" elapsed="0.000256"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:25.671122" elapsed="0.000347"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:25.671898" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc304540&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:25.671626" elapsed="0.000300"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:25.672091" elapsed="0.000282"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:25.672940" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;9&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf9&lt;/flow-name&gt;
    &lt;priority&gt;9&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:25.672524" elapsed="0.000485"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:25.673624" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:25.673184" elapsed="0.000471"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:26.145555" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1446', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;9&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf9&lt;/flow-name&gt;
    &lt;priority&gt;9&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:26.145747" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:26.146031" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:25.673788" elapsed="0.472337"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:26.150524" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:26.146584" elapsed="0.004003"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5abff7e8e0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5abff7e8e0&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:25.668869" elapsed="0.481809"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:25.665454" elapsed="0.485304"/>
</kw>
<var name="${flowfile}">f9.xml</var>
<status status="PASS" start="2026-05-25T01:53:25.650832" elapsed="0.499978"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:26.151580" level="INFO">f10.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:26.151218" elapsed="0.000426"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:26.156976" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f10.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f10.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:26.157287" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:26.156723" elapsed="0.000618"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:26.158022" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ee980&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:26.157552" elapsed="0.000500"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:26.158514" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:26.158227" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:26.158969" level="INFO">${flow_id} = 133</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:26.158696" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:26.159438" level="INFO">${flow_priority} = 10</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:26.159164" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:26.160621" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:26.159615" elapsed="0.001037"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:26.161162" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:26.160815" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:26.161678" level="INFO">${flow_id} = 133</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:26.161363" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:26.162208" level="INFO">${flow_priority} = 10</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:26.161877" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:26.162710" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:26.162406" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:26.163233" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:26.162908" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:26.163745" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ee980&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:26.163437" elapsed="0.000350"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:26.155876" elapsed="0.007967"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:26.168135" level="INFO">${req} = &lt;Element 'flow' at 0x7f5abff7c630&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:26.167762" elapsed="0.000401"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:26.168310" elapsed="0.000292"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:26.168758" elapsed="0.000241"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:26.169163" elapsed="0.000247"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:26.169561" elapsed="0.000341"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:26.170337" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abff7f830&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:26.170053" elapsed="0.000311"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:26.170512" elapsed="0.000242"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:26.171310" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;10&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf10&lt;/flow-name&gt;
    &lt;priority&gt;10&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:26.170901" elapsed="0.000511"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:26.171982" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:26.171560" elapsed="0.000452"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:26.645415" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1450', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;10&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf10&lt;/flow-name&gt;
    &lt;priority&gt;10&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:26.645608" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:26.645897" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:26.172160" elapsed="0.473799"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:26.650784" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:26.646448" elapsed="0.004399"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc3ee980&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc3ee980&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:26.167403" elapsed="0.483536"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:26.163996" elapsed="0.487022"/>
</kw>
<var name="${flowfile}">f10.xml</var>
<status status="PASS" start="2026-05-25T01:53:26.150969" elapsed="0.500119"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:26.651791" level="INFO">f11.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:26.651435" elapsed="0.000419"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:26.656687" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f11.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f11.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:26.656900" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:26.656491" elapsed="0.000450"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:26.657830" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3eed40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:26.657174" elapsed="0.000697"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:26.658511" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:26.658108" elapsed="0.000429"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:26.658959" level="INFO">${flow_id} = 134</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:26.658691" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:26.659428" level="INFO">${flow_priority} = 11</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:26.659157" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:26.660581" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:26.659606" elapsed="0.001006"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:26.661119" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:26.660774" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:26.661706" level="INFO">${flow_id} = 134</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:26.661335" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:26.662238" level="INFO">${flow_priority} = 11</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:26.661904" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:26.662737" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:26.662432" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:26.663257" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:26.662933" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:26.663762" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3eed40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:26.663455" elapsed="0.000349"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:26.655987" elapsed="0.007872"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:26.668126" level="INFO">${req} = &lt;Element 'flow' at 0x7f5abff7f830&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:26.667751" elapsed="0.000403"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:26.668302" elapsed="0.000268"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:26.668721" elapsed="0.000237"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:26.669123" elapsed="0.000265"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:26.669539" elapsed="0.000337"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:26.670314" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfc76930&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:26.670029" elapsed="0.000312"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:26.670489" elapsed="0.000245"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:26.671288" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;1&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;27&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv4-match&gt;
            &lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;
            &lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;
        &lt;/icmpv4-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;11&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf11&lt;/flow-name&gt;
    &lt;priority&gt;11&lt;/priority&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:26.670881" elapsed="0.000474"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:26.671930" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:26.671504" elapsed="0.000456"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:27.146828" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1441', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;1&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;27&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv4-match&gt;
            &lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;
            &lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;
        &lt;/icmpv4-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;11&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf11&lt;/flow-name&gt;
    &lt;priority&gt;11&lt;/priority&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:27.147185" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:27.147473" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:26.672114" elapsed="0.475422"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:27.151755" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:27.147974" elapsed="0.003845"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc3eed40&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc3eed40&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:26.667394" elapsed="0.484515"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:26.664011" elapsed="0.487975"/>
</kw>
<var name="${flowfile}">f11.xml</var>
<status status="PASS" start="2026-05-25T01:53:26.651249" elapsed="0.500789"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:27.152758" level="INFO">f14.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:27.152403" elapsed="0.000418"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:27.157658" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f14.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f14.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:27.157869" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:27.157461" elapsed="0.000451"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:27.158685" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ef6f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:27.158177" elapsed="0.000538"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:27.159172" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:27.158870" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:27.159626" level="INFO">${flow_id} = 137</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:27.159351" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:27.160268" level="INFO">${flow_priority} = 14</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:27.159803" elapsed="0.000492"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:27.161224" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:27.160454" elapsed="0.000801"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:27.161754" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:27.161422" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:27.162311" level="INFO">${flow_id} = 137</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:27.161954" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:27.162824" level="INFO">${flow_priority} = 14</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:27.162508" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:27.163346" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:27.163021" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:27.163854" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:27.163545" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:27.164383" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ef6f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:27.164053" elapsed="0.000371"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:27.156955" elapsed="0.007524"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:27.168739" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc3ed620&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:27.168377" elapsed="0.000390"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:27.168915" elapsed="0.000282"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:27.169354" elapsed="0.000240"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:27.169784" elapsed="0.000248"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:27.170221" elapsed="0.000338"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:27.170985" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abff7fa60&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:27.170715" elapsed="0.000297"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:27.171178" elapsed="0.000247"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:27.171968" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x806&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;arp-op&gt;1&lt;/arp-op&gt;
        &lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;
        &lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;
        &lt;arp-source-hardware-address&gt;
            &lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;
        &lt;/arp-source-hardware-address&gt;
        &lt;arp-target-hardware-address&gt;
            &lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;
        &lt;/arp-target-hardware-address&gt;
    &lt;/match&gt;
    &lt;cookie&gt;14&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf14&lt;/flow-name&gt;
    &lt;priority&gt;14&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:27.171575" elapsed="0.000463"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:27.172623" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:27.172203" elapsed="0.000450"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:27.647808" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1669', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x806&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;arp-op&gt;1&lt;/arp-op&gt;
        &lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;
        &lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;
        &lt;arp-source-hardware-address&gt;
            &lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;
        &lt;/arp-source-hardware-address&gt;
        &lt;arp-target-hardware-address&gt;
            &lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;
        &lt;/arp-target-hardware-address&gt;
    &lt;/match&gt;
    &lt;cookie&gt;14&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf14&lt;/flow-name&gt;
    &lt;priority&gt;14&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:27.648000" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:27.648311" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:27.172783" elapsed="0.475588"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:27.653757" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:27.648818" elapsed="0.005039"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc3ef6f0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc3ef6f0&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:27.168000" elapsed="0.485992"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:27.164630" elapsed="0.489515"/>
</kw>
<var name="${flowfile}">f14.xml</var>
<status status="PASS" start="2026-05-25T01:53:27.152217" elapsed="0.502107"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:27.655401" level="INFO">f15.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:27.654854" elapsed="0.000592"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:27.658911" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f15.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f15.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:27.659100" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:27.658757" elapsed="0.000375"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:27.659723" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35b970&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:27.659285" elapsed="0.000467"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:27.660213" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:27.659908" elapsed="0.000331"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:27.660718" level="INFO">${flow_id} = 138</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:27.660430" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:27.661194" level="INFO">${flow_priority} = 15</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:27.660900" elapsed="0.000320"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:27.662055" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:27.661372" elapsed="0.000730"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:27.662595" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:27.662265" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:27.663162" level="INFO">${flow_id} = 138</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:27.662795" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:27.663680" level="INFO">${flow_priority} = 15</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:27.663363" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:27.664201" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:27.663879" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:27.664719" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:27.664408" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:27.665255" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35b970&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:27.664920" elapsed="0.000378"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:27.658402" elapsed="0.006953"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:27.669747" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc3589f0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:27.669399" elapsed="0.000376"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:27.669922" elapsed="0.000282"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:27.670357" elapsed="0.000236"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:27.670742" elapsed="0.000266"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:27.671174" elapsed="0.000335"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:27.671926" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc35af20&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:27.671662" elapsed="0.000291"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:27.672114" elapsed="0.000384"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:27.673019" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;15&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf15&lt;/flow-name&gt;
    &lt;priority&gt;15&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:27.672646" elapsed="0.000486"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:27.673684" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:27.673281" elapsed="0.000433"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:28.149323" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1234', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;15&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf15&lt;/flow-name&gt;
    &lt;priority&gt;15&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:28.149512" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:28.149770" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:27.673845" elapsed="0.475985"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:28.154039" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:28.150321" elapsed="0.003802"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc35b970&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc35b970&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:27.668876" elapsed="0.485341"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:27.665509" elapsed="0.488785"/>
</kw>
<var name="${flowfile}">f15.xml</var>
<status status="PASS" start="2026-05-25T01:53:27.654562" elapsed="0.499784"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:28.155049" level="INFO">f16.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:28.154696" elapsed="0.000437"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:28.160215" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f16.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f16.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:28.160438" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:28.159969" elapsed="0.000498"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:28.161084" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc092020&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:28.160621" elapsed="0.000492"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:28.161551" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:28.161268" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:28.161998" level="INFO">${flow_id} = 139</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:28.161729" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:28.162460" level="INFO">${flow_priority} = 16</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:28.162190" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:28.163359" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:28.162636" elapsed="0.000754"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:28.163897" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:28.163550" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:28.164429" level="INFO">${flow_id} = 139</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:28.164113" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:28.164995" level="INFO">${flow_priority} = 16</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:28.164680" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:28.165507" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:28.165205" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:28.166011" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:28.165703" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:28.166532" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc092020&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:28.166225" elapsed="0.000348"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:28.159343" elapsed="0.007284"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:28.170871" level="INFO">${req} = &lt;Element 'flow' at 0x7f5accbabc40&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:28.170522" elapsed="0.000376"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:28.171045" elapsed="0.000289"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:28.171487" elapsed="0.000250"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:28.171887" elapsed="0.000275"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:28.172312" elapsed="0.000506"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:28.173262" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5accba8a40&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:28.172973" elapsed="0.000316"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:28.173436" elapsed="0.000244"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:28.174216" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    &lt;priority&gt;16&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:28.173826" elapsed="0.000455"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:28.174822" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    &lt;priority&gt;16&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:28.174426" elapsed="0.000427"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:28.649529" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1237', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    &lt;priority&gt;16&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:28.649820" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:28.650109" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:28.174982" elapsed="0.475191"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:28.655474" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:28.650621" elapsed="0.004954"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc092020&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc092020&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:28.170164" elapsed="0.485551"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:28.166778" elapsed="0.489057"/>
</kw>
<var name="${flowfile}">f16.xml</var>
<status status="PASS" start="2026-05-25T01:53:28.154511" elapsed="0.501405"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:28.657121" level="INFO">f17.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:28.656518" elapsed="0.000707"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:28.663013" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f17.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f17.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:28.663193" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:28.662867" elapsed="0.000357"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:28.663829" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc091b70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:28.663380" elapsed="0.000479"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:28.664319" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:28.664016" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:28.664786" level="INFO">${flow_id} = 140</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:28.664511" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:28.665274" level="INFO">${flow_priority} = 17</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:28.664982" elapsed="0.000318"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:28.666179" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:28.665456" elapsed="0.000754"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:28.666721" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:28.666388" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:28.667244" level="INFO">${flow_id} = 140</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:28.666919" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:28.667747" level="INFO">${flow_priority} = 17</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:28.667437" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:28.668255" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:28.667940" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:28.668781" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:28.668451" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:28.669301" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc091b70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:28.668977" elapsed="0.000366"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:28.662501" elapsed="0.006901"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:28.673891" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc090ae0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:28.673541" elapsed="0.000378"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:28.674082" elapsed="0.000268"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:28.674505" elapsed="0.000237"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:28.674930" elapsed="0.000265"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:28.675350" elapsed="0.000337"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:28.676124" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfe68fe0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:28.675841" elapsed="0.000311"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:28.676301" elapsed="0.000269"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:28.677104" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    &lt;priority&gt;17&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;protocol-match-fields&gt;
            &lt;mpls-label&gt;567&lt;/mpls-label&gt;
            &lt;mpls-tc&gt;3&lt;/mpls-tc&gt;
            &lt;mpls-bos&gt;1&lt;/mpls-bos&gt;
        &lt;/protocol-match-fields&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:28.676721" elapsed="0.000447"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:28.677708" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    &lt;priority&gt;17&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:28.677315" elapsed="0.000424"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:29.151461" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1197', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    &lt;priority&gt;17&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;protocol-match-fields&gt;
            &lt;mpls-label&gt;567&lt;/mpls-label&gt;
            &lt;mpls-tc&gt;3&lt;/mpls-tc&gt;
            &lt;mpls-bos&gt;1&lt;/mpls-bos&gt;
        &lt;/protocol-match-fields&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:29.151711" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:29.152052" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:28.677869" elapsed="0.474275"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:29.158721" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:29.152732" elapsed="0.006160"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc091b70&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc091b70&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:28.673179" elapsed="0.485971"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:28.669553" elapsed="0.489744"/>
</kw>
<var name="${flowfile}">f17.xml</var>
<status status="PASS" start="2026-05-25T01:53:28.656200" elapsed="0.503192"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:29.161149" level="INFO">f18.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:29.160232" elapsed="0.001029"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:29.167919" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f18.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f18.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:29.168186" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:29.167763" elapsed="0.000543"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:29.168977" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc090ea0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:29.168480" elapsed="0.000527"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:29.169500" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:29.169185" elapsed="0.000341"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:29.169968" level="INFO">${flow_id} = 141</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:29.169682" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:29.170454" level="INFO">${flow_priority} = 18</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:29.170166" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:29.171352" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:29.170639" elapsed="0.000750"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:29.171917" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:29.171565" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:29.172449" level="INFO">${flow_id} = 141</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:29.172134" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:29.172959" level="INFO">${flow_priority} = 18</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:29.172644" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:29.173528" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:29.173172" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:29.174040" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:29.173730" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:29.174589" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc090ea0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:29.174261" elapsed="0.000370"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:29.167344" elapsed="0.007342"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:29.181682" level="INFO">${req} = &lt;Element 'flow' at 0x7f5accbab740&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:29.181276" elapsed="0.000436"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:29.181867" elapsed="0.000404"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:29.182441" elapsed="0.000250"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:29.182845" elapsed="0.000292"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:29.183295" elapsed="0.000359"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:29.184177" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5accbab1a0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:29.183846" elapsed="0.000360"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:29.184372" elapsed="0.000262"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:29.185206" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;18&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;18&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:29.184788" elapsed="0.000483"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:29.185892" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;18&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;p...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:29.185498" elapsed="0.000425"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:29.652115" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '951', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;18&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;18&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:29.652343" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:29.652707" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:29.186089" elapsed="0.466681"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:29.658337" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:29.653343" elapsed="0.005074"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc090ea0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc090ea0&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:29.180839" elapsed="0.477656"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:29.174842" elapsed="0.483716"/>
</kw>
<var name="${flowfile}">f18.xml</var>
<status status="PASS" start="2026-05-25T01:53:29.159716" elapsed="0.498881"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:29.659169" level="INFO">f19.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:29.658895" elapsed="0.000320"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:29.663085" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f19.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f19.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:29.663261" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:29.662925" elapsed="0.000365"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:29.663877" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc358db0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:29.663443" elapsed="0.000469"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:29.664370" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:29.664082" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:29.664814" level="INFO">${flow_id} = 142</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:29.664546" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:29.665275" level="INFO">${flow_priority} = 19</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:29.664988" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:29.666105" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:29.665450" elapsed="0.000690"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:29.666642" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:29.666309" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:29.667163" level="INFO">${flow_id} = 142</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:29.666841" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:29.667668" level="INFO">${flow_priority} = 19</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:29.667359" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:29.668174" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:29.667860" elapsed="0.000442"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:29.668768" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:29.668457" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:29.669292" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc358db0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:29.668966" elapsed="0.000367"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:29.662549" elapsed="0.006839"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:29.673930" level="INFO">${req} = &lt;Element 'flow' at 0x7f5ace4e6a20&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:29.673592" elapsed="0.000366"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:29.674188" elapsed="0.000289"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:29.674634" elapsed="0.000250"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:29.675035" elapsed="0.000263"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:29.675449" elapsed="0.000341"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:29.676227" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc3585e0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:29.675943" elapsed="0.000311"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:29.676406" elapsed="0.000244"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:29.677170" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;19&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;19&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:29.676797" elapsed="0.000434"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:29.677754" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;19&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;p...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:29.677379" elapsed="0.000405"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:30.153329" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '920', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;19&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;19&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:30.153504" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:30.153788" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:29.677914" elapsed="0.475936"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:30.159033" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:30.154332" elapsed="0.004834"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc358db0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc358db0&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:29.673219" elapsed="0.486185"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:29.669539" elapsed="0.489944"/>
</kw>
<var name="${flowfile}">f19.xml</var>
<status status="PASS" start="2026-05-25T01:53:29.658734" elapsed="0.500801"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:30.160254" level="INFO">f20.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:30.159879" elapsed="0.000437"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:30.165430" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f20.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f20.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:30.165642" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:30.165231" elapsed="0.000452"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:30.166488" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35bec0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:30.165892" elapsed="0.000637"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:30.167207" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:30.166742" elapsed="0.000502"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:30.167704" level="INFO">${flow_id} = 143</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:30.167435" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:30.168168" level="INFO">${flow_priority} = 20</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:30.167881" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:30.168951" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:30.168342" elapsed="0.000640"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:30.169493" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:30.169162" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:30.170047" level="INFO">${flow_id} = 143</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:30.169690" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:30.170599" level="INFO">${flow_priority} = 20</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:30.170276" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:30.171146" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:30.170794" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:30.171658" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:30.171345" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:30.172175" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35bec0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:30.171854" elapsed="0.000363"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:30.164690" elapsed="0.007582"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:30.176720" level="INFO">${req} = &lt;Element 'flow' at 0x7f5accba9b70&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:30.176389" elapsed="0.000358"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:30.176893" elapsed="0.000283"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:30.177329" elapsed="0.000244"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:30.177724" elapsed="0.000245"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:30.178134" elapsed="0.000342"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:30.178923" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5accba9670&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:30.178631" elapsed="0.000389"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:30.179189" elapsed="0.000249"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:30.179939" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;20&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;20&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xf0ff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:30.179587" elapsed="0.000411"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:30.180532" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;20&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;p...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:30.180160" elapsed="0.000402"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:30.654258" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '916', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;20&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;20&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xf0ff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:30.654451" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:30.654758" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:30.180691" elapsed="0.474133"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:30.660370" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:30.655336" elapsed="0.005142"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc35bec0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc35bec0&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:30.176007" elapsed="0.484610"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:30.172422" elapsed="0.488319"/>
</kw>
<var name="${flowfile}">f20.xml</var>
<status status="PASS" start="2026-05-25T01:53:30.159696" elapsed="0.501127"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:30.661952" level="INFO">f21.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:30.661387" elapsed="0.000666"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:30.666875" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:30.667042" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:30.666732" elapsed="0.000353"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:30.667698" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc359a80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:30.667240" elapsed="0.000487"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:30.668183" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:30.667882" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:30.668636" level="INFO">${flow_id} = 144</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:30.668365" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:30.669164" level="INFO">${flow_priority} = 21</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:30.668816" elapsed="0.000375"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:30.670066" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:30.669343" elapsed="0.000769"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:30.670605" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:30.670277" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:30.671126" level="INFO">${flow_id} = 144</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:30.670803" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:30.671661" level="INFO">${flow_priority} = 21</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:30.671323" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:30.672172" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:30.671857" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:30.672676" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:30.672372" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:30.673193" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc359a80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:30.672873" elapsed="0.000362"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:30.666373" elapsed="0.006916"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:30.678113" level="INFO">${req} = &lt;Element 'flow' at 0x7f5accba9670&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:30.677657" elapsed="0.000495"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:30.678306" elapsed="0.000273"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:30.678732" elapsed="0.000239"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:30.679135" elapsed="0.000245"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:30.679529" elapsed="0.000372"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:30.680340" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5accbaaa70&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:30.680055" elapsed="0.000312"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:30.680513" elapsed="0.000243"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:30.681301" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:30.680902" elapsed="0.000463"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:30.681957" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;p...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:30.681540" elapsed="0.000448"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:31.155124" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1286', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:31.155442" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:31.155738" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:30.682136" elapsed="0.473663"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:31.160928" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:31.156279" elapsed="0.004749"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc359a80&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc359a80&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:30.677240" elapsed="0.483963"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:30.673440" elapsed="0.487885"/>
</kw>
<var name="${flowfile}">f21.xml</var>
<status status="PASS" start="2026-05-25T01:53:30.661060" elapsed="0.500350"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:31.162553" level="INFO">f22.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:31.161954" elapsed="0.000700"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:31.167667" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f22.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f22.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:31.167828" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:31.167523" elapsed="0.000335"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:31.168497" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc359850&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:31.168011" elapsed="0.000517"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:31.168967" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:31.168683" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:31.169436" level="INFO">${flow_id} = 145</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:31.169163" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:31.169896" level="INFO">${flow_priority} = 22</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:31.169624" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:31.170823" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:31.170088" elapsed="0.000766"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:31.171359" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:31.171015" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:31.171863" level="INFO">${flow_id} = 145</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:31.171557" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:31.172421" level="INFO">${flow_priority} = 22</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:31.172054" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:31.172923" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:31.172620" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:31.173443" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:31.173135" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:31.174164" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc359850&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:31.173641" elapsed="0.000567"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:31.167165" elapsed="0.007099"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:31.178511" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc35b3d0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:31.178160" elapsed="0.000378"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:31.178684" elapsed="0.000264"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:31.179120" elapsed="0.000239"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:31.179553" elapsed="0.000245"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:31.179950" elapsed="0.000411"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:31.180800" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc35a6b0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:31.180530" elapsed="0.000298"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:31.180976" elapsed="0.000263"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:31.181774" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;22&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;22&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:31.181390" elapsed="0.000449"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:31.182468" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;22&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;p...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:31.181984" elapsed="0.000516"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:31.655520" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1284', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;22&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;22&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:31.655722" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:31.656038" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:31.182632" elapsed="0.473510"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:31.661489" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:31.656685" elapsed="0.004878"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc359850&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc359850&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:31.177784" elapsed="0.483873"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:31.174421" elapsed="0.487316"/>
</kw>
<var name="${flowfile}">f22.xml</var>
<status status="PASS" start="2026-05-25T01:53:31.161656" elapsed="0.500131"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:31.662539" level="INFO">f23.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:31.662163" elapsed="0.000440"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:31.667622" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f23.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f23.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:31.667958" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:31.667421" elapsed="0.000580"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:31.668966" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc358630&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:31.668277" elapsed="0.000733"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:31.669722" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:31.669303" elapsed="0.000448"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:31.670217" level="INFO">${flow_id} = 146</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:31.669912" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:31.670760" level="INFO">${flow_priority} = 23</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:31.670413" elapsed="0.000376"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:31.671777" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:31.670946" elapsed="0.000868"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:31.672574" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:31.671982" elapsed="0.000637"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:31.673138" level="INFO">${flow_id} = 146</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:31.672779" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:31.673687" level="INFO">${flow_priority} = 23</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:31.673339" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:31.674243" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:31.673887" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:31.674768" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:31.674446" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:31.675386" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc358630&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:31.675025" elapsed="0.000408"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:31.666872" elapsed="0.008619"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:31.679906" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc358e00&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:31.679539" elapsed="0.000395"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:31.680100" elapsed="0.000301"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:31.680563" elapsed="0.000295"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:31.681015" elapsed="0.000337"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:31.681511" elapsed="0.000347"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:31.682333" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc35aed0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:31.682016" elapsed="0.000345"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:31.682514" elapsed="0.000251"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:31.683359" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;23&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;23&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:31.682916" elapsed="0.000560"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:31.684096" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;23&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;p...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:31.683647" elapsed="0.000482"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:32.157913" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1369', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;23&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;23&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:32.158192" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:32.158492" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:31.684268" elapsed="0.474284"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:32.163215" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:32.158999" elapsed="0.004282"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc358630&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc358630&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:31.679152" elapsed="0.484224"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:31.675646" elapsed="0.487812"/>
</kw>
<var name="${flowfile}">f23.xml</var>
<status status="PASS" start="2026-05-25T01:53:31.661955" elapsed="0.501558"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:32.164263" level="INFO">f24.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:32.163871" elapsed="0.000458"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:32.169524" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f24.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f24.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:32.169743" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:32.169316" elapsed="0.000518"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:32.170625" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3edb20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:32.170105" elapsed="0.000550"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:32.171112" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:32.170811" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:32.171570" level="INFO">${flow_id} = 147</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:32.171295" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:32.172024" level="INFO">${flow_priority} = 24</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:32.171750" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:32.172786" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:32.172218" elapsed="0.000599"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:32.173327" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:32.172978" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:32.173868" level="INFO">${flow_id} = 147</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:32.173527" elapsed="0.000432"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:32.174650" level="INFO">${flow_priority} = 24</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:32.174134" elapsed="0.000560"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:32.175178" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:32.174853" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:32.175695" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:32.175382" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:32.176226" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3edb20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:32.175896" elapsed="0.000373"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:32.168774" elapsed="0.007551"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:32.180571" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc358220&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:32.180238" elapsed="0.000361"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:32.180747" elapsed="0.000264"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:32.181180" elapsed="0.000242"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:32.181570" elapsed="0.000269"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:32.181993" elapsed="0.000418"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:32.182839" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc35bf60&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:32.182567" elapsed="0.000300"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:32.183014" elapsed="0.000264"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:32.183776" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;24&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;24&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                        &lt;output-action&gt;
                        &lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:32.183432" elapsed="0.000403"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:32.184367" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;24&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;p...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:32.183981" elapsed="0.000417"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:32.657505" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '867', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;24&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;24&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                        &lt;output-action&gt;
                        &lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:32.657672" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:32.657944" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:32.184528" elapsed="0.473600"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:32.663252" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:32.658642" elapsed="0.004709"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc3edb20&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc3edb20&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:32.179863" elapsed="0.483597"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:32.176479" elapsed="0.487063"/>
</kw>
<var name="${flowfile}">f24.xml</var>
<status status="PASS" start="2026-05-25T01:53:32.163679" elapsed="0.499935"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:32.664471" level="INFO">f25.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:32.663980" elapsed="0.000557"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:32.669705" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f25.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f25.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:32.669921" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:32.669497" elapsed="0.000467"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:32.670915" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3efec0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:32.670212" elapsed="0.000745"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:32.671560" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:32.671210" elapsed="0.000376"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:32.672011" level="INFO">${flow_id} = 148</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:32.671740" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:32.672479" level="INFO">${flow_priority} = 25</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:32.672204" elapsed="0.000301"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:32.673449" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:32.672655" elapsed="0.000825"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:32.674181" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:32.673643" elapsed="0.000583"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:32.674710" level="INFO">${flow_id} = 148</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:32.674384" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:32.675235" level="INFO">${flow_priority} = 25</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:32.674904" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:32.675745" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:32.675434" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:32.676268" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:32.675943" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:32.676797" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3efec0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:32.676466" elapsed="0.000374"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:32.668962" elapsed="0.007934"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:32.681181" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc3582c0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:32.680805" elapsed="0.000405"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:32.681357" elapsed="0.000267"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:32.681776" elapsed="0.000239"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:32.682181" elapsed="0.000246"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:32.682629" elapsed="0.000341"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:32.683409" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc358fe0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:32.683139" elapsed="0.000297"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:32.683589" elapsed="0.000246"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:32.684398" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;25&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;25&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:32.683987" elapsed="0.000477"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:32.685026" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;25&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;p...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:32.684610" elapsed="0.000447"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:33.158239" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1394', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;25&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;25&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:33.158420" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:33.158692" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:32.685205" elapsed="0.473547"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:33.163728" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:33.159277" elapsed="0.004512"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc3efec0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc3efec0&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:32.680447" elapsed="0.483432"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:32.677048" elapsed="0.486910"/>
</kw>
<var name="${flowfile}">f25.xml</var>
<status status="PASS" start="2026-05-25T01:53:32.663783" elapsed="0.500227"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:33.164733" level="INFO">f31.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:33.164376" elapsed="0.000420"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:33.169119" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f31.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f31.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:33.169391" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:33.168959" elapsed="0.000463"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:33.170008" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7cea0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:33.169577" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:33.170500" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:33.170214" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:33.170949" level="INFO">${flow_id} = 154</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:33.170679" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:33.171430" level="INFO">${flow_priority} = 31</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:33.171142" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:33.172288" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:33.171609" elapsed="0.000710"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:33.173006" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:33.172485" elapsed="0.000564"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:33.173533" level="INFO">${flow_id} = 154</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:33.173221" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:33.174038" level="INFO">${flow_priority} = 31</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:33.173727" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:33.174554" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:33.174249" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:33.175054" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:33.174749" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:33.175630" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7cea0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:33.175317" elapsed="0.000355"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:33.168605" elapsed="0.007121"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:33.179930" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc359940&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:33.179597" elapsed="0.000360"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:33.180119" elapsed="0.000267"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:33.180543" elapsed="0.000240"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:33.180931" elapsed="0.000260"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:33.181340" elapsed="0.000331"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:33.182105" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc35b3d0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:33.181825" elapsed="0.000308"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:33.182339" elapsed="0.000250"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:33.183118" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;31&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf31&lt;/flow-name&gt;
    &lt;priority&gt;31&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:33.182739" elapsed="0.000501"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:33.183778" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:33.183391" elapsed="0.000418"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:33.660118" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '976', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;31&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf31&lt;/flow-name&gt;
    &lt;priority&gt;31&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:33.660289" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:33.660556" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:33.183940" elapsed="0.476675"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:33.665268" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:33.661035" elapsed="0.004295"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5abff7cea0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5abff7cea0&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:33.179242" elapsed="0.486175"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:33.175875" elapsed="0.489619"/>
</kw>
<var name="${flowfile}">f31.xml</var>
<status status="PASS" start="2026-05-25T01:53:33.164190" elapsed="0.501354"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:33.666260" level="INFO">f36.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:33.665884" elapsed="0.000438"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:33.670641" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f36.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f36.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:33.670800" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:33.670501" elapsed="0.000336"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:33.671430" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7ce00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:33.670989" elapsed="0.000471"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:33.671916" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:33.671614" elapsed="0.000334"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:33.672403" level="INFO">${flow_id} = 159</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:33.672120" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:33.672855" level="INFO">${flow_priority} = 36</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:33.672586" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:33.673670" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:33.673031" elapsed="0.000670"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:33.674204" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:33.673862" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:33.674711" level="INFO">${flow_id} = 159</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:33.674404" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:33.675438" level="INFO">${flow_priority} = 36</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:33.674904" elapsed="0.000578"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:33.676101" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:33.675731" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:33.676618" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:33.676308" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:33.677138" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7ce00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:33.676815" elapsed="0.000366"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:33.670145" elapsed="0.007091"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:33.681467" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc3eede0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:33.681125" elapsed="0.000370"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:33.681642" elapsed="0.000263"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:33.682057" elapsed="0.000253"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:33.682457" elapsed="0.000242"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:33.682848" elapsed="0.000357"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:33.683626" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc35a070&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:33.683358" elapsed="0.000295"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:33.683800" elapsed="0.000290"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:33.684598" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;ip-match&gt;
                            &lt;ip-dscp&gt;1&lt;/ip-dscp&gt;
                        &lt;/ip-match&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;36&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf36&lt;/flow-name&gt;
    &lt;priority&gt;36&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:33.684241" elapsed="0.000418"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:33.685207" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:33.684804" elapsed="0.000433"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:34.168221" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1051', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;ip-match&gt;
                            &lt;ip-dscp&gt;1&lt;/ip-dscp&gt;
                        &lt;/ip-match&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;36&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf36&lt;/flow-name&gt;
    &lt;priority&gt;36&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:34.168406" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:34.168734" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:33.685367" elapsed="0.483429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:34.173927" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:34.169388" elapsed="0.004603"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5abff7ce00&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5abff7ce00&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:33.680756" elapsed="0.493348"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:33.677387" elapsed="0.496796"/>
</kw>
<var name="${flowfile}">f36.xml</var>
<status status="PASS" start="2026-05-25T01:53:33.665700" elapsed="0.508536"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:34.174941" level="INFO">f38.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:34.174584" elapsed="0.000420"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:34.179876" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f38.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f38.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:34.180316" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:34.179676" elapsed="0.000726"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:34.181881" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6a7a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:34.180846" elapsed="0.001108"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:34.183153" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:34.182432" elapsed="0.000784"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:34.184233" level="INFO">${flow_id} = 161</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:34.183559" elapsed="0.000734"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:34.185340" level="INFO">${flow_priority} = 38</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:34.184670" elapsed="0.000729"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:34.187258" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:34.185738" elapsed="0.001590"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:34.188473" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:34.187690" elapsed="0.000881"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:34.189585" level="INFO">${flow_id} = 161</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:34.188978" elapsed="0.000650"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:34.190135" level="INFO">${flow_priority} = 38</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:34.189784" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:34.190854" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:34.190337" elapsed="0.000565"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:34.191405" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:34.191063" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:34.191927" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6a7a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:34.191609" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:34.179183" elapsed="0.012843"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:34.196380" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc4bf6f0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:34.196000" elapsed="0.000410"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:34.196567" elapsed="0.000306"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:34.197030" elapsed="0.000278"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:34.197462" elapsed="0.000254"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:34.197868" elapsed="0.000420"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:34.198725" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc3ed8a0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:34.198448" elapsed="0.000304"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:34.198902" elapsed="0.000271"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:34.199721" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-queue-action&gt;
                        &lt;queue-id&gt;1&lt;/queue-id&gt;
                    &lt;/set-queue-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;38&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf38&lt;/flow-name&gt;
    &lt;priority&gt;38&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:34.199334" elapsed="0.000450"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:34.200364" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;acti...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:34.199935" elapsed="0.000461"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:34.670050" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1074', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-queue-action&gt;
                        &lt;queue-id&gt;1&lt;/queue-id&gt;
                    &lt;/set-queue-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;38&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf38&lt;/flow-name&gt;
    &lt;priority&gt;38&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:34.670321" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:34.670608" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:34.200531" elapsed="0.470137"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:34.675679" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:34.671141" elapsed="0.004635"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5abfe6a7a0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5abfe6a7a0&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:34.195636" elapsed="0.480273"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:34.192203" elapsed="0.483826"/>
</kw>
<var name="${flowfile}">f38.xml</var>
<status status="PASS" start="2026-05-25T01:53:34.174399" elapsed="0.501740"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:34.677251" level="INFO">f43.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:34.676667" elapsed="0.000731"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:34.681491" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f43.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f43.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:34.681717" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:34.681344" elapsed="0.000404"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:34.682377" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e4950&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:34.681903" elapsed="0.000504"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:34.682923" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:34.682627" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:34.683443" level="INFO">${flow_id} = 166</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:34.683134" elapsed="0.000335"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:34.683955" level="INFO">${flow_priority} = 43</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:34.683641" elapsed="0.000340"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:34.684854" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:34.684151" elapsed="0.000734"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:34.685421" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:34.685046" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:34.685932" level="INFO">${flow_id} = 166</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:34.685626" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:34.686652" level="INFO">${flow_priority} = 43</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:34.686141" elapsed="0.000552"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:34.687170" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:34.686849" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:34.687676" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:34.687369" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:34.688196" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e4950&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:34.687872" elapsed="0.000367"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:34.680943" elapsed="0.007352"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:34.692527" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc3edad0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:34.692179" elapsed="0.000375"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:34.692701" elapsed="0.000267"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:34.693136" elapsed="0.000266"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:34.693552" elapsed="0.000245"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:34.693947" elapsed="0.000352"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:34.694723" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc3ede90&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:34.694453" elapsed="0.000296"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:34.694895" elapsed="0.000259"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:34.695676" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;43&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf43&lt;/flow-name&gt;
    &lt;priority&gt;43&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:34.695303" elapsed="0.000436"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:34.696298" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:34.695884" elapsed="0.000476"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:35.171234" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1131', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;43&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf43&lt;/flow-name&gt;
    &lt;priority&gt;43&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:35.171416" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:35.171695" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:34.696494" elapsed="0.475261"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:35.176019" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:35.172222" elapsed="0.003882"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc4e4950&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc4e4950&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:34.691805" elapsed="0.484393"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:34.688447" elapsed="0.487832"/>
</kw>
<var name="${flowfile}">f43.xml</var>
<status status="PASS" start="2026-05-25T01:53:34.676379" elapsed="0.499956"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:35.177064" level="INFO">f45.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:35.176693" elapsed="0.000458"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:35.182177" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f45.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f45.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:35.182475" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:35.181929" elapsed="0.000607"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:35.183178" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e4ae0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:35.182725" elapsed="0.000483"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:35.183645" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:35.183363" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:35.184108" level="INFO">${flow_id} = 168</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:35.183823" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:35.184564" level="INFO">${flow_priority} = 45</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:35.184287" elapsed="0.000302"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:35.185396" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:35.184739" elapsed="0.000687"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:35.185918" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:35.185588" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:35.186455" level="INFO">${flow_id} = 168</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:35.186142" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:35.186981" level="INFO">${flow_priority} = 45</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:35.186669" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:35.188670" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:35.187192" elapsed="0.001577"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:35.189269" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:35.188930" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:35.189822" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e4ae0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:35.189470" elapsed="0.000395"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:35.181433" elapsed="0.008487"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:35.194220" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc4bf6f0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:35.193833" elapsed="0.000415"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:35.194395" elapsed="0.000268"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:35.194816" elapsed="0.000239"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:35.195221" elapsed="0.000246"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:35.195616" elapsed="0.000334"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:35.196387" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc4bde90&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:35.196117" elapsed="0.000297"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:35.196563" elapsed="0.000244"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:35.197336" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;1180719718&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xfff0ffff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
    &lt;cookie&gt;45&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf45&lt;/flow-name&gt;
    &lt;priority&gt;45&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:35.196956" elapsed="0.000440"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:35.197924" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;acti...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:35.197543" elapsed="0.000411"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:35.672424" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '922', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;1180719718&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xfff0ffff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
    &lt;cookie&gt;45&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf45&lt;/flow-name&gt;
    &lt;priority&gt;45&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:35.672597" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:35.672882" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:35.198123" elapsed="0.474811"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:35.677291" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:35.673382" elapsed="0.003989"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc4e4ae0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc4e4ae0&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:35.193473" elapsed="0.484015"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:35.190114" elapsed="0.487571"/>
</kw>
<var name="${flowfile}">f45.xml</var>
<status status="PASS" start="2026-05-25T01:53:35.176501" elapsed="0.501253"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:35.678674" level="INFO">f101.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:35.678213" elapsed="0.000547"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:35.683367" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f101.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f101.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:35.683555" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:35.683204" elapsed="0.000390"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:35.684362" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe689f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:35.683777" elapsed="0.000623"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:35.684953" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:35.684599" elapsed="0.000388"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:35.685542" level="INFO">${flow_id} = 224</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:35.685201" elapsed="0.000372"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:35.686129" level="INFO">${flow_priority} = 101</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:35.685767" elapsed="0.000395"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:35.687349" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:35.686358" elapsed="0.001031"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:35.688008" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:35.687600" elapsed="0.000462"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:35.688938" level="INFO">${flow_id} = 224</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:35.688280" elapsed="0.000712"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:35.689617" level="INFO">${flow_priority} = 101</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:35.689215" elapsed="0.000455"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:35.690276" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:35.689870" elapsed="0.000464"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:35.690979" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:35.690544" elapsed="0.000492"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:35.691648" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe689f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:35.691255" elapsed="0.000447"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:35.682784" elapsed="0.008988"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:35.697487" level="INFO">${req} = &lt;Element 'flow' at 0x7f5abfe68ae0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:35.697025" elapsed="0.000495"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:35.697705" elapsed="0.000332"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:35.698250" elapsed="0.000299"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:35.698775" elapsed="0.000326"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:35.699297" elapsed="0.000416"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:35.700264" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfe68630&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:35.699908" elapsed="0.000389"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:35.700487" elapsed="0.000324"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:35.701603" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;101&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;101&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:35.701063" elapsed="0.000625"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:35.702426" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;101&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:35.701878" elapsed="0.000582"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:36.173259" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1454', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;101&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;101&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:36.173451" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:36.173739" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:35.702596" elapsed="0.471205"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:36.177701" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:36.174290" elapsed="0.003474"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5abfe689f0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5abfe689f0&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:35.696576" elapsed="0.481281"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:35.691968" elapsed="0.485970"/>
</kw>
<var name="${flowfile}">f101.xml</var>
<status status="PASS" start="2026-05-25T01:53:35.677950" elapsed="0.500040"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:36.178712" level="INFO">f102.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:36.178357" elapsed="0.000419"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:36.183785" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f102.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f102.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:36.183956" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:36.183625" elapsed="0.000361"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:36.184615" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7c220&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:36.184157" elapsed="0.000488"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:36.185162" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:36.184857" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:36.185616" level="INFO">${flow_id} = 225</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:36.185344" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:36.186062" level="INFO">${flow_priority} = 102</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:36.185793" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:36.187246" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:36.186256" elapsed="0.001966"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:36.188730" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:36.188394" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:36.189257" level="INFO">${flow_id} = 225</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:36.188929" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:36.189766" level="INFO">${flow_priority} = 102</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:36.189454" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:36.190281" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:36.189960" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:36.190790" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:36.190479" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:36.191349" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7c220&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:36.190987" elapsed="0.000406"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:36.183040" elapsed="0.008408"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:36.195726" level="INFO">${req} = &lt;Element 'flow' at 0x7f5abfe6bf60&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:36.195363" elapsed="0.000391"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:36.195901" elapsed="0.000282"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:36.196337" elapsed="0.000245"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:36.196732" elapsed="0.000241"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:36.197139" elapsed="0.000335"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:36.197894" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfe69fd0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:36.197628" elapsed="0.000293"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:36.198084" elapsed="0.000244"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:36.198871" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;102&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;102&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:36.198475" elapsed="0.000512"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:36.199620" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;102&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:36.199154" elapsed="0.000498"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:36.673916" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1582', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;102&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;102&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:36.674151" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:36.674442" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:36.199785" elapsed="0.474718"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:36.679570" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:36.674961" elapsed="0.004710"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5abff7c220&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5abff7c220&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:36.194969" elapsed="0.484845"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:36.191600" elapsed="0.488358"/>
</kw>
<var name="${flowfile}">f102.xml</var>
<status status="PASS" start="2026-05-25T01:53:36.178170" elapsed="0.501872"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:36.681205" level="INFO">f103.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:36.680607" elapsed="0.000700"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:36.686639" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f103.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f103.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:36.686807" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:36.686495" elapsed="0.000342"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:36.687468" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ec1d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:36.686991" elapsed="0.000506"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:36.687948" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:36.687654" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:36.688421" level="INFO">${flow_id} = 226</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:36.688146" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:36.688870" level="INFO">${flow_priority} = 103</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:36.688602" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:36.690037" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:36.689047" elapsed="0.001035"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:36.690580" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:36.690249" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:36.691168" level="INFO">${flow_id} = 226</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:36.690838" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:36.691680" level="INFO">${flow_priority} = 103</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:36.691366" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:36.692228" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:36.691876" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:36.692742" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:36.692428" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:36.693266" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ec1d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:36.692942" elapsed="0.000366"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:36.686137" elapsed="0.007226"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:36.697624" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc4be250&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:36.697260" elapsed="0.000391"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:36.697799" elapsed="0.000278"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:36.698234" elapsed="0.000239"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:36.698629" elapsed="0.000242"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:36.699021" elapsed="0.000352"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:36.699793" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc4bfa10&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:36.699527" elapsed="0.000292"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:36.699989" elapsed="0.000268"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:36.700805" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;103&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;103&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;1&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:36.700406" elapsed="0.000468"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:36.701461" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;103&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:36.701021" elapsed="0.000471"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:37.174939" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1576', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;103&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;103&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;1&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:37.175223" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:37.175435" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:36.701624" elapsed="0.473851"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:37.178702" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:37.175795" elapsed="0.002971"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc3ec1d0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc3ec1d0&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:36.696887" elapsed="0.481970"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:36.693515" elapsed="0.485422"/>
</kw>
<var name="${flowfile}">f103.xml</var>
<status status="PASS" start="2026-05-25T01:53:36.680312" elapsed="0.498677"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:37.180766" level="INFO">f104.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:37.180135" elapsed="0.000713"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:37.185856" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f104.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f104.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:37.186058" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:37.185711" elapsed="0.000393"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:37.186737" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ec860&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:37.186265" elapsed="0.000501"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:37.187224" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:37.186922" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:37.187683" level="INFO">${flow_id} = 227</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:37.187405" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:37.188151" level="INFO">${flow_priority} = 104</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:37.187863" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:37.189300" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:37.188330" elapsed="0.001001"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:37.189829" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:37.189496" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:37.190358" level="INFO">${flow_id} = 227</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:37.190028" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:37.190873" level="INFO">${flow_priority} = 104</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:37.190559" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:37.191389" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:37.191083" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:37.191896" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:37.191588" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:37.192422" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ec860&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:37.192111" elapsed="0.000353"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:37.185225" elapsed="0.007295"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:37.196818" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc4bea70&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:37.196442" elapsed="0.000404"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:37.196995" elapsed="0.000285"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:37.197433" elapsed="0.000239"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:37.197892" elapsed="0.000266"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:37.198311" elapsed="0.000345"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:37.199094" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abff7f470&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:37.198811" elapsed="0.000311"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:37.199271" elapsed="0.000245"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:37.200060" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;104&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;104&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:37.199664" elapsed="0.000478"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:37.200733" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;104&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:37.200288" elapsed="0.000476"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:37.676596" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1454', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;104&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;104&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:37.676791" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:37.677108" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:37.200895" elapsed="0.476277"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:37.682327" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:37.677720" elapsed="0.004712"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc3ec860&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc3ec860&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:37.196052" elapsed="0.486520"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:37.192696" elapsed="0.489999"/>
</kw>
<var name="${flowfile}">f104.xml</var>
<status status="PASS" start="2026-05-25T01:53:37.179169" elapsed="0.503609"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:37.683967" level="INFO">f105.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:37.683397" elapsed="0.000712"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:37.688520" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f105.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f105.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:37.688683" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:37.688375" elapsed="0.000337"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:37.689353" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e7600&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:37.688864" elapsed="0.000518"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:37.689839" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:37.689553" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:37.690305" level="INFO">${flow_id} = 228</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:37.690017" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:37.690980" level="INFO">${flow_priority} = 105</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:37.690487" elapsed="0.000519"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:37.691936" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:37.691176" elapsed="0.000791"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:37.692477" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:37.692146" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:37.692988" level="INFO">${flow_id} = 228</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:37.692675" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:37.693542" level="INFO">${flow_priority} = 105</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:37.693223" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:37.694043" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:37.693735" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:37.694560" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:37.694256" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:37.695083" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e7600&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:37.694755" elapsed="0.000371"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:37.687993" elapsed="0.007189"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:37.699459" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc3ec2c0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:37.699086" elapsed="0.000400"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:37.699632" elapsed="0.000264"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:37.700048" elapsed="0.000261"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:37.700456" elapsed="0.000242"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:37.700847" elapsed="0.000351"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:37.701656" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc3eefc0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:37.701385" elapsed="0.000298"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:37.701829" elapsed="0.000258"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:37.702641" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;105&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;105&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:37.702236" elapsed="0.000507"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:37.703327" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;105&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:37.702891" elapsed="0.000467"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:38.178136" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1460', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;105&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;105&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:38.178336" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:38.178642" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:37.703488" elapsed="0.475224"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:38.184236" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:38.179200" elapsed="0.005140"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc4e7600&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc4e7600&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:37.698716" elapsed="0.485763"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:37.695334" elapsed="0.489264"/>
</kw>
<var name="${flowfile}">f105.xml</var>
<status status="PASS" start="2026-05-25T01:53:37.683062" elapsed="0.501616"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:38.185805" level="INFO">f106.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:38.185237" elapsed="0.000723"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:38.190136" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f106.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f106.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:38.190304" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:38.189977" elapsed="0.000356"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:38.190937" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc307a10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:38.190485" elapsed="0.000481"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:38.191422" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:38.191136" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:38.191874" level="INFO">${flow_id} = 229</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:38.191602" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:38.192342" level="INFO">${flow_priority} = 106</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:38.192053" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:38.193270" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:38.192520" elapsed="0.000782"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:38.193796" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:38.193466" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:38.194411" level="INFO">${flow_id} = 229</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:38.194097" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:38.194924" level="INFO">${flow_priority} = 106</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:38.194609" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:38.195439" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:38.195134" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:38.195948" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:38.195638" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:38.196474" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc307a10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:38.196161" elapsed="0.000355"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:38.189614" elapsed="0.006957"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:38.200828" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc093ce0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:38.200471" elapsed="0.000385"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:38.201004" elapsed="0.000288"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:38.201444" elapsed="0.000239"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:38.201832" elapsed="0.000286"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:38.202269" elapsed="0.000476"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:38.203191" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abff7c4a0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:38.202902" elapsed="0.000317"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:38.203370" elapsed="0.000245"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:38.204164" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;106&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;106&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:38.203763" elapsed="0.000468"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:38.204796" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;106&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:38.204378" elapsed="0.000448"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:38.679312" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1465', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;106&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;106&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:38.679599" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:38.679843" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:38.204955" elapsed="0.474947"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:38.684393" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:38.680351" elapsed="0.004105"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc307a10&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc307a10&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:38.200110" elapsed="0.484433"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:38.196723" elapsed="0.487897"/>
</kw>
<var name="${flowfile}">f106.xml</var>
<status status="PASS" start="2026-05-25T01:53:38.184913" elapsed="0.499758"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:38.685384" level="INFO">f107.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:38.685003" elapsed="0.000445"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:38.690309" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f107.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f107.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:38.690580" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:38.690115" elapsed="0.000509"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:38.691481" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc093600&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:38.690839" elapsed="0.000685"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:38.691967" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:38.691684" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:38.692437" level="INFO">${flow_id} = 230</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:38.692162" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:38.692890" level="INFO">${flow_priority} = 107</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:38.692620" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:38.693864" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:38.693079" elapsed="0.000815"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:38.694395" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:38.694054" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:38.694947" level="INFO">${flow_id} = 230</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:38.694629" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:38.695472" level="INFO">${flow_priority} = 107</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:38.695156" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:38.695975" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:38.695671" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:38.696498" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:38.696188" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:38.697006" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc093600&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:38.696698" elapsed="0.000350"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:38.689618" elapsed="0.007501"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:38.701576" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc090ae0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:38.701209" elapsed="0.000396"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:38.701753" elapsed="0.000265"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:38.702187" elapsed="0.000241"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:38.702659" elapsed="0.000258"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:38.703085" elapsed="0.000338"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:38.703850" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc305fd0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:38.703578" elapsed="0.000299"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:38.704027" elapsed="0.000265"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:38.704839" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;107&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;107&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:38.704443" elapsed="0.000465"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:38.705496" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;107&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:38.705055" elapsed="0.000472"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:39.180472" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1623', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;107&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;107&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:39.180688" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:39.180984" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:38.705658" elapsed="0.475388"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:39.185543" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:39.181598" elapsed="0.004008"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc093600&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc093600&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:38.700833" elapsed="0.484873"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:38.697271" elapsed="0.488520"/>
</kw>
<var name="${flowfile}">f107.xml</var>
<status status="PASS" start="2026-05-25T01:53:38.684820" elapsed="0.501131"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:39.186708" level="INFO">f108.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:39.186349" elapsed="0.000422"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:39.191762" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f108.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f108.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:39.191954" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:39.191559" elapsed="0.000424"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:39.192658" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4db380&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:39.192155" elapsed="0.000532"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:39.193154" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:39.192846" elapsed="0.000334"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:39.193611" level="INFO">${flow_id} = 231</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:39.193334" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:39.194081" level="INFO">${flow_priority} = 108</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:39.193793" elapsed="0.000316"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:39.195150" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:39.194264" elapsed="0.000919"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:39.195918" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:39.195352" elapsed="0.000609"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:39.196449" level="INFO">${flow_id} = 231</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:39.196134" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:39.196955" level="INFO">${flow_priority} = 108</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:39.196644" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:39.197464" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:39.197161" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:39.197970" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:39.197664" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:39.198507" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4db380&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:39.198182" elapsed="0.000367"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:39.190964" elapsed="0.007639"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:39.202864" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc0913f0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:39.202494" elapsed="0.000399"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:39.203040" elapsed="0.000321"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:39.203517" elapsed="0.000241"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:39.203906" elapsed="0.000261"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:39.204317" elapsed="0.000342"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:39.205095" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc358360&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:39.204814" elapsed="0.000309"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:39.205270" elapsed="0.000242"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:39.206089" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;108&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;108&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:39.205661" elapsed="0.000538"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:39.206773" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;108&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:39.206348" elapsed="0.000456"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:39.680833" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1630', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;108&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;108&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:39.681054" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:39.681423" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:39.206935" elapsed="0.474550"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:39.686781" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:39.682011" elapsed="0.004869"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc4db380&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc4db380&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:39.202131" elapsed="0.484896"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:39.198754" elapsed="0.488435"/>
</kw>
<var name="${flowfile}">f108.xml</var>
<status status="PASS" start="2026-05-25T01:53:39.186158" elapsed="0.501115"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:39.688481" level="INFO">f109.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:39.687876" elapsed="0.000714"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:39.693514" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f109.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f109.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:39.693743" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:39.693309" elapsed="0.000475"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:39.694707" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc0939c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:39.694001" elapsed="0.000746"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:39.695393" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:39.694967" elapsed="0.000463"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:39.696278" level="INFO">${flow_id} = 232</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:39.695643" elapsed="0.000673"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:39.696898" level="INFO">${flow_priority} = 109</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:39.696542" elapsed="0.000382"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:39.698191" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:39.697092" elapsed="0.001131"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:39.698741" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:39.698393" elapsed="0.000458"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:39.699342" level="INFO">${flow_id} = 232</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:39.699010" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:39.699870" level="INFO">${flow_priority} = 109</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:39.699539" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:39.700385" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:39.700064" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:39.700888" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:39.700582" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:39.701409" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc0939c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:39.701099" elapsed="0.000352"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:39.692774" elapsed="0.008731"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:39.705777" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc090bd0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:39.705408" elapsed="0.000396"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:39.705952" elapsed="0.000286"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:39.706391" elapsed="0.000238"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:39.706779" elapsed="0.000241"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:39.707185" elapsed="0.000337"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:39.707961" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc092160&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:39.707675" elapsed="0.000313"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:39.708150" elapsed="0.000246"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:39.708963" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;109&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;109&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:39.708544" elapsed="0.000488"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:39.709619" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;109&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:39.709193" elapsed="0.000456"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:40.181926" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1626', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;109&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;109&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:40.182351" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:40.182902" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:39.709780" elapsed="0.473226"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:40.187347" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:40.183711" elapsed="0.003703"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc0939c0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc0939c0&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:39.705036" elapsed="0.482475"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:39.701662" elapsed="0.485933"/>
</kw>
<var name="${flowfile}">f109.xml</var>
<status status="PASS" start="2026-05-25T01:53:39.687531" elapsed="0.500117"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:40.188456" level="INFO">f110.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:40.188012" elapsed="0.000517"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:40.192180" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f110.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f110.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:40.192382" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:40.192014" elapsed="0.000400"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:40.193033" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4dade0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:40.192571" elapsed="0.000492"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:40.193530" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:40.193239" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:40.193985" level="INFO">${flow_id} = 233</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:40.193710" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:40.194460" level="INFO">${flow_priority} = 110</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:40.194183" elapsed="0.000304"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:40.195600" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:40.194642" elapsed="0.000990"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:40.196154" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:40.195800" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:40.196717" level="INFO">${flow_id} = 233</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:40.196397" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:40.197247" level="INFO">${flow_priority} = 110</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:40.196914" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:40.197756" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:40.197444" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:40.198283" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:40.197953" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:40.198794" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4dade0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:40.198482" elapsed="0.000353"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:40.191639" elapsed="0.007252"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:40.203196" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc093330&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:40.202820" elapsed="0.000405"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:40.203374" elapsed="0.000271"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:40.203800" elapsed="0.000244"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:40.204268" elapsed="0.000286"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:40.204708" elapsed="0.000342"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:40.205514" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc0931f0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:40.205241" elapsed="0.000300"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:40.205692" elapsed="0.000248"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:40.206499" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;110&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;110&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;push-vlan-action&gt;
                        &lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;
                        &lt;vlan-id&gt;1234&lt;/vlan-id&gt;
                    &lt;/push-vlan-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:40.206106" elapsed="0.000458"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:40.207136" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;110&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:40.206713" elapsed="0.000455"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:40.683199" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1336', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;110&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;110&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;push-vlan-action&gt;
                        &lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;
                        &lt;vlan-id&gt;1234&lt;/vlan-id&gt;
                    &lt;/push-vlan-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:40.683417" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:40.683725" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:40.207301" elapsed="0.476486"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:40.688971" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:40.684291" elapsed="0.004822"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc4dade0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc4dade0&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:40.202459" elapsed="0.486803"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:40.199042" elapsed="0.490347"/>
</kw>
<var name="${flowfile}">f110.xml</var>
<status status="PASS" start="2026-05-25T01:53:40.187817" elapsed="0.501654"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:40.690655" level="INFO">f113.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:40.690015" elapsed="0.000744"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:40.695919" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f113.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f113.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:40.696170" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:40.695771" elapsed="0.000430"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:40.696828" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1f010&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:40.696358" elapsed="0.000517"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:40.697374" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:40.697045" elapsed="0.000357"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:40.697843" level="INFO">${flow_id} = 236</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:40.697561" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:40.698359" level="INFO">${flow_priority} = 113</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:40.698031" elapsed="0.000356"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:40.700736" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:40.698545" elapsed="0.002224"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:40.701333" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:40.700972" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:40.701866" level="INFO">${flow_id} = 236</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:40.701538" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:40.702424" level="INFO">${flow_priority} = 113</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:40.702088" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:40.702938" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:40.702627" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:40.703473" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:40.703157" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:40.703998" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1f010&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:40.703676" elapsed="0.000365"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:40.695405" elapsed="0.008710"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:40.708410" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc4da070&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:40.708024" elapsed="0.000414"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:40.708594" elapsed="0.000267"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:40.709080" elapsed="0.000252"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:40.709483" elapsed="0.000246"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:40.709881" elapsed="0.000364"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:40.710673" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc4db6a0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:40.710404" elapsed="0.000296"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:40.710848" elapsed="0.000262"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:40.711666" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;113&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;113&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;push-mpls-action&gt;
                        &lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;
                    &lt;/push-mpls-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:40.711262" elapsed="0.000511"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:40.712384" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;113&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:40.711925" elapsed="0.000498"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:41.184694" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1571', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;113&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;113&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;push-mpls-action&gt;
                        &lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;
                    &lt;/push-mpls-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:41.184891" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:41.185209" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:40.712579" elapsed="0.472694"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:41.190332" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:41.185756" elapsed="0.004676"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5abfc1f010&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5abfc1f010&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:40.707658" elapsed="0.482912"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:40.704269" elapsed="0.486402"/>
</kw>
<var name="${flowfile}">f113.xml</var>
<status status="PASS" start="2026-05-25T01:53:40.689716" elapsed="0.501017"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:41.191480" level="INFO">f201.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:41.191122" elapsed="0.000426"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:41.195961" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f201.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f201.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:41.196138" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:41.195818" elapsed="0.000350"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:41.196771" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4da0c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:41.196329" elapsed="0.000472"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:41.197258" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:41.196955" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:41.197740" level="INFO">${flow_id} = 324</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:41.197438" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:41.198207" level="INFO">${flow_priority} = 201</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:41.197918" elapsed="0.000316"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:41.199320" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:41.198387" elapsed="0.000964"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:41.199847" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:41.199511" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:41.200428" level="INFO">${flow_id} = 324</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:41.200111" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:41.200942" level="INFO">${flow_priority} = 201</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:41.200629" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:41.201476" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:41.201150" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:41.201991" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:41.201684" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:41.202514" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4da0c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:41.202206" elapsed="0.000350"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:41.195464" elapsed="0.007149"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:41.206848" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc4da2f0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:41.206492" elapsed="0.000383"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:41.207022" elapsed="0.000280"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:41.207454" elapsed="0.000241"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:41.207842" elapsed="0.000258"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:41.208250" elapsed="0.000332"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:41.208999" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc4daca0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:41.208735" elapsed="0.000290"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:41.209190" elapsed="0.000245"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:41.209995" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;201&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;201&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:41.209613" elapsed="0.000446"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:41.210634" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;201&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:41.210222" elapsed="0.000442"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:41.685748" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1356', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;201&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;201&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:41.686168" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:41.686489" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:41.210798" elapsed="0.475752"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:41.691524" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:41.686978" elapsed="0.004647"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc4da0c0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc4da0c0&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:41.206131" elapsed="0.485629"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:41.202762" elapsed="0.489118"/>
</kw>
<var name="${flowfile}">f201.xml</var>
<status status="PASS" start="2026-05-25T01:53:41.190914" elapsed="0.501070"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:41.693160" level="INFO">f202.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:41.692563" elapsed="0.000698"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:41.698642" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f202.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f202.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:41.698841" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:41.698440" elapsed="0.000443"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:41.699724" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc307830&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:41.699115" elapsed="0.000650"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:41.700405" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:41.699981" elapsed="0.000461"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:41.701027" level="INFO">${flow_id} = 325</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:41.700654" elapsed="0.000408"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:41.701679" level="INFO">${flow_priority} = 202</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:41.701299" elapsed="0.000416"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:41.703053" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:41.701924" elapsed="0.001175"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:41.703596" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:41.703268" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:41.704128" level="INFO">${flow_id} = 325</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:41.703802" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:41.704646" level="INFO">${flow_priority} = 202</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:41.704332" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:41.705159" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:41.704841" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:41.705673" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:41.705358" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:41.706232" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc307830&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:41.705871" elapsed="0.000407"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:41.697904" elapsed="0.008430"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:41.710607" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc4dade0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:41.710254" elapsed="0.000381"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:41.710782" elapsed="0.000265"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:41.711215" elapsed="0.000239"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:41.711641" elapsed="0.000247"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:41.712038" elapsed="0.000351"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:41.712807" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc4da570&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:41.712541" elapsed="0.000293"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:41.712980" elapsed="0.000261"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:41.713768" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;202&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;202&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:41.713388" elapsed="0.000445"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:41.714412" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;202&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:41.713977" elapsed="0.000466"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:42.187540" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1366', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;202&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;202&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:42.187756" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:42.188119" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:41.714573" elapsed="0.473612"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:42.192850" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:42.188721" elapsed="0.004192"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc307830&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc307830&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:41.709841" elapsed="0.483168"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:41.706487" elapsed="0.486625"/>
</kw>
<var name="${flowfile}">f202.xml</var>
<status status="PASS" start="2026-05-25T01:53:41.692269" elapsed="0.500898"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:42.193898" level="INFO">f203.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:42.193544" elapsed="0.000417"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:42.198917" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f203.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f203.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:42.199246" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:42.198706" elapsed="0.000581"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:42.200177" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc090db0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:42.199504" elapsed="0.000723"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:42.200724" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:42.200430" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:42.201190" level="INFO">${flow_id} = 326</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:42.200903" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:42.201638" level="INFO">${flow_priority} = 203</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:42.201369" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:42.202829" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:42.201819" elapsed="0.001041"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:42.203382" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:42.203027" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:42.203889" level="INFO">${flow_id} = 326</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:42.203581" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:42.204413" level="INFO">${flow_priority} = 203</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:42.204098" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:42.204906" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:42.204606" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:42.205432" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:42.205122" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:42.205936" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc090db0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:42.205630" elapsed="0.000348"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:42.198154" elapsed="0.007878"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:42.210344" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc4da160&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:42.209973" elapsed="0.000399"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:42.210519" elapsed="0.000301"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:42.210976" elapsed="0.000256"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:42.211381" elapsed="0.000253"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:42.211784" elapsed="0.000359"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:42.212567" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc4da930&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:42.212300" elapsed="0.000294"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:42.212742" elapsed="0.000244"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:42.213548" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;203&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;203&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:42.213150" elapsed="0.000503"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:42.214229" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;203&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:42.213804" elapsed="0.000457"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:42.688678" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1357', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;203&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;203&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:42.688875" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:42.689202" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:42.214392" elapsed="0.474875"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:42.694347" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:42.689727" elapsed="0.004721"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc090db0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc090db0&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:42.209613" elapsed="0.484975"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:42.206201" elapsed="0.488511"/>
</kw>
<var name="${flowfile}">f203.xml</var>
<status status="PASS" start="2026-05-25T01:53:42.193343" elapsed="0.501451"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:42.695947" level="INFO">f204.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:42.695374" elapsed="0.000675"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:42.701595" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f204.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f204.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:42.701760" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:42.701451" elapsed="0.000340"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:42.702411" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc090770&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:42.701944" elapsed="0.000496"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:42.702883" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:42.702593" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:42.703362" level="INFO">${flow_id} = 327</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:42.703060" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:42.703805" level="INFO">${flow_priority} = 204</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:42.703537" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:42.704931" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:42.703984" elapsed="0.000978"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:42.705473" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:42.705141" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:42.705992" level="INFO">${flow_id} = 327</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:42.705679" elapsed="0.000429"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:42.706583" level="INFO">${flow_priority} = 204</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:42.706266" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:42.707093" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:42.706776" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:42.707617" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:42.707304" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:42.708140" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc090770&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:42.707815" elapsed="0.000368"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:42.701096" elapsed="0.007142"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:42.712507" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc4d98f0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:42.712153" elapsed="0.000381"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:42.712681" elapsed="0.000264"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:42.713112" elapsed="0.000239"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:42.713500" elapsed="0.000242"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:42.713890" elapsed="0.000351"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:42.714657" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc4db0b0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:42.714392" elapsed="0.000292"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:42.714829" elapsed="0.000256"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:42.715661" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;204&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;204&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:42.715263" elapsed="0.000463"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:42.716298" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;204&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:42.715874" elapsed="0.000455"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:43.189041" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1367', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;204&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;204&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:43.189321" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:43.189564" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:42.716460" elapsed="0.473164"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:43.193822" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:43.189994" elapsed="0.003891"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc090770&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc090770&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:42.711781" elapsed="0.482185"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:42.708390" elapsed="0.485650"/>
</kw>
<var name="${flowfile}">f204.xml</var>
<status status="PASS" start="2026-05-25T01:53:42.695032" elapsed="0.499077"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:43.194789" level="INFO">f205.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:43.194435" elapsed="0.000418"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:43.199642" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f205.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f205.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:43.199905" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:43.199452" elapsed="0.000495"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:43.200798" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e4bd0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:43.200180" elapsed="0.000652"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:43.201284" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:43.200986" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:43.201739" level="INFO">${flow_id} = 328</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:43.201466" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:43.202362" level="INFO">${flow_priority} = 205</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:43.201918" elapsed="0.000470"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:43.203298" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:43.202542" elapsed="0.000787"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:43.203825" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:43.203487" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:43.204350" level="INFO">${flow_id} = 328</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:43.204023" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:43.204855" level="INFO">${flow_priority} = 205</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:43.204544" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:43.205368" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:43.205050" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:43.205873" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:43.205566" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:43.206398" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e4bd0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:43.206086" elapsed="0.000354"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:43.198963" elapsed="0.007531"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:43.210760" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc4dba10&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:43.210394" elapsed="0.000393"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:43.210935" elapsed="0.000282"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:43.211370" elapsed="0.000241"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:43.211836" elapsed="0.000266"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:43.212255" elapsed="0.000338"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:43.213019" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfc74cc0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:43.212747" elapsed="0.000300"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:43.213214" elapsed="0.000249"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:43.214007" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;205&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;
    &lt;priority&gt;205&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:43.213616" elapsed="0.000474"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:43.214665" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:43.214240" elapsed="0.000456"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:43.690765" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1563', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;205&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;
    &lt;priority&gt;205&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:43.690934" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:43.691237" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:43.214827" elapsed="0.476471"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:43.696624" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:43.691706" elapsed="0.005020"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc4e4bd0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc4e4bd0&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:43.210018" elapsed="0.486840"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:43.206651" elapsed="0.490324"/>
</kw>
<var name="${flowfile}">f205.xml</var>
<status status="PASS" start="2026-05-25T01:53:43.194252" elapsed="0.502800"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:43.698291" level="INFO">f206.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:43.697690" elapsed="0.000701"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:43.703114" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f206.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f206.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:43.703260" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:43.702960" elapsed="0.000329"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:43.703879" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ec6d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:43.703442" elapsed="0.000465"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:43.704375" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:43.704060" elapsed="0.000345"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:43.704827" level="INFO">${flow_id} = 329</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:43.704557" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:43.705289" level="INFO">${flow_priority} = 206</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:43.705003" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:43.706239" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:43.705464" elapsed="0.000805"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:43.706752" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:43.706430" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:43.707271" level="INFO">${flow_id} = 329</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:43.706947" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:43.707774" level="INFO">${flow_priority} = 206</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:43.707465" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:43.708283" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:43.707965" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:43.708822" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:43.708510" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:43.709342" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ec6d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:43.709018" elapsed="0.000365"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:43.702616" elapsed="0.006821"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:43.713684" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc0908b0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:43.713323" elapsed="0.000388"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:43.713857" elapsed="0.000282"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:43.714293" elapsed="0.000240"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:43.714689" elapsed="0.000243"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:43.715096" elapsed="0.000482"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:43.716003" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc091210&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:43.715732" elapsed="0.000298"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:43.716194" elapsed="0.000275"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:43.717011" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;206&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;
    &lt;priority&gt;206&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:43.716618" elapsed="0.000514"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:43.717708" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:43.717282" elapsed="0.000457"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:44.192655" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1571', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;206&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;
    &lt;priority&gt;206&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:44.192905" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:44.193237" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:43.717868" elapsed="0.475436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:44.198545" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:44.193789" elapsed="0.004865"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc3ec6d0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc3ec6d0&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:43.712951" elapsed="0.485855"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:43.709588" elapsed="0.489352"/>
</kw>
<var name="${flowfile}">f206.xml</var>
<status status="PASS" start="2026-05-25T01:53:43.697398" elapsed="0.501631"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:44.200382" level="INFO">f209.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:44.199711" elapsed="0.000783"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:44.204660" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f209.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f209.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:44.204844" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;co...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:44.204515" elapsed="0.000368"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:44.205520" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc358fe0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:44.205043" elapsed="0.000507"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:44.205998" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:44.205708" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:44.206479" level="INFO">${flow_id} = 332</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:44.206198" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:44.206947" level="INFO">${flow_priority} = 209</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:44.206668" elapsed="0.000306"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:44.207915" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/co...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:44.207143" elapsed="0.000803"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:44.208465" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:44.208128" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:44.209164" level="INFO">${flow_id} = 332</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:44.208771" elapsed="0.000438"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:44.209698" level="INFO">${flow_priority} = 209</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:44.209368" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:44.210228" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;co...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:44.209898" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:44.210752" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/co...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:44.210431" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:44.211296" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc358fe0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:44.210955" elapsed="0.000385"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:44.204153" elapsed="0.007245"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:44.215879" level="INFO">${req} = &lt;Element 'flow' at 0x7f5accbab060&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:44.215509" elapsed="0.000398"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:44.216059" elapsed="0.000295"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:44.216510" elapsed="0.000248"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:44.216938" elapsed="0.000275"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:44.217367" elapsed="0.000347"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:44.218165" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5accbaa390&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:44.217871" elapsed="0.000323"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:44.218346" elapsed="0.000253"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:44.219162" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;209&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;209&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tunnel&gt;
                            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;
                        &lt;/tunnel&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:44.218750" elapsed="0.000482"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:44.219807" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;209&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/tab...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:44.219382" elapsed="0.000456"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:44.694329" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1451', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;209&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;209&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tunnel&gt;
                            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;
                        &lt;/tunnel&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:44.694559" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:44.694752" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:44.219972" elapsed="0.474821"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:44.698255" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:44.695141" elapsed="0.003182"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5acc358fe0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5acc358fe0&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:44.215137" elapsed="0.483283"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:44.211553" elapsed="0.486950"/>
</kw>
<var name="${flowfile}">f209.xml</var>
<status status="PASS" start="2026-05-25T01:53:44.199341" elapsed="0.499217"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:44.699385" level="INFO">f214.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:44.698921" elapsed="0.000534"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:44.704594" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f214.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f214.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:44.704815" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:44.704386" elapsed="0.000472"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:44.705720" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7dd50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:44.705103" elapsed="0.000646"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:44.706200" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:44.705902" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:44.706646" level="INFO">${flow_id} = 337</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:44.706378" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:44.707105" level="INFO">${flow_priority} = 214</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:44.706821" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:44.707981" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:44.707284" elapsed="0.000729"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:44.708519" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:44.708190" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:44.709029" level="INFO">${flow_id} = 337</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:44.708719" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:44.709567" level="INFO">${flow_priority} = 214</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:44.709241" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:44.710291" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:44.709763" elapsed="0.000578"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:44.710814" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:44.710497" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:44.711359" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7dd50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:44.711014" elapsed="0.000388"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:44.703850" elapsed="0.007606"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:44.715690" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc35a7f0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:44.715342" elapsed="0.000375"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:44.715863" elapsed="0.000281"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:44.716296" elapsed="0.000237"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:44.716724" elapsed="0.000248"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:44.717138" elapsed="0.000347"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:44.717905" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc359990&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:44.717638" elapsed="0.000293"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:44.718094" elapsed="0.000246"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:44.718861" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;214&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;214&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
		    &lt;ip-match&gt;
        		&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
		    &lt;/ip-match&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
		&lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
	    &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:44.718488" elapsed="0.000436"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:44.719485" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;214&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:44.719084" elapsed="0.000431"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:45.195357" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1157', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;214&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;214&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
		    &lt;ip-match&gt;
        		&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
		    &lt;/ip-match&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
		&lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
	    &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:45.195537" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:45.195849" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:44.719644" elapsed="0.476268"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:45.201113" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:45.196423" elapsed="0.004794"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5abff7dd50&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5abff7dd50&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:44.714972" elapsed="0.486383"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:44.711608" elapsed="0.489867"/>
</kw>
<var name="${flowfile}">f214.xml</var>
<status status="PASS" start="2026-05-25T01:53:44.698726" elapsed="0.502828"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:45.202759" level="INFO">f218.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:45.202188" elapsed="0.000671"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:45.208839" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f218.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f218.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:45.209009" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:45.208698" elapsed="0.000400"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:45.209669" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe693f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:45.209259" elapsed="0.000439"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:45.210184" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:45.209853" elapsed="0.000358"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:45.210639" level="INFO">${flow_id} = 341</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:45.210366" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:45.211103" level="INFO">${flow_priority} = 218</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:45.210815" elapsed="0.000316"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:45.211873" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:45.211286" elapsed="0.000624"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:45.212421" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:45.212093" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:45.212928" level="INFO">${flow_id} = 341</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:45.212620" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:45.213467" level="INFO">${flow_priority} = 218</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:45.213138" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:45.214026" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:45.213671" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:45.214580" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:45.214258" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:45.215307" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe693f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:45.214786" elapsed="0.000566"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:45.208339" elapsed="0.007071"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:45.219691" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc359990&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:45.219355" elapsed="0.000364"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:45.219870" elapsed="0.000287"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:45.220313" elapsed="0.000242"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:45.220705" elapsed="0.000258"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:45.221130" elapsed="0.000342"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:45.221898" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc358bd0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:45.221628" elapsed="0.000324"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:45.222126" elapsed="0.000252"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:45.222881" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;go-to-table&gt;
                &lt;table_id&gt;3&lt;/table_id&gt;
            &lt;/go-to-table&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-mask&gt;0xfff0&lt;/tunnel-mask&gt;
            &lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
    &lt;cookie&gt;218&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;
    &lt;priority&gt;218&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:45.222527" elapsed="0.000413"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:45.223524" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;go-to-table&gt;
                &lt;table_...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:45.223104" elapsed="0.000451"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:45.696798" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '841', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;go-to-table&gt;
                &lt;table_id&gt;3&lt;/table_id&gt;
            &lt;/go-to-table&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-mask&gt;0xfff0&lt;/tunnel-mask&gt;
            &lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
    &lt;cookie&gt;218&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;
    &lt;priority&gt;218&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:45.696964" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:45.697274" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:45.223702" elapsed="0.473636"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:45.702345" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:45.697778" elapsed="0.004705"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5abfe693f0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5abfe693f0&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:45.218976" elapsed="0.483652"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:45.215567" elapsed="0.487180"/>
</kw>
<var name="${flowfile}">f218.xml</var>
<status status="PASS" start="2026-05-25T01:53:45.201825" elapsed="0.501001"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:45.703877" level="INFO">f219.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:45.703393" elapsed="0.000546"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:45.708835" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f219.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f219.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:45.709039" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;c...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:45.708643" elapsed="0.000467"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:45.709921" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe69080&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:45.709332" elapsed="0.000629"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:45.710646" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:45.710213" elapsed="0.000470"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:45.711302" level="INFO">${flow_id} = 342</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:45.710899" elapsed="0.000439"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:45.711918" level="INFO">${flow_priority} = 219</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:45.711555" elapsed="0.000389"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:45.712784" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:45.712112" elapsed="0.000702"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:45.713334" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:45.712975" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:45.713846" level="INFO">${flow_id} = 342</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:45.713533" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:45.714564" level="INFO">${flow_priority} = 219</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:45.714039" elapsed="0.000568"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:45.715063" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;c...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:45.714761" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:45.715632" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:45.715327" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:45.716150" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe69080&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:45.715830" elapsed="0.000363"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:45.708160" elapsed="0.008088"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:45.720485" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc359490&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:45.720143" elapsed="0.000378"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:45.720668" elapsed="0.000266"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:45.721103" elapsed="0.000240"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:45.721491" elapsed="0.000243"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:45.721881" elapsed="0.000350"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:45.722666" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc35b970&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:45.722384" elapsed="0.000310"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:45.722840" elapsed="0.000259"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:45.723623" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
		&lt;/clear-actions&gt;
	&lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;10&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;219&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;
    &lt;priority&gt;219&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:45.723248" elapsed="0.000437"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:45.724241" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;action&gt;
                    &lt;order&gt;0&lt;/o...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:45.723829" elapsed="0.000443"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:46.197860" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1142', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
		&lt;/clear-actions&gt;
	&lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;10&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;219&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;
    &lt;priority&gt;219&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:46.198048" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:46.198367" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:45.724401" elapsed="0.474029"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:46.203610" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:46.199010" elapsed="0.004715"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5abfe69080&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5abfe69080&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:45.719770" elapsed="0.484068"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:45.716398" elapsed="0.487517"/>
</kw>
<var name="${flowfile}">f219.xml</var>
<status status="PASS" start="2026-05-25T01:53:45.703066" elapsed="0.500900"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:46.204685" level="INFO">f220.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:46.204329" elapsed="0.000419"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:46.209584" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f220.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f220.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:46.209795" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:46.209380" elapsed="0.000457"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:46.210654" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1ea20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:46.210051" elapsed="0.000643"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:46.211387" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:46.210908" elapsed="0.000516"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:46.211955" level="INFO">${flow_id} = 343</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:46.211651" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:46.212421" level="INFO">${flow_priority} = 220</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:46.212149" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:46.213239" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:46.212599" elapsed="0.000671"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:46.213764" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:46.213434" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:46.214292" level="INFO">${flow_id} = 343</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:46.213963" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:46.214821" level="INFO">${flow_priority} = 220</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:46.214487" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:46.215377" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:46.215046" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:46.217413" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:46.215584" elapsed="0.001880"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:46.217963" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1ea20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:46.217626" elapsed="0.000381"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:46.208871" elapsed="0.009208"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:53:46.222405" level="INFO">${req} = &lt;Element 'flow' at 0x7f5abfe6b8d0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:46.222046" elapsed="0.000388"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:46.222581" elapsed="0.000270"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:46.223025" elapsed="0.000268"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:46.223447" elapsed="0.000249"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:46.223847" elapsed="0.000357"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:46.224687" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfe689f0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:46.224412" elapsed="0.000303"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:46.224863" elapsed="0.000265"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:46.225639" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;write-metadata&gt;
                &lt;metadata-mask&gt;12&lt;/metadata-mask&gt;
                &lt;metadata&gt;10&lt;/metadata&gt;
            &lt;/write-metadata&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;220&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;
    &lt;priority&gt;220&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:46.225278" elapsed="0.000422"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:46.226251" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;write-metadata&gt;
                &lt;met...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:46.225849" elapsed="0.000433"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:46.699032" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 path_url=/rests/operations/sal-flow:add-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '978', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;write-metadata&gt;
                &lt;metadata-mask&gt;12&lt;/metadata-mask&gt;
                &lt;metadata&gt;10&lt;/metadata&gt;
            &lt;/write-metadata&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;220&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;
    &lt;priority&gt;220&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:46.699292" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:46.699647" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:add-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:46.226413" elapsed="0.473316"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:46.704776" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:46.700220" elapsed="0.004657"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7f5abfc1ea20&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7f5abfc1ea20&gt; is an xml object of parser xml flow details, usually created by Create Flow Variables For Suite From XML File
keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:46.221676" elapsed="0.483343"/>
</kw>
<arg>Add Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:46.218239" elapsed="0.486937"/>
</kw>
<var name="${flowfile}">f220.xml</var>
<status status="PASS" start="2026-05-25T01:53:46.204144" elapsed="0.501118"/>
</iter>
<var>${flowfile}</var>
<value>@{flowlist0}</value>
<status status="PASS" start="2026-05-25T01:53:21.831034" elapsed="24.874304"/>
</for>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:53:46.706353" level="INFO">Length is 50.</msg>
<msg time="2026-05-25T01:53:46.706530" level="INFO">${flows} = 50</msg>
<var>${flows}</var>
<arg>${flowlist0}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:53:46.705689" elapsed="0.000897"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Flow Stats Are Available" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:46.725339" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:46.731237" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"flow-node-inventory:table":[{"id":2,"flow":[{"id":"#UF$TABLE*2-49","table_id":2,"priority":103,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"103","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":9,"nanosecond":327000000}},"flags":""},{"id":"#UF$TABLE*2-48","table_id":2,"priority":102,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"102","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":9,"nanosecond":829000000}},"flags":""},{"id":"#UF$TABLE*2-45","table_id":2,"priority":43,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"icmpv6-match":{"icmpv6-code":1,"icmpv6-type":135},"ip-match":{"ip-protocol":58}},"cookie":"43","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":11,"nanosecond":333000000}},"flags":""},{"id":"#UF$TABLE*2-44","table_id":2,"priority":38,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"38","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-queue-action":{"queue-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":11,"nanosecond":827000000}},"flags":""},{"id":"#UF$TABLE*2-47","table_id":2,"priority":101,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"101","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"TABLE"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":10,"nanosecond":326000000}},"flags":""},{"id":"#UF$TABLE*2-46","table_id":2,"priority":45,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata-mask":"4293984255","metadata":"1180719718"}},"cookie":"45","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":10,"nanosecond":831000000}},"flags":""},{"id":"#UF$TABLE*2-41","table_id":2,"priority":25,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-label":{"ipv6-flabel":33},"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":58,"ip-ecn":3,"ip-dscp":60},"icmpv6-match":{"icmpv6-code":3,"icmpv6-type":6}},"cookie":"25","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":13,"nanosecond":343000000}},"flags":""},{"id":"#UF$TABLE*2-40","table_id":2,"priority":24,"cookie_mask":"0","idle-timeout":0,"match":{"tunnel":{"tunnel-id":"2591"}},"cookie":"24","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"TABLE"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":13,"nanosecond":844000000}},"flags":""},{"id":"#UF$TABLE*2-43","table_id":2,"priority":36,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"36","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"ip-match":{"ip-dscp":1}}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":12,"nanosecond":334000000}},"flags":""},{"id":"#UF$TABLE*2-42","table_id":2,"priority":31,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"31","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":12,"nanosecond":845000000}},"flags":""},{"id":"#UF$TABLE*2-38","table_id":2,"priority":22,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"22","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":14,"nanosecond":846000000}},"flags":""},{"id":"#UF$TABLE*2-37","table_id":2,"priority":21,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":25364,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80::2acf:e9ff:fe21:6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"21","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":15,"nanosecond":344000000}},"flags":""},{"id":"#UF$TABLE*2-39","table_id":2,"priority":23,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-label":{"ipv6-flabel":33},"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"23","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":14,"nanosecond":344000000}},"flags":""},{"id":"#UF$TABLE*2-34","table_id":2,"priority":18,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-source":"fe80::2acf:e9ff:fe21:6431/128","ipv6-destination":"aabb:1234:2acf:e9ff::/64"},"cookie":"18","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":16,"nanosecond":842000000}},"flags":""},{"id":"#UF$TABLE*2-33","table_id":2,"priority":17,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":34887}},"protocol-match-fields":{"mpls-tc":3,"mpls-bos":1,"mpls-label":567}},"cookie":"17","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":17,"nanosecond":351000000}},"flags":""},{"id":"#UF$TABLE*2-36","table_id":2,"priority":20,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata-mask":"61695","metadata":"12345"}},"cookie":"20","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":15,"nanosecond":848000000}},"flags":""},{"id":"#UF$TABLE*2-35","table_id":2,"priority":19,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata":"12345"}},"cookie":"19","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":16,"nanosecond":352000000}},"flags":""},{"id":"#UF$TABLE*2-30","table_id":2,"priority":14,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:fc:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2054}},"arp-target-hardware-address":{"address":"fe:dc:ba:98:76:54"},"arp-source-transport-address":"192.168.4.1/32","arp-op":1,"arp-target-transport-address":"10.21.22.23/32","arp-source... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:46.731647" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=2</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:46.711931" elapsed="0.019760"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:46.735290" level="INFO">{"flow-node-inventory:table":[{"id":2,"flow":[{"id":"#UF$TABLE*2-49","table_id":2,"priority":103,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"103","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":9,"nanosecond":327000000}},"flags":""},{"id":"#UF$TABLE*2-48","table_id":2,"priority":102,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"102","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":9,"nanosecond":829000000}},"flags":""},{"id":"#UF$TABLE*2-45","table_id":2,"priority":43,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"icmpv6-match":{"icmpv6-code":1,"icmpv6-type":135},"ip-match":{"ip-protocol":58}},"cookie":"43","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":11,"nanosecond":333000000}},"flags":""},{"id":"#UF$TABLE*2-44","table_id":2,"priority":38,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"38","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-queue-action":{"queue-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":11,"nanosecond":827000000}},"flags":""},{"id":"#UF$TABLE*2-47","table_id":2,"priority":101,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"101","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"TABLE"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":10,"nanosecond":326000000}},"flags":""},{"id":"#UF$TABLE*2-46","table_id":2,"priority":45,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata-mask":"4293984255","metadata":"1180719718"}},"cookie":"45","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":10,"nanosecond":831000000}},"flags":""},{"id":"#UF$TABLE*2-41","table_id":2,"priority":25,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-label":{"ipv6-flabel":33},"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":58,"ip-ecn":3,"ip-dscp":60},"icmpv6-match":{"icmpv6-code":3,"icmpv6-type":6}},"cookie":"25","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":13,"nanosecond":343000000}},"flags":""},{"id":"#UF$TABLE*2-40","table_id":2,"priority":24,"cookie_mask":"0","idle-timeout":0,"match":{"tunnel":{"tunnel-id":"2591"}},"cookie":"24","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"TABLE"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":13,"nanosecond":844000000}},"flags":""},{"id":"#UF$TABLE*2-43","table_id":2,"priority":36,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"36","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"ip-match":{"ip-dscp":1}}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":12,"nanosecond":334000000}},"flags":""},{"id":"#UF$TABLE*2-42","table_id":2,"priority":31,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"31","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":12,"nanosecond":845000000}},"flags":""},{"id":"#UF$TABLE*2-38","table_id":2,"priority":22,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"22","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":14,"nanosecond":846000000}},"flags":""},{"id":"#UF$TABLE*2-37","table_id":2,"priority":21,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":25364,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80::2acf:e9ff:fe21:6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"21","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":15,"nanosecond":344000000}},"flags":""},{"id":"#UF$TABLE*2-39","table_id":2,"priority":23,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-label":{"ipv6-flabel":33},"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"23","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":14,"nanosecond":344000000}},"flags":""},{"id":"#UF$TABLE*2-34","table_id":2,"priority":18,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-source":"fe80::2acf:e9ff:fe21:6431/128","ipv6-destination":"aabb:1234:2acf:e9ff::/64"},"cookie":"18","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":16,"nanosecond":842000000}},"flags":""},{"id":"#UF$TABLE*2-33","table_id":2,"priority":17,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":34887}},"protocol-match-fields":{"mpls-tc":3,"mpls-bos":1,"mpls-label":567}},"cookie":"17","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":17,"nanosecond":351000000}},"flags":""},{"id":"#UF$TABLE*2-36","table_id":2,"priority":20,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata-mask":"61695","metadata":"12345"}},"cookie":"20","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":15,"nanosecond":848000000}},"flags":""},{"id":"#UF$TABLE*2-35","table_id":2,"priority":19,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata":"12345"}},"cookie":"19","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":16,"nanosecond":352000000}},"flags":""},{"id":"#UF$TABLE*2-30","table_id":2,"priority":14,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:fc:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2054}},"arp-target-hardware-address":{"address":"fe:dc:ba:98:76:54"},"arp-source-transport-address":"192.168.4.1/32","arp-op":1,"arp-target-transport-address":"10.21.22.23/32","arp-source-hardware-address":{"address":"12:34:56:78:98:ab"}},"cookie":"14","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":18,"nanosecond":855000000}},"flags":""},{"id":"#UF$TABLE*2-32","table_id":2,"priority":16,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true},"vlan-pcp":3}},"cookie":"16","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":17,"nanosecond":854000000}},"flags":""},{"id":"#UF$TABLE*2-31","table_id":2,"priority":15,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":34887}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true}}},"cookie":"15","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":18,"nanosecond":355000000}},"flags":""},{"id":"#UF$TABLE*2-61","table_id":2,"priority":204,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"204","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":312000000}},"flags":""},{"id":"#UF$TABLE*2-60","table_id":2,"priority":203,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"203","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":814000000}},"flags":""},{"id":"#UF$TABLE*2-27","table_id":2,"priority":9,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.1.0.0/16","ipv4-destination":"172.168.5.0/24","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"9","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":20,"nanosecond":355000000}},"flags":""},{"id":"#UF$TABLE*2-26","table_id":2,"priority":8,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:00","mask":"ff:ff:ff:ff:ff:00"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"8","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":20,"nanosecond":857000000}},"flags":""},{"id":"#UF$TABLE*2-29","table_id":2,"priority":11,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":1,"ip-ecn":3,"ip-dscp":27},"icmpv4-match":{"icmpv4-type":6,"icmpv4-code":3}},"cookie":"11","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":19,"nanosecond":356000000}},"flags":""},{"id":"#UF$TABLE*2-28","table_id":2,"priority":10,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":19,"nanosecond":856000000}},"flags":""},{"id":"#UF$TABLE*2-67","table_id":2,"priority":219,"cookie_mask":"0","idle-timeout":0,"match":{"vlan-match":{"vlan-id":{"vlan-id":10,"vlan-id-present":true},"vlan-pcp":3}},"cookie":"219","instructions":{"instruction":[{"order":0}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":304000000}},"flags":""},{"id":"#UF$TABLE*2-23","table_id":2,"priority":5,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","in-port":"0"},"cookie":"5","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":22,"nanosecond":360000000}},"flags":""},{"id":"#UF$TABLE*2-66","table_id":2,"priority":218,"cookie_mask":"0","idle-timeout":0,"match":{"tunnel":{"tunnel-mask":"65520","tunnel-id":"10656"}},"cookie":"218","instructions":{"instruction":[{"order":0,"go-to-table":{"table_id":3}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":804000000}},"flags":""},{"id":"#UF$TABLE*2-22","table_id":2,"priority":4,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":34887}}},"cookie":"4","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":22,"nanosecond":863000000}},"flags":""},{"id":"#UF$TABLE*2-25","table_id":2,"priority":7,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:aa"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","in-port":"0","ip-match":{"ip-protocol":56,"ip-ecn":1,"ip-dscp":15}},"cookie":"7","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":21,"nanosecond":358000000}},"flags":""},{"id":"#UF$TABLE*2-24","table_id":2,"priority":6,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"40.4.0.0/16"},"cookie":"6","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":21,"nanosecond":861000000}},"flags":""},{"id":"#UF$TABLE*2-63","table_id":2,"priority":206,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"206","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-destination-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":310000000}},"flags":""},{"id":"#UF$TABLE*2-62","table_id":2,"priority":205,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":811000000}},"flags":""},{"id":"#UF$TABLE*2-65","table_id":2,"priority":214,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","ip-match":{"ip-protocol":56,"ip-ecn":1,"ip-dscp":60}},"cookie":"214","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"ip-match":{"ip-ecn":2}}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":306000000}},"flags":""},{"id":"#UF$TABLE*2-21","table_id":2,"priority":3,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:00:01"}}},"cookie":"3","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":23,"nanosecond":362000000}},"flags":""},{"id":"#UF$TABLE*2-64","table_id":2,"priority":209,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"209","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tunnel":{"tunnel-id":"2591"}}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":807000000}},"flags":""},{"id":"#UF$TABLE*2-20","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-source":"10.0.0.1/32"},"cookie":"2","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":23,"nanosecond":863000000}},"flags":""},{"id":"#UF$TABLE*2-50","table_id":2,"priority":104,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"104","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":8,"nanosecond":826000000}},"flags":""},{"id":"#UF$TABLE*2-19","table_id":2,"priority":1,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.1.0/24"},"cookie":"1","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":24,"nanosecond":152000000}},"flags":""},{"id":"#UF$TABLE*2-59","table_id":2,"priority":202,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"202","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":314000000}},"flags":""},{"id":"#UF$TABLE*2-56","table_id":2,"priority":110,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"110","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-vlan-action":{"ethernet-type":33024}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":5,"nanosecond":822000000}},"flags":""},{"id":"#UF$TABLE*2-55","table_id":2,"priority":109,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"109","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"NORMAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":6,"nanosecond":318000000}},"flags":""},{"id":"#UF$TABLE*2-58","table_id":2,"priority":201,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"201","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":817000000}},"flags":""},{"id":"#UF$TABLE*2-57","table_id":2,"priority":113,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"113","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-mpls-action":{"ethernet-type":34888}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":5,"nanosecond":315000000}},"flags":""},{"id":"#UF$TABLE*2-52","table_id":2,"priority":106,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":80,"tcp-source-port":20345,"ipv6-source":"1234:5678:9abc:def0:fdcd:a987:6000:0/100","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":45}},"cookie":"106","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"FLOOD"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":7,"nanosecond":823000000}},"flags":""},{"id":"#UF$TABLE*2-51","table_id":2,"priority":105,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":80,"tcp-source-port":20345,"ipv6-source":"1234:5678:9abc:def0:fdcd:a000::/84","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":45}},"cookie":"105","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"NORMAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":8,"nanosecond":324000000}},"flags":""},{"id":"#UF$TABLE*2-54","table_id":2,"priority":108,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"108","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":6,"nanosecond":821000000}},"flags":""},{"id":"#UF$TABLE*2-53","table_id":2,"priority":107,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"107","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"ALL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":7,"nanosecond":323000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":49,"packets-matched":"0"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:46.731923" elapsed="0.003832"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-05-25T01:53:46.738694" level="INFO">Item found from container 49 times.</msg>
<msg time="2026-05-25T01:53:46.738993" level="FAIL">'{"flow-node-inventory:table":[{"id":2,"flow":[{"id":"#UF$TABLE*2-49","table_id":2,"priority":103,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"103","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":9,"nanosecond":327000000}},"flags":""},{"id":"#UF$TABLE*2-48","table_id":2,"priority":102,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"102","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":9,"nanosecond":829000000}},"flags":""},{"id":"#UF$TABLE*2-45","table_id":2,"priority":43,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"icmpv6-match":{"icmpv6-code":1,"icmpv6-type":135},"ip-match":{"ip-protocol":58}},"cookie":"43","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":11,"nanosecond":333000000}},"flags":""},{"id":"#UF$TABLE*2-44","table_id":2,"priority":38,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"38","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-queue-action":{"queue-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":11,"nanosecond":827000000}},"flags":""},{"id":"#UF$TABLE*2-47","table_id":2,"priority":101,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"101","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"TABLE"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":10,"nanosecond":326000000}},"flags":""},{"id":"#UF$TABLE*2-46","table_id":2,"priority":45,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata-mask":"4293984255","metadata":"1180719718"}},"cookie":"45","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":10,"nanosecond":831000000}},"flags":""},{"id":"#UF$TABLE*2-41","table_id":2,"priority":25,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-label":{"ipv6-flabel":33},"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":58,"ip-ecn":3,"ip-dscp":60},"icmpv6-match":{"icmpv6-code":3,"icmpv6-type":6}},"cookie":"25","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":13,"nanosecond":343000000}},"flags":""},{"id":"#UF$TABLE*2-40","table_id":2,"priority":24,"cookie_mask":"0","idle-timeout":0,"match":{"tunnel":{"tunnel-id":"2591"}},"cookie":"24","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"TABLE"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":13,"nanosecond":844000000}},"flags":""},{"id":"#UF$TABLE*2-43","table_id":2,"priority":36,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"36","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"ip-match":{"ip-dscp":1}}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":12,"nanosecond":334000000}},"flags":""},{"id":"#UF$TABLE*2-42","table_id":2,"priority":31,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"31","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":12,"nanosecond":845000000}},"flags":""},{"id":"#UF$TABLE*2-38","table_id":2,"priority":22,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"22","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":14,"nanosecond":846000000}},"flags":""},{"id":"#UF$TABLE*2-37","table_id":2,"priority":21,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":25364,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80::2acf:e9ff:fe21:6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"21","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":15,"nanosecond":344000000}},"flags":""},{"id":"#UF$TABLE*2-39","table_id":2,"priority":23,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-label":{"ipv6-flabel":33},"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"23","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":14,"nanosecond":344000000}},"flags":""},{"id":"#UF$TABLE*2-34","table_id":2,"priority":18,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-source":"fe80::2acf:e9ff:fe21:6431/128","ipv6-destination":"aabb:1234:2acf:e9ff::/64"},"cookie":"18","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":16,"nanosecond":842000000}},"flags":""},{"id":"#UF$TABLE*2-33","table_id":2,"priority":17,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":34887}},"protocol-match-fields":{"mpls-tc":3,"mpls-bos":1,"mpls-label":567}},"cookie":"17","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":17,"nanosecond":351000000}},"flags":""},{"id":"#UF$TABLE*2-36","table_id":2,"priority":20,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata-mask":"61695","metadata":"12345"}},"cookie":"20","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":15,"nanosecond":848000000}},"flags":""},{"id":"#UF$TABLE*2-35","table_id":2,"priority":19,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata":"12345"}},"cookie":"19","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":16,"nanosecond":352000000}},"flags":""},{"id":"#UF$TABLE*2-30","table_id":2,"priority":14,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:fc:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2054}},"arp-target-hardware-address":{"address":"fe:dc:ba:98:76:54"},"arp-source-transport-address":"192.168.4.1/32","arp-op":1,"arp-target-transport-address":"10.21.22.23/32","arp-source-hardware-address":{"address":"12:34:56:78:98:ab"}},"cookie":"14","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":18,"nanosecond":855000000}},"flags":""},{"id":"#UF$TABLE*2-32","table_id":2,"priority":16,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true},"vlan-pcp":3}},"cookie":"16","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":17,"nanosecond":854000000}},"flags":""},{"id":"#UF$TABLE*2-31","table_id":2,"priority":15,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":34887}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true}}},"cookie":"15","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":18,"nanosecond":355000000}},"flags":""},{"id":"#UF$TABLE*2-61","table_id":2,"priority":204,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"204","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":312000000}},"flags":""},{"id":"#UF$TABLE*2-60","table_id":2,"priority":203,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"203","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":814000000}},"flags":""},{"id":"#UF$TABLE*2-27","table_id":2,"priority":9,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.1.0.0/16","ipv4-destination":"172.168.5.0/24","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"9","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":20,"nanosecond":355000000}},"flags":""},{"id":"#UF$TABLE*2-26","table_id":2,"priority":8,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:00","mask":"ff:ff:ff:ff:ff:00"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"8","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":20,"nanosecond":857000000}},"flags":""},{"id":"#UF$TABLE*2-29","table_id":2,"priority":11,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":1,"ip-ecn":3,"ip-dscp":27},"icmpv4-match":{"icmpv4-type":6,"icmpv4-code":3}},"cookie":"11","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":19,"nanosecond":356000000}},"flags":""},{"id":"#UF$TABLE*2-28","table_id":2,"priority":10,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":19,"nanosecond":856000000}},"flags":""},{"id":"#UF$TABLE*2-67","table_id":2,"priority":219,"cookie_mask":"0","idle-timeout":0,"match":{"vlan-match":{"vlan-id":{"vlan-id":10,"vlan-id-present":true},"vlan-pcp":3}},"cookie":"219","instructions":{"instruction":[{"order":0}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":304000000}},"flags":""},{"id":"#UF$TABLE*2-23","table_id":2,"priority":5,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","in-port":"0"},"cookie":"5","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":22,"nanosecond":360000000}},"flags":""},{"id":"#UF$TABLE*2-66","table_id":2,"priority":218,"cookie_mask":"0","idle-timeout":0,"match":{"tunnel":{"tunnel-mask":"65520","tunnel-id":"10656"}},"cookie":"218","instructions":{"instruction":[{"order":0,"go-to-table":{"table_id":3}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":804000000}},"flags":""},{"id":"#UF$TABLE*2-22","table_id":2,"priority":4,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":34887}}},"cookie":"4","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":22,"nanosecond":863000000}},"flags":""},{"id":"#UF$TABLE*2-25","table_id":2,"priority":7,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:aa"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","in-port":"0","ip-match":{"ip-protocol":56,"ip-ecn":1,"ip-dscp":15}},"cookie":"7","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":21,"nanosecond":358000000}},"flags":""},{"id":"#UF$TABLE*2-24","table_id":2,"priority":6,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"40.4.0.0/16"},"cookie":"6","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":21,"nanosecond":861000000}},"flags":""},{"id":"#UF$TABLE*2-63","table_id":2,"priority":206,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"206","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-destination-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":310000000}},"flags":""},{"id":"#UF$TABLE*2-62","table_id":2,"priority":205,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":811000000}},"flags":""},{"id":"#UF$TABLE*2-65","table_id":2,"priority":214,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","ip-match":{"ip-protocol":56,"ip-ecn":1,"ip-dscp":60}},"cookie":"214","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"ip-match":{"ip-ecn":2}}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":306000000}},"flags":""},{"id":"#UF$TABLE*2-21","table_id":2,"priority":3,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:00:01"}}},"cookie":"3","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":23,"nanosecond":362000000}},"flags":""},{"id":"#UF$TABLE*2-64","table_id":2,"priority":209,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"209","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tunnel":{"tunnel-id":"2591"}}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":807000000}},"flags":""},{"id":"#UF$TABLE*2-20","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-source":"10.0.0.1/32"},"cookie":"2","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":23,"nanosecond":863000000}},"flags":""},{"id":"#UF$TABLE*2-50","table_id":2,"priority":104,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"104","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":8,"nanosecond":826000000}},"flags":""},{"id":"#UF$TABLE*2-19","table_id":2,"priority":1,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.1.0/24"},"cookie":"1","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":24,"nanosecond":152000000}},"flags":""},{"id":"#UF$TABLE*2-59","table_id":2,"priority":202,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"202","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":314000000}},"flags":""},{"id":"#UF$TABLE*2-56","table_id":2,"priority":110,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"110","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-vlan-action":{"ethernet-type":33024}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":5,"nanosecond":822000000}},"flags":""},{"id":"#UF$TABLE*2-55","table_id":2,"priority":109,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"109","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"NORMAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":6,"nanosecond":318000000}},"flags":""},{"id":"#UF$TABLE*2-58","table_id":2,"priority":201,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"201","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":817000000}},"flags":""},{"id":"#UF$TABLE*2-57","table_id":2,"priority":113,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"113","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-mpls-action":{"ethernet-type":34888}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":5,"nanosecond":315000000}},"flags":""},{"id":"#UF$TABLE*2-52","table_id":2,"priority":106,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":80,"tcp-source-port":20345,"ipv6-source":"1234:5678:9abc:def0:fdcd:a987:6000:0/100","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":45}},"cookie":"106","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"FLOOD"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":7,"nanosecond":823000000}},"flags":""},{"id":"#UF$TABLE*2-51","table_id":2,"priority":105,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":80,"tcp-source-port":20345,"ipv6-source":"1234:5678:9abc:def0:fdcd:a000::/84","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":45}},"cookie":"105","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"NORMAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":8,"nanosecond":324000000}},"flags":""},{"id":"#UF$TABLE*2-54","table_id":2,"priority":108,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"108","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":6,"nanosecond":821000000}},"flags":""},{"id":"#UF$TABLE*2-53","table_id":2,"priority":107,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"107","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"ALL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":7,"nanosecond":323000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":49,"packets-matched":"0"}}]}' contains 'priority' 49 times, not 50 times.</msg>
<arg>${resp.text}</arg>
<arg>priority</arg>
<arg>${flows}</arg>
<doc>Fails if ``container`` does not contain ``item`` ``count`` times.</doc>
<status status="FAIL" start="2026-05-25T01:53:46.735974" elapsed="0.003404">'{"flow-node-inventory:table":[{"id":2,"flow":[{"id":"#UF$TABLE*2-49","table_id":2,"priority":103,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"103","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":9,"nanosecond":327000000}},"flags":""},{"id":"#UF$TABLE*2-48","table_id":2,"priority":102,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"102","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":9,"nanosecond":829000000}},"flags":""},{"id":"#UF$TABLE*2-45"...
    [ Message content over the limit has been removed. ]
...0:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"108","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":6,"nanosecond":821000000}},"flags":""},{"id":"#UF$TABLE*2-53","table_id":2,"priority":107,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"107","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"ALL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":7,"nanosecond":323000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":49,"packets-matched":"0"}}]}' contains 'priority' 49 times, not 50 times.</status>
</kw>
<arg>openflow%3A1</arg>
<arg>${flows}</arg>
<doc>A GET on the /node=${node_id} inventory API is made and flow stats string is checked for existence.</doc>
<status status="FAIL" start="2026-05-25T01:53:46.711578" elapsed="0.027981">'{"flow-node-inventory:table":[{"id":2,"flow":[{"id":"#UF$TABLE*2-49","table_id":2,"priority":103,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"103","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":9,"nanosecond":327000000}},"flags":""},{"id":"#UF$TABLE*2-48","table_id":2,"priority":102,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"102","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":9,"nanosecond":829000000}},"flags":""},{"id":"#UF$TABLE*2-45"...
    [ Message content over the limit has been removed. ]
...0:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"108","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":6,"nanosecond":821000000}},"flags":""},{"id":"#UF$TABLE*2-53","table_id":2,"priority":107,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"107","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"ALL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":7,"nanosecond":323000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":49,"packets-matched":"0"}}]}' contains 'priority' 49 times, not 50 times.</status>
</kw>
<kw name="Check Flow Stats Are Available" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:48.756904" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:48.758294" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"flow-node-inventory:table":[{"id":2,"flow":[{"id":"#UF$TABLE*2-49","table_id":2,"priority":103,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"103","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":9,"nanosecond":327000000}},"flags":""},{"id":"#UF$TABLE*2-48","table_id":2,"priority":102,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"102","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":9,"nanosecond":829000000}},"flags":""},{"id":"#UF$TABLE*2-45","table_id":2,"priority":43,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"icmpv6-match":{"icmpv6-code":1,"icmpv6-type":135},"ip-match":{"ip-protocol":58}},"cookie":"43","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":11,"nanosecond":333000000}},"flags":""},{"id":"#UF$TABLE*2-44","table_id":2,"priority":38,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"38","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-queue-action":{"queue-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":11,"nanosecond":827000000}},"flags":""},{"id":"#UF$TABLE*2-47","table_id":2,"priority":101,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"101","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"TABLE"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":10,"nanosecond":326000000}},"flags":""},{"id":"#UF$TABLE*2-46","table_id":2,"priority":45,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata-mask":"4293984255","metadata":"1180719718"}},"cookie":"45","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":10,"nanosecond":831000000}},"flags":""},{"id":"#UF$TABLE*2-41","table_id":2,"priority":25,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-label":{"ipv6-flabel":33},"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":58,"ip-ecn":3,"ip-dscp":60},"icmpv6-match":{"icmpv6-code":3,"icmpv6-type":6}},"cookie":"25","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":13,"nanosecond":343000000}},"flags":""},{"id":"#UF$TABLE*2-40","table_id":2,"priority":24,"cookie_mask":"0","idle-timeout":0,"match":{"tunnel":{"tunnel-id":"2591"}},"cookie":"24","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"TABLE"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":13,"nanosecond":844000000}},"flags":""},{"id":"#UF$TABLE*2-43","table_id":2,"priority":36,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"36","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"ip-match":{"ip-dscp":1}}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":12,"nanosecond":334000000}},"flags":""},{"id":"#UF$TABLE*2-42","table_id":2,"priority":31,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"31","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":12,"nanosecond":845000000}},"flags":""},{"id":"#UF$TABLE*2-38","table_id":2,"priority":22,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"22","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":14,"nanosecond":846000000}},"flags":""},{"id":"#UF$TABLE*2-37","table_id":2,"priority":21,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":25364,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80::2acf:e9ff:fe21:6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"21","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":15,"nanosecond":344000000}},"flags":""},{"id":"#UF$TABLE*2-39","table_id":2,"priority":23,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-label":{"ipv6-flabel":33},"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"23","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":14,"nanosecond":344000000}},"flags":""},{"id":"#UF$TABLE*2-34","table_id":2,"priority":18,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-source":"fe80::2acf:e9ff:fe21:6431/128","ipv6-destination":"aabb:1234:2acf:e9ff::/64"},"cookie":"18","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":16,"nanosecond":842000000}},"flags":""},{"id":"#UF$TABLE*2-33","table_id":2,"priority":17,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":34887}},"protocol-match-fields":{"mpls-tc":3,"mpls-bos":1,"mpls-label":567}},"cookie":"17","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":17,"nanosecond":351000000}},"flags":""},{"id":"#UF$TABLE*2-36","table_id":2,"priority":20,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata-mask":"61695","metadata":"12345"}},"cookie":"20","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":15,"nanosecond":848000000}},"flags":""},{"id":"#UF$TABLE*2-35","table_id":2,"priority":19,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata":"12345"}},"cookie":"19","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":16,"nanosecond":352000000}},"flags":""},{"id":"#UF$TABLE*2-30","table_id":2,"priority":14,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:fc:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2054}},"arp-target-hardware-address":{"address":"fe:dc:ba:98:76:54"},"arp-source-transport-address":"192.168.4.1/32","arp-op":1,"arp-target-transport-address":"10.21.22.23/32","arp-source... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:48.758834" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=2</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:48.747821" elapsed="0.011078"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:48.764485" level="INFO">{"flow-node-inventory:table":[{"id":2,"flow":[{"id":"#UF$TABLE*2-49","table_id":2,"priority":103,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"103","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":9,"nanosecond":327000000}},"flags":""},{"id":"#UF$TABLE*2-48","table_id":2,"priority":102,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"102","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":9,"nanosecond":829000000}},"flags":""},{"id":"#UF$TABLE*2-45","table_id":2,"priority":43,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"icmpv6-match":{"icmpv6-code":1,"icmpv6-type":135},"ip-match":{"ip-protocol":58}},"cookie":"43","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":11,"nanosecond":333000000}},"flags":""},{"id":"#UF$TABLE*2-44","table_id":2,"priority":38,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"38","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-queue-action":{"queue-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":11,"nanosecond":827000000}},"flags":""},{"id":"#UF$TABLE*2-47","table_id":2,"priority":101,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"101","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"TABLE"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":10,"nanosecond":326000000}},"flags":""},{"id":"#UF$TABLE*2-46","table_id":2,"priority":45,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata-mask":"4293984255","metadata":"1180719718"}},"cookie":"45","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":10,"nanosecond":831000000}},"flags":""},{"id":"#UF$TABLE*2-41","table_id":2,"priority":25,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-label":{"ipv6-flabel":33},"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":58,"ip-ecn":3,"ip-dscp":60},"icmpv6-match":{"icmpv6-code":3,"icmpv6-type":6}},"cookie":"25","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":13,"nanosecond":343000000}},"flags":""},{"id":"#UF$TABLE*2-40","table_id":2,"priority":24,"cookie_mask":"0","idle-timeout":0,"match":{"tunnel":{"tunnel-id":"2591"}},"cookie":"24","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"TABLE"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":13,"nanosecond":844000000}},"flags":""},{"id":"#UF$TABLE*2-43","table_id":2,"priority":36,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"36","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"ip-match":{"ip-dscp":1}}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":12,"nanosecond":334000000}},"flags":""},{"id":"#UF$TABLE*2-42","table_id":2,"priority":31,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"31","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":12,"nanosecond":845000000}},"flags":""},{"id":"#UF$TABLE*2-38","table_id":2,"priority":22,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"22","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":14,"nanosecond":846000000}},"flags":""},{"id":"#UF$TABLE*2-37","table_id":2,"priority":21,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":25364,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80::2acf:e9ff:fe21:6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"21","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":15,"nanosecond":344000000}},"flags":""},{"id":"#UF$TABLE*2-39","table_id":2,"priority":23,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-label":{"ipv6-flabel":33},"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"23","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":14,"nanosecond":344000000}},"flags":""},{"id":"#UF$TABLE*2-34","table_id":2,"priority":18,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-source":"fe80::2acf:e9ff:fe21:6431/128","ipv6-destination":"aabb:1234:2acf:e9ff::/64"},"cookie":"18","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":16,"nanosecond":842000000}},"flags":""},{"id":"#UF$TABLE*2-33","table_id":2,"priority":17,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":34887}},"protocol-match-fields":{"mpls-tc":3,"mpls-bos":1,"mpls-label":567}},"cookie":"17","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":17,"nanosecond":351000000}},"flags":""},{"id":"#UF$TABLE*2-36","table_id":2,"priority":20,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata-mask":"61695","metadata":"12345"}},"cookie":"20","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":15,"nanosecond":848000000}},"flags":""},{"id":"#UF$TABLE*2-35","table_id":2,"priority":19,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata":"12345"}},"cookie":"19","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":16,"nanosecond":352000000}},"flags":""},{"id":"#UF$TABLE*2-30","table_id":2,"priority":14,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:fc:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2054}},"arp-target-hardware-address":{"address":"fe:dc:ba:98:76:54"},"arp-source-transport-address":"192.168.4.1/32","arp-op":1,"arp-target-transport-address":"10.21.22.23/32","arp-source-hardware-address":{"address":"12:34:56:78:98:ab"}},"cookie":"14","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":18,"nanosecond":855000000}},"flags":""},{"id":"#UF$TABLE*2-32","table_id":2,"priority":16,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true},"vlan-pcp":3}},"cookie":"16","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":17,"nanosecond":854000000}},"flags":""},{"id":"#UF$TABLE*2-31","table_id":2,"priority":15,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":34887}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true}}},"cookie":"15","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":18,"nanosecond":355000000}},"flags":""},{"id":"#UF$TABLE*2-61","table_id":2,"priority":204,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"204","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":312000000}},"flags":""},{"id":"#UF$TABLE*2-60","table_id":2,"priority":203,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"203","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":814000000}},"flags":""},{"id":"#UF$TABLE*2-27","table_id":2,"priority":9,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.1.0.0/16","ipv4-destination":"172.168.5.0/24","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"9","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":20,"nanosecond":355000000}},"flags":""},{"id":"#UF$TABLE*2-26","table_id":2,"priority":8,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:00","mask":"ff:ff:ff:ff:ff:00"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"8","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":20,"nanosecond":857000000}},"flags":""},{"id":"#UF$TABLE*2-29","table_id":2,"priority":11,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":1,"ip-ecn":3,"ip-dscp":27},"icmpv4-match":{"icmpv4-type":6,"icmpv4-code":3}},"cookie":"11","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":19,"nanosecond":356000000}},"flags":""},{"id":"#UF$TABLE*2-28","table_id":2,"priority":10,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":19,"nanosecond":856000000}},"flags":""},{"id":"#UF$TABLE*2-67","table_id":2,"priority":219,"cookie_mask":"0","idle-timeout":0,"match":{"vlan-match":{"vlan-id":{"vlan-id":10,"vlan-id-present":true},"vlan-pcp":3}},"cookie":"219","instructions":{"instruction":[{"order":0}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":304000000}},"flags":""},{"id":"#UF$TABLE*2-23","table_id":2,"priority":5,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","in-port":"0"},"cookie":"5","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":22,"nanosecond":360000000}},"flags":""},{"id":"#UF$TABLE*2-66","table_id":2,"priority":218,"cookie_mask":"0","idle-timeout":0,"match":{"tunnel":{"tunnel-mask":"65520","tunnel-id":"10656"}},"cookie":"218","instructions":{"instruction":[{"order":0,"go-to-table":{"table_id":3}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":804000000}},"flags":""},{"id":"#UF$TABLE*2-22","table_id":2,"priority":4,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":34887}}},"cookie":"4","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":22,"nanosecond":863000000}},"flags":""},{"id":"#UF$TABLE*2-25","table_id":2,"priority":7,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:aa"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","in-port":"0","ip-match":{"ip-protocol":56,"ip-ecn":1,"ip-dscp":15}},"cookie":"7","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":21,"nanosecond":358000000}},"flags":""},{"id":"#UF$TABLE*2-24","table_id":2,"priority":6,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"40.4.0.0/16"},"cookie":"6","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":21,"nanosecond":861000000}},"flags":""},{"id":"#UF$TABLE*2-63","table_id":2,"priority":206,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"206","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-destination-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":310000000}},"flags":""},{"id":"#UF$TABLE*2-62","table_id":2,"priority":205,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":811000000}},"flags":""},{"id":"#UF$TABLE*2-65","table_id":2,"priority":214,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","ip-match":{"ip-protocol":56,"ip-ecn":1,"ip-dscp":60}},"cookie":"214","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"ip-match":{"ip-ecn":2}}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":306000000}},"flags":""},{"id":"#UF$TABLE*2-21","table_id":2,"priority":3,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:00:01"}}},"cookie":"3","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":23,"nanosecond":362000000}},"flags":""},{"id":"#UF$TABLE*2-64","table_id":2,"priority":209,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"209","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tunnel":{"tunnel-id":"2591"}}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":807000000}},"flags":""},{"id":"#UF$TABLE*2-20","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-source":"10.0.0.1/32"},"cookie":"2","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":23,"nanosecond":863000000}},"flags":""},{"id":"#UF$TABLE*2-50","table_id":2,"priority":104,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"104","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":8,"nanosecond":826000000}},"flags":""},{"id":"#UF$TABLE*2-19","table_id":2,"priority":1,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.1.0/24"},"cookie":"1","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":24,"nanosecond":152000000}},"flags":""},{"id":"#UF$TABLE*2-59","table_id":2,"priority":202,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"202","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":314000000}},"flags":""},{"id":"#UF$TABLE*2-56","table_id":2,"priority":110,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"110","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-vlan-action":{"ethernet-type":33024}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":5,"nanosecond":822000000}},"flags":""},{"id":"#UF$TABLE*2-55","table_id":2,"priority":109,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"109","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"NORMAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":6,"nanosecond":318000000}},"flags":""},{"id":"#UF$TABLE*2-58","table_id":2,"priority":201,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"201","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":817000000}},"flags":""},{"id":"#UF$TABLE*2-57","table_id":2,"priority":113,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"113","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-mpls-action":{"ethernet-type":34888}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":5,"nanosecond":315000000}},"flags":""},{"id":"#UF$TABLE*2-52","table_id":2,"priority":106,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":80,"tcp-source-port":20345,"ipv6-source":"1234:5678:9abc:def0:fdcd:a987:6000:0/100","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":45}},"cookie":"106","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"FLOOD"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":7,"nanosecond":823000000}},"flags":""},{"id":"#UF$TABLE*2-51","table_id":2,"priority":105,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":80,"tcp-source-port":20345,"ipv6-source":"1234:5678:9abc:def0:fdcd:a000::/84","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":45}},"cookie":"105","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"NORMAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":8,"nanosecond":324000000}},"flags":""},{"id":"#UF$TABLE*2-54","table_id":2,"priority":108,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"108","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":6,"nanosecond":821000000}},"flags":""},{"id":"#UF$TABLE*2-53","table_id":2,"priority":107,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"107","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"ALL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":7,"nanosecond":323000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":49,"packets-matched":"0"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:48.759344" elapsed="0.005564"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-05-25T01:53:48.768611" level="INFO">Item found from container 49 times.</msg>
<msg time="2026-05-25T01:53:48.769007" level="FAIL">'{"flow-node-inventory:table":[{"id":2,"flow":[{"id":"#UF$TABLE*2-49","table_id":2,"priority":103,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"103","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":9,"nanosecond":327000000}},"flags":""},{"id":"#UF$TABLE*2-48","table_id":2,"priority":102,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"102","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":9,"nanosecond":829000000}},"flags":""},{"id":"#UF$TABLE*2-45","table_id":2,"priority":43,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"icmpv6-match":{"icmpv6-code":1,"icmpv6-type":135},"ip-match":{"ip-protocol":58}},"cookie":"43","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":11,"nanosecond":333000000}},"flags":""},{"id":"#UF$TABLE*2-44","table_id":2,"priority":38,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"38","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-queue-action":{"queue-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":11,"nanosecond":827000000}},"flags":""},{"id":"#UF$TABLE*2-47","table_id":2,"priority":101,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"101","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"TABLE"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":10,"nanosecond":326000000}},"flags":""},{"id":"#UF$TABLE*2-46","table_id":2,"priority":45,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata-mask":"4293984255","metadata":"1180719718"}},"cookie":"45","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":10,"nanosecond":831000000}},"flags":""},{"id":"#UF$TABLE*2-41","table_id":2,"priority":25,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-label":{"ipv6-flabel":33},"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":58,"ip-ecn":3,"ip-dscp":60},"icmpv6-match":{"icmpv6-code":3,"icmpv6-type":6}},"cookie":"25","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":13,"nanosecond":343000000}},"flags":""},{"id":"#UF$TABLE*2-40","table_id":2,"priority":24,"cookie_mask":"0","idle-timeout":0,"match":{"tunnel":{"tunnel-id":"2591"}},"cookie":"24","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"TABLE"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":13,"nanosecond":844000000}},"flags":""},{"id":"#UF$TABLE*2-43","table_id":2,"priority":36,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"36","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"ip-match":{"ip-dscp":1}}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":12,"nanosecond":334000000}},"flags":""},{"id":"#UF$TABLE*2-42","table_id":2,"priority":31,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"31","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":12,"nanosecond":845000000}},"flags":""},{"id":"#UF$TABLE*2-38","table_id":2,"priority":22,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"22","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":14,"nanosecond":846000000}},"flags":""},{"id":"#UF$TABLE*2-37","table_id":2,"priority":21,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":25364,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80::2acf:e9ff:fe21:6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"21","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":15,"nanosecond":344000000}},"flags":""},{"id":"#UF$TABLE*2-39","table_id":2,"priority":23,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-label":{"ipv6-flabel":33},"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"23","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":14,"nanosecond":344000000}},"flags":""},{"id":"#UF$TABLE*2-34","table_id":2,"priority":18,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-source":"fe80::2acf:e9ff:fe21:6431/128","ipv6-destination":"aabb:1234:2acf:e9ff::/64"},"cookie":"18","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":16,"nanosecond":842000000}},"flags":""},{"id":"#UF$TABLE*2-33","table_id":2,"priority":17,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":34887}},"protocol-match-fields":{"mpls-tc":3,"mpls-bos":1,"mpls-label":567}},"cookie":"17","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":17,"nanosecond":351000000}},"flags":""},{"id":"#UF$TABLE*2-36","table_id":2,"priority":20,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata-mask":"61695","metadata":"12345"}},"cookie":"20","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":15,"nanosecond":848000000}},"flags":""},{"id":"#UF$TABLE*2-35","table_id":2,"priority":19,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata":"12345"}},"cookie":"19","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":16,"nanosecond":352000000}},"flags":""},{"id":"#UF$TABLE*2-30","table_id":2,"priority":14,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:fc:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2054}},"arp-target-hardware-address":{"address":"fe:dc:ba:98:76:54"},"arp-source-transport-address":"192.168.4.1/32","arp-op":1,"arp-target-transport-address":"10.21.22.23/32","arp-source-hardware-address":{"address":"12:34:56:78:98:ab"}},"cookie":"14","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":18,"nanosecond":855000000}},"flags":""},{"id":"#UF$TABLE*2-32","table_id":2,"priority":16,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true},"vlan-pcp":3}},"cookie":"16","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":17,"nanosecond":854000000}},"flags":""},{"id":"#UF$TABLE*2-31","table_id":2,"priority":15,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":34887}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true}}},"cookie":"15","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":18,"nanosecond":355000000}},"flags":""},{"id":"#UF$TABLE*2-61","table_id":2,"priority":204,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"204","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":312000000}},"flags":""},{"id":"#UF$TABLE*2-60","table_id":2,"priority":203,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"203","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":814000000}},"flags":""},{"id":"#UF$TABLE*2-27","table_id":2,"priority":9,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.1.0.0/16","ipv4-destination":"172.168.5.0/24","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"9","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":20,"nanosecond":355000000}},"flags":""},{"id":"#UF$TABLE*2-26","table_id":2,"priority":8,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:00","mask":"ff:ff:ff:ff:ff:00"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"8","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":20,"nanosecond":857000000}},"flags":""},{"id":"#UF$TABLE*2-29","table_id":2,"priority":11,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":1,"ip-ecn":3,"ip-dscp":27},"icmpv4-match":{"icmpv4-type":6,"icmpv4-code":3}},"cookie":"11","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":19,"nanosecond":356000000}},"flags":""},{"id":"#UF$TABLE*2-28","table_id":2,"priority":10,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":19,"nanosecond":856000000}},"flags":""},{"id":"#UF$TABLE*2-67","table_id":2,"priority":219,"cookie_mask":"0","idle-timeout":0,"match":{"vlan-match":{"vlan-id":{"vlan-id":10,"vlan-id-present":true},"vlan-pcp":3}},"cookie":"219","instructions":{"instruction":[{"order":0}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":304000000}},"flags":""},{"id":"#UF$TABLE*2-23","table_id":2,"priority":5,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","in-port":"0"},"cookie":"5","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":22,"nanosecond":360000000}},"flags":""},{"id":"#UF$TABLE*2-66","table_id":2,"priority":218,"cookie_mask":"0","idle-timeout":0,"match":{"tunnel":{"tunnel-mask":"65520","tunnel-id":"10656"}},"cookie":"218","instructions":{"instruction":[{"order":0,"go-to-table":{"table_id":3}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":804000000}},"flags":""},{"id":"#UF$TABLE*2-22","table_id":2,"priority":4,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":34887}}},"cookie":"4","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":22,"nanosecond":863000000}},"flags":""},{"id":"#UF$TABLE*2-25","table_id":2,"priority":7,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:aa"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","in-port":"0","ip-match":{"ip-protocol":56,"ip-ecn":1,"ip-dscp":15}},"cookie":"7","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":21,"nanosecond":358000000}},"flags":""},{"id":"#UF$TABLE*2-24","table_id":2,"priority":6,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"40.4.0.0/16"},"cookie":"6","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":21,"nanosecond":861000000}},"flags":""},{"id":"#UF$TABLE*2-63","table_id":2,"priority":206,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"206","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-destination-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":310000000}},"flags":""},{"id":"#UF$TABLE*2-62","table_id":2,"priority":205,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":811000000}},"flags":""},{"id":"#UF$TABLE*2-65","table_id":2,"priority":214,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","ip-match":{"ip-protocol":56,"ip-ecn":1,"ip-dscp":60}},"cookie":"214","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"ip-match":{"ip-ecn":2}}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":306000000}},"flags":""},{"id":"#UF$TABLE*2-21","table_id":2,"priority":3,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:00:01"}}},"cookie":"3","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":23,"nanosecond":362000000}},"flags":""},{"id":"#UF$TABLE*2-64","table_id":2,"priority":209,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"209","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tunnel":{"tunnel-id":"2591"}}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":1,"nanosecond":807000000}},"flags":""},{"id":"#UF$TABLE*2-20","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-source":"10.0.0.1/32"},"cookie":"2","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":23,"nanosecond":863000000}},"flags":""},{"id":"#UF$TABLE*2-50","table_id":2,"priority":104,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"104","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":8,"nanosecond":826000000}},"flags":""},{"id":"#UF$TABLE*2-19","table_id":2,"priority":1,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.1.0/24"},"cookie":"1","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":24,"nanosecond":152000000}},"flags":""},{"id":"#UF$TABLE*2-59","table_id":2,"priority":202,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"202","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":314000000}},"flags":""},{"id":"#UF$TABLE*2-56","table_id":2,"priority":110,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"110","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-vlan-action":{"ethernet-type":33024}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":5,"nanosecond":822000000}},"flags":""},{"id":"#UF$TABLE*2-55","table_id":2,"priority":109,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"109","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"NORMAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":6,"nanosecond":318000000}},"flags":""},{"id":"#UF$TABLE*2-58","table_id":2,"priority":201,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"201","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":817000000}},"flags":""},{"id":"#UF$TABLE*2-57","table_id":2,"priority":113,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"113","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-mpls-action":{"ethernet-type":34888}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":5,"nanosecond":315000000}},"flags":""},{"id":"#UF$TABLE*2-52","table_id":2,"priority":106,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":80,"tcp-source-port":20345,"ipv6-source":"1234:5678:9abc:def0:fdcd:a987:6000:0/100","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":45}},"cookie":"106","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"FLOOD"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":7,"nanosecond":823000000}},"flags":""},{"id":"#UF$TABLE*2-51","table_id":2,"priority":105,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":80,"tcp-source-port":20345,"ipv6-source":"1234:5678:9abc:def0:fdcd:a000::/84","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":45}},"cookie":"105","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"NORMAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":8,"nanosecond":324000000}},"flags":""},{"id":"#UF$TABLE*2-54","table_id":2,"priority":108,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"108","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":6,"nanosecond":821000000}},"flags":""},{"id":"#UF$TABLE*2-53","table_id":2,"priority":107,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"107","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"ALL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":7,"nanosecond":323000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":49,"packets-matched":"0"}}]}' contains 'priority' 49 times, not 50 times.</msg>
<arg>${resp.text}</arg>
<arg>priority</arg>
<arg>${flows}</arg>
<doc>Fails if ``container`` does not contain ``item`` ``count`` times.</doc>
<status status="FAIL" start="2026-05-25T01:53:48.765145" elapsed="0.004387">'{"flow-node-inventory:table":[{"id":2,"flow":[{"id":"#UF$TABLE*2-49","table_id":2,"priority":103,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"103","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":9,"nanosecond":327000000}},"flags":""},{"id":"#UF$TABLE*2-48","table_id":2,"priority":102,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"102","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":9,"nanosecond":829000000}},"flags":""},{"id":"#UF$TABLE*2-45"...
    [ Message content over the limit has been removed. ]
...0:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"108","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":6,"nanosecond":821000000}},"flags":""},{"id":"#UF$TABLE*2-53","table_id":2,"priority":107,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"107","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"ALL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":7,"nanosecond":323000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":49,"packets-matched":"0"}}]}' contains 'priority' 49 times, not 50 times.</status>
</kw>
<arg>openflow%3A1</arg>
<arg>${flows}</arg>
<doc>A GET on the /node=${node_id} inventory API is made and flow stats string is checked for existence.</doc>
<status status="FAIL" start="2026-05-25T01:53:48.747238" elapsed="0.022541">'{"flow-node-inventory:table":[{"id":2,"flow":[{"id":"#UF$TABLE*2-49","table_id":2,"priority":103,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"103","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":9,"nanosecond":327000000}},"flags":""},{"id":"#UF$TABLE*2-48","table_id":2,"priority":102,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"102","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":9,"nanosecond":829000000}},"flags":""},{"id":"#UF$TABLE*2-45"...
    [ Message content over the limit has been removed. ]
...0:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"108","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":6,"nanosecond":821000000}},"flags":""},{"id":"#UF$TABLE*2-53","table_id":2,"priority":107,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"107","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"ALL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":7,"nanosecond":323000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":49,"packets-matched":"0"}}]}' contains 'priority' 49 times, not 50 times.</status>
</kw>
<kw name="Check Flow Stats Are Available" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:50.787250" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:50.794571" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"flow-node-inventory:table":[{"id":2,"flow":[{"id":"#UF$TABLE*2-49","table_id":2,"priority":103,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"103","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":12,"nanosecond":360000000}},"flags":""},{"id":"#UF$TABLE*2-48","table_id":2,"priority":102,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"102","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":12,"nanosecond":862000000}},"flags":""},{"id":"#UF$TABLE*2-45","table_id":2,"priority":43,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"icmpv6-match":{"icmpv6-code":1,"icmpv6-type":135},"ip-match":{"ip-protocol":58}},"cookie":"43","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":14,"nanosecond":366000000}},"flags":""},{"id":"#UF$TABLE*2-44","table_id":2,"priority":38,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"38","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-queue-action":{"queue-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":14,"nanosecond":860000000}},"flags":""},{"id":"#UF$TABLE*2-47","table_id":2,"priority":101,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"101","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"TABLE"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":13,"nanosecond":359000000}},"flags":""},{"id":"#UF$TABLE*2-46","table_id":2,"priority":45,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata-mask":"4293984255","metadata":"1180719718"}},"cookie":"45","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":13,"nanosecond":864000000}},"flags":""},{"id":"#UF$TABLE*2-41","table_id":2,"priority":25,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-label":{"ipv6-flabel":33},"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":58,"ip-ecn":3,"ip-dscp":60},"icmpv6-match":{"icmpv6-code":3,"icmpv6-type":6}},"cookie":"25","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":16,"nanosecond":376000000}},"flags":""},{"id":"#UF$TABLE*2-40","table_id":2,"priority":24,"cookie_mask":"0","idle-timeout":0,"match":{"tunnel":{"tunnel-id":"2591"}},"cookie":"24","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"TABLE"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":16,"nanosecond":877000000}},"flags":""},{"id":"#UF$TABLE*2-43","table_id":2,"priority":36,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"36","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"ip-match":{"ip-dscp":1}}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":15,"nanosecond":367000000}},"flags":""},{"id":"#UF$TABLE*2-42","table_id":2,"priority":31,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"31","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":15,"nanosecond":878000000}},"flags":""},{"id":"#UF$TABLE*2-38","table_id":2,"priority":22,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"22","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":17,"nanosecond":879000000}},"flags":""},{"id":"#UF$TABLE*2-37","table_id":2,"priority":21,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":25364,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80::2acf:e9ff:fe21:6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"21","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":18,"nanosecond":377000000}},"flags":""},{"id":"#UF$TABLE*2-39","table_id":2,"priority":23,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-label":{"ipv6-flabel":33},"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"23","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":17,"nanosecond":377000000}},"flags":""},{"id":"#UF$TABLE*2-34","table_id":2,"priority":18,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-source":"fe80::2acf:e9ff:fe21:6431/128","ipv6-destination":"aabb:1234:2acf:e9ff::/64"},"cookie":"18","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":19,"nanosecond":875000000}},"flags":""},{"id":"#UF$TABLE*2-33","table_id":2,"priority":17,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":34887}},"protocol-match-fields":{"mpls-tc":3,"mpls-bos":1,"mpls-label":567}},"cookie":"17","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":20,"nanosecond":384000000}},"flags":""},{"id":"#UF$TABLE*2-36","table_id":2,"priority":20,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata-mask":"61695","metadata":"12345"}},"cookie":"20","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":18,"nanosecond":881000000}},"flags":""},{"id":"#UF$TABLE*2-35","table_id":2,"priority":19,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata":"12345"}},"cookie":"19","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":19,"nanosecond":385000000}},"flags":""},{"id":"#UF$TABLE*2-30","table_id":2,"priority":14,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:fc:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2054}},"arp-target-hardware-address":{"address":"fe:dc:ba:98:76:54"},"arp-source-transport-address":"192.168.4.1/32","arp-op":1,"arp-target-transport-address":"10.21.22.23/32","arp-sour... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:50.795147" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=2</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:50.777921" elapsed="0.017294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:50.798889" level="INFO">{"flow-node-inventory:table":[{"id":2,"flow":[{"id":"#UF$TABLE*2-49","table_id":2,"priority":103,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"103","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"1"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":12,"nanosecond":360000000}},"flags":""},{"id":"#UF$TABLE*2-48","table_id":2,"priority":102,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"102","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":12,"nanosecond":862000000}},"flags":""},{"id":"#UF$TABLE*2-45","table_id":2,"priority":43,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"icmpv6-match":{"icmpv6-code":1,"icmpv6-type":135},"ip-match":{"ip-protocol":58}},"cookie":"43","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":14,"nanosecond":366000000}},"flags":""},{"id":"#UF$TABLE*2-44","table_id":2,"priority":38,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"38","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-queue-action":{"queue-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":14,"nanosecond":860000000}},"flags":""},{"id":"#UF$TABLE*2-47","table_id":2,"priority":101,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"101","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"TABLE"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":13,"nanosecond":359000000}},"flags":""},{"id":"#UF$TABLE*2-46","table_id":2,"priority":45,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata-mask":"4293984255","metadata":"1180719718"}},"cookie":"45","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":13,"nanosecond":864000000}},"flags":""},{"id":"#UF$TABLE*2-41","table_id":2,"priority":25,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-label":{"ipv6-flabel":33},"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":58,"ip-ecn":3,"ip-dscp":60},"icmpv6-match":{"icmpv6-code":3,"icmpv6-type":6}},"cookie":"25","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":16,"nanosecond":376000000}},"flags":""},{"id":"#UF$TABLE*2-40","table_id":2,"priority":24,"cookie_mask":"0","idle-timeout":0,"match":{"tunnel":{"tunnel-id":"2591"}},"cookie":"24","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"TABLE"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":16,"nanosecond":877000000}},"flags":""},{"id":"#UF$TABLE*2-43","table_id":2,"priority":36,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"36","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"ip-match":{"ip-dscp":1}}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":15,"nanosecond":367000000}},"flags":""},{"id":"#UF$TABLE*2-42","table_id":2,"priority":31,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"31","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":15,"nanosecond":878000000}},"flags":""},{"id":"#UF$TABLE*2-38","table_id":2,"priority":22,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"22","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":17,"nanosecond":879000000}},"flags":""},{"id":"#UF$TABLE*2-37","table_id":2,"priority":21,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":25364,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80::2acf:e9ff:fe21:6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"21","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":18,"nanosecond":377000000}},"flags":""},{"id":"#UF$TABLE*2-39","table_id":2,"priority":23,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-label":{"ipv6-flabel":33},"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"23","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":17,"nanosecond":377000000}},"flags":""},{"id":"#UF$TABLE*2-34","table_id":2,"priority":18,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"ipv6-source":"fe80::2acf:e9ff:fe21:6431/128","ipv6-destination":"aabb:1234:2acf:e9ff::/64"},"cookie":"18","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":19,"nanosecond":875000000}},"flags":""},{"id":"#UF$TABLE*2-33","table_id":2,"priority":17,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":34887}},"protocol-match-fields":{"mpls-tc":3,"mpls-bos":1,"mpls-label":567}},"cookie":"17","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":20,"nanosecond":384000000}},"flags":""},{"id":"#UF$TABLE*2-36","table_id":2,"priority":20,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata-mask":"61695","metadata":"12345"}},"cookie":"20","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":18,"nanosecond":881000000}},"flags":""},{"id":"#UF$TABLE*2-35","table_id":2,"priority":19,"cookie_mask":"0","idle-timeout":0,"match":{"metadata":{"metadata":"12345"}},"cookie":"19","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"IN_PORT"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":19,"nanosecond":385000000}},"flags":""},{"id":"#UF$TABLE*2-30","table_id":2,"priority":14,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:fc:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2054}},"arp-target-hardware-address":{"address":"fe:dc:ba:98:76:54"},"arp-source-transport-address":"192.168.4.1/32","arp-op":1,"arp-target-transport-address":"10.21.22.23/32","arp-source-hardware-address":{"address":"12:34:56:78:98:ab"}},"cookie":"14","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":21,"nanosecond":888000000}},"flags":""},{"id":"#UF$TABLE*2-32","table_id":2,"priority":16,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true},"vlan-pcp":3}},"cookie":"16","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":20,"nanosecond":887000000}},"flags":""},{"id":"#UF$TABLE*2-31","table_id":2,"priority":15,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":34887}},"vlan-match":{"vlan-id":{"vlan-id":78,"vlan-id-present":true}}},"cookie":"15","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":21,"nanosecond":388000000}},"flags":""},{"id":"#UF$TABLE*2-61","table_id":2,"priority":204,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"204","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":6,"nanosecond":345000000}},"flags":""},{"id":"#UF$TABLE*2-60","table_id":2,"priority":203,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"udp-destination-port":8080,"udp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":17,"ip-ecn":3}},"cookie":"203","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"udp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":6,"nanosecond":847000000}},"flags":""},{"id":"#UF$TABLE*2-27","table_id":2,"priority":9,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.1.0.0/16","ipv4-destination":"172.168.5.0/24","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"9","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":23,"nanosecond":388000000}},"flags":""},{"id":"#UF$TABLE*2-26","table_id":2,"priority":8,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:00","mask":"ff:ff:ff:ff:ff:00"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"tcp-destination-port":8080,"tcp-source-port":25364,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":2}},"cookie":"8","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":23,"nanosecond":890000000}},"flags":""},{"id":"#UF$TABLE*2-29","table_id":2,"priority":11,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":1,"ip-ecn":3,"ip-dscp":27},"icmpv4-match":{"icmpv4-type":6,"icmpv4-code":3}},"cookie":"11","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":22,"nanosecond":389000000}},"flags":""},{"id":"#UF$TABLE*2-28","table_id":2,"priority":10,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":22,"nanosecond":889000000}},"flags":""},{"id":"#UF$TABLE*2-67","table_id":2,"priority":219,"cookie_mask":"0","idle-timeout":0,"match":{"vlan-match":{"vlan-id":{"vlan-id":10,"vlan-id-present":true},"vlan-pcp":3}},"cookie":"219","instructions":{"instruction":[{"order":0}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":337000000}},"flags":""},{"id":"#UF$TABLE*2-23","table_id":2,"priority":5,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","in-port":"0"},"cookie":"5","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":25,"nanosecond":393000000}},"flags":""},{"id":"#UF$TABLE*2-66","table_id":2,"priority":218,"cookie_mask":"0","idle-timeout":0,"match":{"tunnel":{"tunnel-mask":"65520","tunnel-id":"10656"}},"cookie":"218","instructions":{"instruction":[{"order":0,"go-to-table":{"table_id":3}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":837000000}},"flags":""},{"id":"#UF$TABLE*2-22","table_id":2,"priority":4,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":34887}}},"cookie":"4","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-mpls-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":25,"nanosecond":896000000}},"flags":""},{"id":"#UF$TABLE*2-25","table_id":2,"priority":7,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:aa"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","in-port":"0","ip-match":{"ip-protocol":56,"ip-ecn":1,"ip-dscp":15}},"cookie":"7","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":24,"nanosecond":391000000}},"flags":""},{"id":"#UF$TABLE*2-68","table_id":2,"priority":220,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.0.0/24"},"cookie":"220","instructions":{"instruction":[{"order":0,"write-metadata":{"metadata-mask":"12","metadata":"10"}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":2,"nanosecond":833000000}},"flags":""},{"id":"#UF$TABLE*2-24","table_id":2,"priority":6,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:01:23:ae"},"ethernet-destination":{"address":"ff:ff:ff:ff:ff:ff"},"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"40.4.0.0/16"},"cookie":"6","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":24,"nanosecond":894000000}},"flags":""},{"id":"#UF$TABLE*2-63","table_id":2,"priority":206,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"206","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-destination-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":5,"nanosecond":343000000}},"flags":""},{"id":"#UF$TABLE*2-62","table_id":2,"priority":205,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"ff:ff:29:01:19:61"},"ethernet-type":{"type":2048}},"sctp-source-port":768,"sctp-destination-port":384,"ipv4-source":"17.0.0.0/8","ipv4-destination":"172.168.0.0/16","in-port":"0","ip-match":{"ip-protocol":132,"ip-ecn":0,"ip-dscp":0}},"cookie":"205","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"sctp-source-port":1111}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":5,"nanosecond":844000000}},"flags":""},{"id":"#UF$TABLE*2-65","table_id":2,"priority":214,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-source":"10.1.2.0/24","ipv4-destination":"20.4.0.0/16","ip-match":{"ip-protocol":56,"ip-ecn":1,"ip-dscp":60}},"cookie":"214","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"ip-match":{"ip-ecn":2}}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":339000000}},"flags":""},{"id":"#UF$TABLE*2-21","table_id":2,"priority":3,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:00:00:01"}}},"cookie":"3","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":26,"nanosecond":395000000}},"flags":""},{"id":"#UF$TABLE*2-64","table_id":2,"priority":209,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"209","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tunnel":{"tunnel-id":"2591"}}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":4,"nanosecond":840000000}},"flags":""},{"id":"#UF$TABLE*2-20","table_id":2,"priority":2,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-source":"10.0.0.1/32"},"cookie":"2","hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":26,"nanosecond":896000000}},"flags":""},{"id":"#UF$TABLE*2-50","table_id":2,"priority":104,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3,"ip-dscp":60}},"cookie":"104","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"LOCAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":11,"nanosecond":859000000}},"flags":""},{"id":"#UF$TABLE*2-19","table_id":2,"priority":1,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.1.0/24"},"cookie":"1","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"dec-nw-ttl":{}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":27,"nanosecond":185000000}},"flags":""},{"id":"#UF$TABLE*2-59","table_id":2,"priority":202,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"202","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-destination-port":1234}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":7,"nanosecond":347000000}},"flags":""},{"id":"#UF$TABLE*2-56","table_id":2,"priority":110,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"110","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-vlan-action":{"ethernet-type":33024}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":8,"nanosecond":855000000}},"flags":""},{"id":"#UF$TABLE*2-55","table_id":2,"priority":109,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"109","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"NORMAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":9,"nanosecond":351000000}},"flags":""},{"id":"#UF$TABLE*2-58","table_id":2,"priority":201,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":8080,"tcp-source-port":183,"ipv6-source":"1234:5678:9abc:def0:fdc0::/76","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":3}},"cookie":"201","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"set-field":{"tcp-source-port":2059}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":7,"nanosecond":850000000}},"flags":""},{"id":"#UF$TABLE*2-57","table_id":2,"priority":113,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"113","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"push-mpls-action":{"ethernet-type":34888}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":8,"nanosecond":348000000}},"flags":""},{"id":"#UF$TABLE*2-52","table_id":2,"priority":106,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":80,"tcp-source-port":20345,"ipv6-source":"1234:5678:9abc:def0:fdcd:a987:6000:0/100","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":45}},"cookie":"106","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"FLOOD"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":10,"nanosecond":856000000}},"flags":""},{"id":"#UF$TABLE*2-51","table_id":2,"priority":105,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":34525}},"tcp-destination-port":80,"tcp-source-port":20345,"ipv6-source":"1234:5678:9abc:def0:fdcd:a000::/84","ipv6-destination":"fe80:2acf:e9ff:fe21::6431/128","metadata":{"metadata":"12345"},"ip-match":{"ip-protocol":6,"ip-ecn":2,"ip-dscp":45}},"cookie":"105","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"NORMAL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":11,"nanosecond":357000000}},"flags":""},{"id":"#UF$TABLE*2-54","table_id":2,"priority":108,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"108","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":9,"nanosecond":854000000}},"flags":""},{"id":"#UF$TABLE*2-53","table_id":2,"priority":107,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"address":"00:00:00:11:23:ae"},"ethernet-destination":{"address":"20:14:29:01:19:61"},"ethernet-type":{"type":2048}},"udp-destination-port":8080,"udp-source-port":25364,"ipv4-source":"19.64.0.0/10","ipv4-destination":"172.168.192.0/18","in-port":"0","ip-match":{"ip-protocol":17,"ip-ecn":3,"ip-dscp":8}},"cookie":"107","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":60,"output-node-connector":"ALL"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":10,"nanosecond":356000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":50,"packets-matched":"0"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:50.795886" elapsed="0.003337"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-05-25T01:53:50.801886" level="INFO">Item found from container 50 times.</msg>
<arg>${resp.text}</arg>
<arg>priority</arg>
<arg>${flows}</arg>
<doc>Fails if ``container`` does not contain ``item`` ``count`` times.</doc>
<status status="PASS" start="2026-05-25T01:53:50.799380" elapsed="0.002650"/>
</kw>
<arg>openflow%3A1</arg>
<arg>${flows}</arg>
<doc>A GET on the /node=${node_id} inventory API is made and flow stats string is checked for existence.</doc>
<status status="PASS" start="2026-05-25T01:53:50.777336" elapsed="0.024777"/>
</kw>
<arg>30s</arg>
<arg>2s</arg>
<arg>FlowLib.Check Flow Stats Are Available</arg>
<arg>openflow%3A1</arg>
<arg>${flows}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:53:46.706953" elapsed="4.095214"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:53:50.809109" level="INFO">dpctl dump-flows -O OpenFlow13</msg>
<arg>dpctl dump-flows -O OpenFlow13</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:53:50.802327" elapsed="0.006840"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:53:50.942586" level="INFO">*** s1 ------------------------------------------------------------------------
 cookie=0xa, duration=65.438s, table=0, n_packets=16, n_bytes=1240, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x1, duration=28.931s, table=2, n_packets=0, n_bytes=0, priority=1,ip,nw_dst=10.0.1.0/24 actions=dec_ttl
 cookie=0x1f, duration=17.624s, table=2, n_packets=0, n_bytes=0, priority=31,ip,nw_dst=10.0.0.0/24 actions=drop
 cookie=0x24, duration=17.113s, table=2, n_packets=0, n_bytes=0, priority=36,ip,nw_dst=10.0.0.0/24 actions=set_field:1-&gt;ip_dscp
 cookie=0x26, duration=16.606s, table=2, n_packets=0, n_bytes=0, priority=38,ip,nw_dst=10.0.0.0/24 actions=set_queue:1
 cookie=0xdc, duration=4.579s, table=2, n_packets=0, n_bytes=0, priority=220,ip,nw_dst=10.0.0.0/24 actions=write_metadata:0xa/0xc
 cookie=0xdb, duration=5.083s, table=2, n_packets=0, n_bytes=0, priority=219,dl_vlan=10,dl_vlan_pcp=3 actions=clear_actions
 cookie=0xda, duration=5.583s, table=2, n_packets=0, n_bytes=0, priority=218,tun_id=0x29a0/0xfff0 actions=goto_table:3
 cookie=0xd6, duration=6.085s, table=2, n_packets=0, n_bytes=0, priority=214,ip,nw_src=10.1.2.0/24,nw_dst=20.4.0.0/16,nw_proto=56,nw_tos=240,nw_ecn=1 actions=set_field:2-&gt;nw_ecn
 cookie=0x15, duration=20.123s, table=2, n_packets=0, n_bytes=0, priority=21,udp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80::2acf:e9ff:fe21:6431,nw_tos=32,nw_ecn=3,tp_src=25364,tp_dst=8080 actions=dec_ttl
 cookie=0x16, duration=19.625s, table=2, n_packets=0, n_bytes=0, priority=22,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_tos=240,nw_ecn=3,tp_src=183,tp_dst=8080 actions=dec_ttl
 cookie=0x65, duration=15.105s, table=2, n_packets=0, n_bytes=0, priority=101,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_tos=240,nw_ecn=3,tp_src=183,tp_dst=8080 actions=TABLE
 cookie=0x68, duration=13.605s, table=2, n_packets=0, n_bytes=0, priority=104,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_tos=240,nw_ecn=3,tp_src=183,tp_dst=8080 actions=LOCAL
 cookie=0xd1, duration=6.586s, table=2, n_packets=0, n_bytes=0, priority=209,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_tos=240,nw_ecn=3,tp_src=183,tp_dst=8080 actions=set_field:0xa1f-&gt;tun_id
 cookie=0xa, duration=24.635s, table=2, n_packets=0, n_bytes=0, priority=10,sctp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=0,nw_ecn=0,tp_src=768,tp_dst=384 actions=dec_ttl
 cookie=0xb, duration=24.135s, table=2, n_packets=0, n_bytes=0, priority=11,icmp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=108,nw_ecn=3,icmp_type=6,icmp_code=3 actions=dec_ttl
 cookie=0xcd, duration=7.590s, table=2, n_packets=0, n_bytes=0, priority=205,sctp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=0,nw_ecn=0,tp_src=768,tp_dst=384 actions=set_field:1111-&gt;sctp_src
 cookie=0xce, duration=7.089s, table=2, n_packets=0, n_bytes=0, priority=206,sctp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=0,nw_ecn=0,tp_src=768,tp_dst=384 actions=set_field:1111-&gt;sctp_dst
 cookie=0xc9, duration=9.596s, table=2, n_packets=0, n_bytes=0, priority=201,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_ecn=3,tp_src=183,tp_dst=8080 actions=set_field:2059-&gt;tcp_src
 cookie=0xca, duration=9.093s, table=2, n_packets=0, n_bytes=0, priority=202,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_ecn=3,tp_src=183,tp_dst=8080 actions=set_field:1234-&gt;tcp_dst
 cookie=0xcb, duration=8.593s, table=2, n_packets=0, n_bytes=0, priority=203,udp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_ecn=3,tp_src=183,tp_dst=8080 actions=set_field:2059-&gt;udp_src
 cookie=0xcc, duration=8.091s, table=2, n_packets=0, n_bytes=0, priority=204,udp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_ecn=3,tp_src=183,tp_dst=8080 actions=set_field:1234-&gt;udp_dst
 cookie=0x6b, duration=12.102s, table=2, n_packets=0, n_bytes=0, priority=107,udp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=20:14:29:01:19:61,nw_src=19.64.0.0/10,nw_dst=172.168.192.0/18,nw_tos=32,nw_ecn=3,tp_src=25364,tp_dst=8080 actions=ALL
 cookie=0x6c, duration=11.600s, table=2, n_packets=0, n_bytes=0, priority=108,udp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=20:14:29:01:19:61,nw_src=19.64.0.0/10,nw_dst=172.168.192.0/18,nw_tos=32,nw_ecn=3,tp_src=25364,tp_dst=8080 actions=CONTROLLER:60
 cookie=0x6d, duration=11.097s, table=2, n_packets=0, n_bytes=0, priority=109,udp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=20:14:29:01:19:61,nw_src=19.64.0.0/10,nw_dst=172.168.192.0/18,nw_tos=32,nw_ecn=3,tp_src=25364,tp_dst=8080 actions=NORMAL
 cookie=0x71, duration=10.094s, table=2, n_packets=0, n_bytes=0, priority=113,udp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=20:14:29:01:19:61,nw_src=19.64.0.0/10,nw_dst=172.168.192.0/18,nw_tos=32,nw_ecn=3,tp_src=25364,tp_dst=8080 actions=push_mpls:0x8848
 cookie=0x6e, duration=10.601s, table=2, n_packets=0, n_bytes=0, priority=110,tcp6,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_ecn=3,tp_src=183,tp_dst=8080 actions=push_vlan:0x8100
 cookie=0x6a, duration=12.602s, table=2, n_packets=0, n_bytes=0, priority=106,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdcd:a987:6000:0/100,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_tos=180,nw_ecn=2,tp_src=20345,tp_dst=80 actions=FLOOD
 cookie=0x69, duration=13.103s, table=2, n_packets=0, n_bytes=0, priority=105,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdcd:a000::/84,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_tos=180,nw_ecn=2,tp_src=20345,tp_dst=80 actions=NORMAL
 cookie=0x66, duration=14.608s, table=2, n_packets=0, n_bytes=0, priority=102,tcp,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=8,nw_ecn=2,tp_src=25364,tp_dst=8080 actions=IN_PORT
 cookie=0x67, duration=14.106s, table=2, n_packets=0, n_bytes=0, priority=103,tcp,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=8,nw_ecn=2,tp_src=25364,tp_dst=8080 actions=output:"s1-eth1"
 cookie=0x2d, duration=15.610s, table=2, n_packets=0, n_bytes=0, priority=45,metadata=0x46605a66/0xfff0ffff actions=drop
 cookie=0x2b, duration=16.112s, table=2, n_packets=0, n_bytes=0, priority=43,icmp6,icmp_type=135,icmp_code=1 actions=dec_ttl
 cookie=0x17, duration=19.123s, table=2, n_packets=0, n_bytes=0, priority=23,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,ipv6_label=0x00021,nw_tos=240,nw_ecn=3,tp_src=183,tp_dst=8080 actions=dec_ttl
 cookie=0x19, duration=18.122s, table=2, n_packets=0, n_bytes=0, priority=25,icmp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,ipv6_label=0x00021,nw_tos=240,nw_ecn=3,icmp_type=6,icmp_code=3 actions=dec_ttl
 cookie=0x18, duration=18.623s, table=2, n_packets=0, n_bytes=0, priority=24,tun_id=0xa1f actions=TABLE
 cookie=0x14, duration=20.627s, table=2, n_packets=0, n_bytes=0, priority=20,metadata=0x3039/0xf0ff actions=LOCAL
 cookie=0x13, duration=21.131s, table=2, n_packets=0, n_bytes=0, priority=19,metadata=0x3039 actions=IN_PORT
 cookie=0x12, duration=21.621s, table=2, n_packets=0, n_bytes=0, priority=18,ipv6,ipv6_src=fe80::2acf:e9ff:fe21:6431,ipv6_dst=aabb:1234:2acf:e9ff::/64 actions=dec_ttl
 cookie=0x11, duration=22.130s, table=2, n_packets=0, n_bytes=0, priority=17,mpls,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61,mpls_label=567,mpls_tc=3,mpls_bos=1 actions=dec_mpls_ttl
 cookie=0x10, duration=22.633s, table=2, n_packets=0, n_bytes=0, priority=16,ip,dl_vlan=78,dl_vlan_pcp=3,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61 actions=dec_ttl
 cookie=0xf, duration=23.134s, table=2, n_packets=0, n_bytes=0, priority=15,mpls,dl_vlan=78,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61 actions=dec_mpls_ttl
 cookie=0xe, duration=23.634s, table=2, n_packets=0, n_bytes=0, priority=14,arp,dl_src=00:00:fc:01:23:ae,dl_dst=ff:ff:ff:ff:ff:ff,arp_spa=192.168.4.1,arp_tpa=10.21.22.23,arp_op=1,arp_sha=12:34:56:78:98:ab,arp_tha=fe:dc:ba:98:76:54 actions=CONTROLLER:60
 cookie=0x9, duration=25.134s, table=2, n_packets=0, n_bytes=0, priority=9,udp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=20:14:29:01:19:61,nw_src=19.1.0.0/16,nw_dst=172.168.5.0/24,nw_tos=32,nw_ecn=3,tp_src=25364,tp_dst=8080 actions=dec_ttl
 cookie=0x8, duration=25.636s, table=2, n_packets=0, n_bytes=0, priority=8,tcp,in_port=0,dl_src=00:00:00:11:23:00/ff:ff:ff:ff:ff:00,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=8,nw_ecn=2,tp_src=25364,tp_dst=8080 actions=dec_ttl
 cookie=0x7, duration=26.137s, table=2, n_packets=0, n_bytes=0, priority=7,ip,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:ff:ff:ff:aa,nw_src=10.1.2.0/24,nw_dst=20.4.0.0/16,nw_proto=56,nw_tos=60,nw_ecn=1 actions=dec_ttl
 cookie=0x6, duration=26.640s, table=2, n_packets=0, n_bytes=0, priority=6,ip,dl_src=00:00:00:01:23:ae,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=10.1.2.0/24,nw_dst=40.4.0.0/16 actions=dec_ttl
 cookie=0x5, duration=27.139s, table=2, n_packets=0, n_bytes=0, priority=5,ip,in_port=0,dl_src=00:00:00:00:23:ae,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=10.1.2.0/24,nw_dst=20.4.0.0/16 actions=dec_ttl
 cookie=0x4, duration=27.642s, table=2, n_packets=0, n_bytes=0, priority=4,mpls,dl_src=00:00:00:00:23:ae,dl_dst=ff:ff:ff:ff:ff:ff actions=dec_mpls_ttl
 cookie=0x3, duration=28.141s, table=2, n_packets=0, n_bytes=0, priority=3,dl_src=00:00:00:00:00:01 actions=drop
 cookie=0x2, duration=28.642s, table=2, n_packets=0, n_bytes=0, priority=2,ip,nw_src=10.0.0.1 actions=drop
mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:53:50.809324" elapsed="0.133614"/>
</kw>
<doc>Add all flows and waits for SM to collect data</doc>
<status status="PASS" start="2026-05-25T01:53:21.830663" elapsed="29.112477"/>
</test>
<test id="s1-s3-s2-t2" name="Test Is Flow 1 Added" line="50">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:50.962476" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f1.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f1.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:50.962689" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:50.962299" elapsed="0.000423"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:50.963431" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc358c70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:50.962916" elapsed="0.000544"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:50.963925" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:50.963618" elapsed="0.000333"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:50.964389" level="INFO">${flow_id} = 124</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:50.964119" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:50.964836" level="INFO">${flow_priority} = 1</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:50.964566" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:50.965680" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:50.965011" elapsed="0.000701"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:50.966245" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:50.965880" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:50.967024" level="INFO">${flow_id} = 124</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:50.966444" elapsed="0.000636"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:50.967571" level="INFO">${flow_priority} = 1</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:50.967242" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:50.968120" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:50.967790" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:50.968641" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:50.968321" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:50.969172" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc358c70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:50.968835" elapsed="0.000379"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:50.961929" elapsed="0.007343"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:50.969847" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:50.969426" elapsed="0.000451"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:50.970295" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;124&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;1&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf1&lt;/flow-name&gt;
    &lt;priority&gt;1&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:50.970032" elapsed="0.000320"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:50.978051" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:50.977735" elapsed="0.000357"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:50.984684" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=124?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=124?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:50.985021" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=124?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:50.985211" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:50.978285" elapsed="0.006963"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:50.985828" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:50.985473" elapsed="0.000418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:50.989109" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:50.986111" elapsed="0.003071"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:50.991774" elapsed="0.000054"/>
</return>
<status status="PASS" start="2026-05-25T01:53:50.989299" elapsed="0.002590"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:50.989261" elapsed="0.002665"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:50.992155" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:50.992476" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:50.992286" elapsed="0.000262"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:50.992263" elapsed="0.000317"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:50.992624" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:53:50.994893" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:50.994955" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 124 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:50.977412" elapsed="0.017575"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:50.997658" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:50.995800" elapsed="0.001903"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:50.995773" elapsed="0.001952"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:50.998290" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:50.997872" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:50.998835" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:50.998483" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:50.998911" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:50.999104" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:50.995305" elapsed="0.003826"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:50.999292" elapsed="0.000401"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:50.976815" elapsed="0.022953"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.007509" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:51.007211" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:51.016022" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:51.022250" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;360000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;862000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;376000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;367000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:51.022677" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:51.007665" elapsed="0.015052"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.023327" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.022944" elapsed="0.000447"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.026965" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;360000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;862000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;376000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;367000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;888000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;345000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;837000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;391000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;833000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;343000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;844000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;395000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;840000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;347000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;855000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;850000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;856000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;357000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;356000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.023594" elapsed="0.004514"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.030124" elapsed="0.000043"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:51.028214" elapsed="0.001989"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.028185" elapsed="0.002041"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:51.054243" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:51.054291" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:51.030371" elapsed="0.023943"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:51.056150" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:51.054394" elapsed="0.001820"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.054374" elapsed="0.001864"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:51.056278" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:51.056472" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:51.056516" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 124 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:51.006817" elapsed="0.049722"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.058682" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:51.057107" elapsed="0.001620"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.057087" elapsed="0.001662"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.059320" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.058898" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.059888" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.059511" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:51.059965" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:51.060158" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:51.056757" elapsed="0.003427"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:51.060341" elapsed="0.000387"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:51.006201" elapsed="0.054590"/>
</kw>
<arg>f1.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:50.957710" elapsed="0.103137"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:50.944607" elapsed="0.116359"/>
</test>
<test id="s1-s3-s2-t3" name="Test Is Flow 2 Added" line="52">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:51.071934" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f2.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f2.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:51.072094" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:51.071779" elapsed="0.000346"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:51.072676" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3edee0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:51.072277" elapsed="0.000428"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:51.073159" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:51.072863" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:51.073608" level="INFO">${flow_id} = 125</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:51.073339" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:51.074050" level="INFO">${flow_priority} = 2</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:51.073783" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:51.074844" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:51.074243" elapsed="0.000632"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.075376" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.075029" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.075974" level="INFO">${flow_id} = 125</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.075612" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.076524" level="INFO">${flow_priority} = 2</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.076193" elapsed="0.000508"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.077184" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.076854" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.077701" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.077382" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.078232" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3edee0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.077897" elapsed="0.000376"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:51.071451" elapsed="0.006877"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.078860" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.078478" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.079297" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;125&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;
    &lt;/match&gt;
    &lt;cookie&gt;2&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf2&lt;/flow-name&gt;
    &lt;priority&gt;2&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.079040" elapsed="0.000314"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.087225" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:51.086904" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:51.093113" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=125?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=125?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:51.093307" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=125?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:51.093406" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:51.087386" elapsed="0.006046"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.093902" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.093589" elapsed="0.000376"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.097050" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.094187" elapsed="0.002956"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:51.099661" elapsed="0.000038"/>
</return>
<status status="PASS" start="2026-05-25T01:53:51.097242" elapsed="0.002510"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.097214" elapsed="0.002571"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:51.099998" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:51.100337" elapsed="0.000075"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:51.100148" elapsed="0.000313"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:51.100124" elapsed="0.000370"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.100540" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:51.102821" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:51.102884" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 125 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:51.086586" elapsed="0.016330"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.105581" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:51.103687" elapsed="0.001939"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.103662" elapsed="0.001985"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.106205" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.105794" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.106740" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.106394" elapsed="0.000371"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:51.106815" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:51.106992" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:51.103226" elapsed="0.003791"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:51.107192" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:51.086019" elapsed="0.021618"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.115358" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:51.115040" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:51.124128" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:51.124869" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;360000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;862000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;376000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;367000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:51.125276" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:51.115513" elapsed="0.009801"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.125897" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.125537" elapsed="0.000423"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.132368" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;360000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;862000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;376000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;367000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;888000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;345000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;837000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;391000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;833000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;343000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;844000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;395000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;840000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;347000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;855000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;850000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;856000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;357000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;356000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.126182" elapsed="0.007286"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.136105" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:51.133571" elapsed="0.002604"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.133543" elapsed="0.002663"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:51.159613" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:51.159660" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:51.136399" elapsed="0.023285"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:51.161513" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:51.159763" elapsed="0.001805"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.159744" elapsed="0.001849"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:51.161626" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:51.161818" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:51.161862" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 125 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:51.114664" elapsed="0.047221"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.164049" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:51.162453" elapsed="0.001656"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.162434" elapsed="0.001698"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.164675" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.164280" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.165231" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.164864" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:51.165309" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:51.165487" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:51.162118" elapsed="0.003395"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:51.165669" elapsed="0.000381"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:51.114045" elapsed="0.052085"/>
</kw>
<arg>f2.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:51.068200" elapsed="0.097986"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:51.061273" elapsed="0.105026"/>
</test>
<test id="s1-s3-s2-t4" name="Test Is Flow 3 Added" line="54">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:51.177260" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f3.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f3.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:51.177390" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:51.177122" elapsed="0.000297"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:51.177959" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ee2f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:51.177571" elapsed="0.000415"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:51.178432" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:51.178155" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:51.178877" level="INFO">${flow_id} = 126</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:51.178609" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:51.179338" level="INFO">${flow_priority} = 3</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:51.179052" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:51.180115" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:51.179513" elapsed="0.000634"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.180669" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.180305" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.181244" level="INFO">${flow_id} = 126</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.180906" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.181762" level="INFO">${flow_priority} = 3</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.181438" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.182281" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.181954" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.182791" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.182477" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.183322" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ee2f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.182986" elapsed="0.000378"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:51.176782" elapsed="0.006636"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.184004" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.183566" elapsed="0.000472"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.184452" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;126&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:00:01&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;3&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf3&lt;/flow-name&gt;
    &lt;priority&gt;3&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.184209" elapsed="0.000300"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.192366" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:51.192052" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:51.198152" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=126?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=126?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:51.198346" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=126?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:51.198445" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:51.192524" elapsed="0.005947"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.198889" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.198632" elapsed="0.000302"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.201418" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.199098" elapsed="0.002392"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:51.204125" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:53:51.201589" elapsed="0.002628"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.201561" elapsed="0.002691"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:51.204451" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:51.204770" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:51.204577" elapsed="0.000310"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:51.204555" elapsed="0.000367"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.204969" elapsed="0.000021"/>
</return>
<msg time="2026-05-25T01:53:51.207326" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:51.207388" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 126 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:51.191708" elapsed="0.015713"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.209984" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:51.208232" elapsed="0.001798"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.208207" elapsed="0.001845"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.210610" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.210215" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.211165" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.210800" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:51.211242" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:51.211421" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:51.207715" elapsed="0.003731"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:51.211602" elapsed="0.000399"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:51.191153" elapsed="0.020926"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.219989" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:51.219679" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:51.228863" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:51.229622" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;360000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;862000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;376000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;367000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:51.230033" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:51.220163" elapsed="0.009926"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.230716" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.230314" elapsed="0.000471"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.234614" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;360000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;862000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;376000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;367000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;888000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;345000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;837000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;391000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;833000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;343000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;844000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;395000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;840000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;347000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;855000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;850000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;856000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;357000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;356000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.230988" elapsed="0.004719"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.238284" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:51.235810" elapsed="0.002541"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.235782" elapsed="0.002600"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:51.300758" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:51.300824" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:51.238575" elapsed="0.062274"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:51.302805" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:51.300972" elapsed="0.001893"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.300941" elapsed="0.001951"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:51.302930" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:53:51.303167" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:51.303212" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 126 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:51.219302" elapsed="0.083932"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.305446" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:51.303844" elapsed="0.001647"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.303826" elapsed="0.001687"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.306142" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.305665" elapsed="0.000505"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.306683" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.306333" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:51.306757" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:51.306934" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:51.303482" elapsed="0.003477"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:51.307131" elapsed="0.000405"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:51.218675" elapsed="0.088925"/>
</kw>
<arg>f3.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:51.173525" elapsed="0.134132"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:51.166542" elapsed="0.141239"/>
</test>
<test id="s1-s3-s2-t5" name="Test Is Flow 4 Added" line="56">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:51.318856" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f4.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f4.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:51.319062" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:51.318713" elapsed="0.000394"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:51.319675" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4e6890&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:51.319260" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:51.320186" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:51.319856" elapsed="0.000356"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:51.320636" level="INFO">${flow_id} = 127</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:51.320365" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:51.321105" level="INFO">${flow_priority} = 4</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:51.320814" elapsed="0.000318"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:51.321923" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:51.321284" elapsed="0.000669"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.322463" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.322127" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.323044" level="INFO">${flow_id} = 127</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.322720" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.323581" level="INFO">${flow_priority} = 4</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.323254" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.324111" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.323773" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.324635" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.324314" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.325316" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4e6890&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.324830" elapsed="0.000529"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:51.318381" elapsed="0.007036"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.325955" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.325569" elapsed="0.000416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.326396" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;127&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;4&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf4&lt;/flow-name&gt;
    &lt;priority&gt;4&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.326153" elapsed="0.000304"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.334131" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:51.333805" elapsed="0.000353"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:51.339698" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=127?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=127?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:51.339930" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=127?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:51.340029" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:51.334290" elapsed="0.005801"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.340508" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.340253" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.342716" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.340696" elapsed="0.002071"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:51.344610" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-05-25T01:53:51.342836" elapsed="0.001840"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.342816" elapsed="0.001885"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:51.344905" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:51.345314" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:51.345120" elapsed="0.000268"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:51.345093" elapsed="0.000327"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.345464" elapsed="0.000021"/>
</return>
<msg time="2026-05-25T01:53:51.347721" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:51.347785" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 127 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:51.333487" elapsed="0.014331"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.350797" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:51.348604" elapsed="0.002256"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.348580" elapsed="0.002311"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.351673" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.351114" elapsed="0.000596"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.352485" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.351937" elapsed="0.000584"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:51.352592" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:53:51.352806" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:51.348145" elapsed="0.004686"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:51.352988" elapsed="0.000401"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:51.332918" elapsed="0.020536"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.361217" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:51.360904" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:51.370569" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:51.371794" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;360000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;862000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;376000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;367000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:51.372470" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:51.361374" elapsed="0.011157"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.373497" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.372890" elapsed="0.000708"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.379695" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;360000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;862000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;376000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;367000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;888000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;345000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;837000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;391000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;833000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;343000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;844000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;395000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;840000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;347000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;855000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;850000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;856000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;357000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;356000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.373918" elapsed="0.007175"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.382910" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:51.381170" elapsed="0.001788"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.381148" elapsed="0.001833"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:51.405979" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:51.406028" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:51.383136" elapsed="0.022917"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:51.407854" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:51.406149" elapsed="0.001761"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.406128" elapsed="0.001807"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:51.407969" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:51.408194" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:51.408242" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 127 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:51.360528" elapsed="0.047737"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.410411" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:51.408823" elapsed="0.001632"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.408805" elapsed="0.001672"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.411029" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.410625" elapsed="0.000431"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.411617" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.411261" elapsed="0.000382"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:51.411693" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:51.411871" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:51.408488" elapsed="0.003408"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:51.412054" elapsed="0.000435"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:51.359878" elapsed="0.052676"/>
</kw>
<arg>f4.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:51.315122" elapsed="0.097490"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:51.308142" elapsed="0.104583"/>
</test>
<test id="s1-s3-s2-t6" name="Test Is Flow 5 Added" line="58">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:51.423639" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f5.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f5.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:51.423799" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:51.423500" elapsed="0.000328"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:51.424431" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4e6250&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:51.423981" elapsed="0.000478"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:51.424894" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:51.424613" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:51.425360" level="INFO">${flow_id} = 128</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:51.425087" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:51.425806" level="INFO">${flow_priority} = 5</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:51.425536" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:51.426658" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:51.425982" elapsed="0.000706"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.427200" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.426850" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.427766" level="INFO">${flow_id} = 128</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.427439" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.428335" level="INFO">${flow_priority} = 5</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.427961" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.428851" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.428531" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.429384" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.429048" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.429901" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4e6250&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.429583" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:51.423172" elapsed="0.006825"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.430553" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.430163" elapsed="0.000420"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.431015" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;128&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;5&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;5&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.430768" elapsed="0.000323"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.438895" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:51.438596" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:51.444332" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=128?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=128?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:51.444527" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=128?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:51.444626" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:51.439051" elapsed="0.005600"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.445227" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.444854" elapsed="0.000437"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.448358" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.445492" elapsed="0.002942"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:51.450970" elapsed="0.000038"/>
</return>
<status status="PASS" start="2026-05-25T01:53:51.448532" elapsed="0.002528"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.448505" elapsed="0.002616"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:51.451369" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:51.451689" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:51.451500" elapsed="0.000262"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:51.451477" elapsed="0.000318"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.451840" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:51.453735" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:51.453780" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 128 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:51.438280" elapsed="0.015523"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.455929" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:51.454360" elapsed="0.001615"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.454342" elapsed="0.001655"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.456565" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.456169" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.457115" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.456752" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:51.457192" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:51.457369" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:51.454014" elapsed="0.003380"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:51.457548" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:51.437711" elapsed="0.020283"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.465762" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:51.465467" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:51.474294" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:51.474947" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;360000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;862000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;376000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;367000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:51.475256" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:51.465921" elapsed="0.009362"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.475696" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.475444" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.480665" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;360000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;862000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;376000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;367000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;888000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;345000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;837000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;391000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;833000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;343000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;844000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;395000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;840000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;347000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;855000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;850000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;856000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;357000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;356000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.475883" elapsed="0.006578"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.485583" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:51.482625" elapsed="0.003007"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.482580" elapsed="0.003074"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:51.507893" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:51.507942" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:51.485794" elapsed="0.022172"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:51.509784" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:51.508045" elapsed="0.001796"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.508025" elapsed="0.001841"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:51.509899" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:51.510112" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:51.510158" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 128 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:51.465089" elapsed="0.045093"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.512332" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:51.510732" elapsed="0.001645"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.510712" elapsed="0.001687"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.512947" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.512547" elapsed="0.000427"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.513506" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.513153" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:51.513582" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:51.513763" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:51.510398" elapsed="0.003391"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:51.513945" elapsed="0.000404"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:51.464462" elapsed="0.049950"/>
</kw>
<arg>f5.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:51.419891" elapsed="0.094578"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:51.413005" elapsed="0.101575"/>
</test>
<test id="s1-s3-s2-t7" name="Test Is Flow 6 Added" line="60">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:51.525625" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f6.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f6.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:51.525773" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:51.525488" elapsed="0.000315"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:51.526373" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc75080&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:51.525954" elapsed="0.000447"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:51.526831" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:51.526553" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:51.527295" level="INFO">${flow_id} = 129</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:51.527007" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:51.527738" level="INFO">${flow_priority} = 6</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:51.527470" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:51.528576" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:51.527911" elapsed="0.000696"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.529106" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.528761" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.529668" level="INFO">${flow_id} = 129</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.529341" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.530206" level="INFO">${flow_priority} = 6</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.529864" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.530716" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.530402" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.531288" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.530946" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.531802" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc75080&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.531486" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:51.525158" elapsed="0.006740"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.532485" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.532046" elapsed="0.000470"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.532913" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;129&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;6&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;6&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.532667" elapsed="0.000306"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.540819" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:51.540519" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:51.545793" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=129?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=129?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:51.545987" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=129?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:51.546106" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:51.540979" elapsed="0.005155"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.546548" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.546295" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.548871" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.546744" elapsed="0.002199"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:51.551492" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:53:51.549041" elapsed="0.002542"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.549013" elapsed="0.002604"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:51.551860" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:51.552204" elapsed="0.000046"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:51.551991" elapsed="0.000305"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:51.551967" elapsed="0.000362"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.552379" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:51.554640" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:51.554704" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 129 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:51.540161" elapsed="0.014576"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.557480" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:51.555512" elapsed="0.002015"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.555486" elapsed="0.002063"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.558108" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.557696" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.558647" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.558298" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:51.558725" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:53:51.558903" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:51.555029" elapsed="0.003899"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:51.559102" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:51.539588" elapsed="0.019959"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.567309" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:51.566994" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:51.574342" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:51.575109" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;360000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;862000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;376000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;367000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:51.575501" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:51.567465" elapsed="0.008074"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.576137" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.575761" elapsed="0.000440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.579956" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;360000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;862000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;376000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;367000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;888000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;345000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;837000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;391000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;833000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;343000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;844000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;395000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;840000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;347000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;855000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;850000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;856000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;357000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;356000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.576426" elapsed="0.004703"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.583675" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:51.581234" elapsed="0.002508"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.581206" elapsed="0.002567"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:51.609389" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:51.609436" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:51.583968" elapsed="0.025492"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:51.611254" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:51.609538" elapsed="0.001772"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.609518" elapsed="0.001816"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:51.611367" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:51.611562" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:51.611605" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 129 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:51.566618" elapsed="0.045010"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.613807" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:51.612189" elapsed="0.001664"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.612169" elapsed="0.001705"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.614439" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.614020" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.614981" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.614628" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:51.615058" elapsed="0.000049"/>
</return>
<msg time="2026-05-25T01:53:51.615259" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:51.611841" elapsed="0.003444"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:51.615442" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:51.565996" elapsed="0.049894"/>
</kw>
<arg>f6.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:51.521851" elapsed="0.094094"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:51.514836" elapsed="0.101219"/>
</test>
<test id="s1-s3-s2-t8" name="Test Is Flow 7 Added" line="62">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:51.626963" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f7.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f7.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:51.627109" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:51.626828" elapsed="0.000311"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:51.627705" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4ad620&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:51.627290" elapsed="0.000442"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:51.628180" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:51.627884" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:51.628661" level="INFO">${flow_id} = 130</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:51.628388" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:51.629124" level="INFO">${flow_priority} = 7</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:51.628838" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:51.629998" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:51.629301" elapsed="0.000727"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.630528" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.630198" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.631135" level="INFO">${flow_id} = 130</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.630765" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.631667" level="INFO">${flow_priority} = 7</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.631337" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.632187" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.631858" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.632726" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.632404" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.633258" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4ad620&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.632922" elapsed="0.000377"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:51.626502" elapsed="0.006852"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.633881" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.633504" elapsed="0.000407"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.634317" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;130&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;15&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;7&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf7&lt;/flow-name&gt;
    &lt;priority&gt;7&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.634062" elapsed="0.000318"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.642185" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:51.641871" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:51.647288" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=130?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=130?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:51.647480" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=130?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:51.647578" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:51.642341" elapsed="0.005262"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.648017" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.647766" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.650267" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.648226" elapsed="0.002092"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:51.652130" elapsed="0.000027"/>
</return>
<status status="PASS" start="2026-05-25T01:53:51.650387" elapsed="0.001838"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.650367" elapsed="0.001885"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:51.652421" elapsed="0.000023"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:51.652655" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:51.652519" elapsed="0.000187"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:51.652498" elapsed="0.000231"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.652777" elapsed="0.000023"/>
</return>
<msg time="2026-05-25T01:53:51.655040" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:51.655122" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 130 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:51.641558" elapsed="0.013598"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.658144" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:51.655907" elapsed="0.002300"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.655882" elapsed="0.002356"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.658991" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.658440" elapsed="0.000587"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.659764" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.659281" elapsed="0.000519"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:51.659869" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:53:51.660144" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:51.655445" elapsed="0.004736"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:51.660433" elapsed="0.000464"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:51.640995" elapsed="0.019965"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.668707" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:51.668409" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:51.676225" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:51.676821" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;360000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;862000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;376000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;367000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:51.677132" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:51.668868" elapsed="0.008293"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.677573" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.677322" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.680304" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;360000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;862000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;376000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;367000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;888000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;345000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;837000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;391000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;833000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;343000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;844000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;395000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;840000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;347000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;855000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;850000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;856000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;357000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;356000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.677767" elapsed="0.003587"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.683905" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:51.681458" elapsed="0.002515"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.681431" elapsed="0.002573"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:51.708965" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:51.709013" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:51.684217" elapsed="0.024819"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:51.710838" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:51.709130" elapsed="0.001764"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.709110" elapsed="0.001809"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:51.710952" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:51.711163" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:51.711207" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 130 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:51.667996" elapsed="0.043234"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.713410" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:51.711778" elapsed="0.001678"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.711759" elapsed="0.001719"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.714023" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.713625" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.714584" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.714234" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:51.714658" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:51.714835" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:51.711446" elapsed="0.003414"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:51.715016" elapsed="0.000401"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:51.667394" elapsed="0.048084"/>
</kw>
<arg>f7.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:51.623246" elapsed="0.092288"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:51.616340" elapsed="0.099303"/>
</test>
<test id="s1-s3-s2-t9" name="Test Is Flow 8 Added" line="64">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:51.726526" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f8.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f8.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:51.726658" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:51.726392" elapsed="0.000294"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:51.727270" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e73d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:51.726837" elapsed="0.000461"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:51.727725" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:51.727450" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:51.728185" level="INFO">${flow_id} = 131</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:51.727901" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:51.728654" level="INFO">${flow_priority} = 8</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:51.728360" elapsed="0.000320"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:51.729593" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:51.728834" elapsed="0.000790"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.730126" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.729780" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.730687" level="INFO">${flow_id} = 131</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.730360" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.731262" level="INFO">${flow_priority} = 8</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.730888" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.731782" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.731468" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.732314" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.731978" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.733005" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e73d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.732532" elapsed="0.000516"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:51.726052" elapsed="0.007068"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.733655" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.733273" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.734091" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;131&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:00&lt;/address&gt;
                &lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;8&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf8&lt;/flow-name&gt;
    &lt;priority&gt;8&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.733836" elapsed="0.000321"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.741751" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:51.741451" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:51.747259" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=131?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=131?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:51.747454" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=131?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:51.747552" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:51.741907" elapsed="0.005670"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.748121" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.747746" elapsed="0.000440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.751244" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.748386" elapsed="0.002930"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:51.753898" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:53:51.751459" elapsed="0.002529"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.751430" elapsed="0.002592"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:51.754240" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:51.754554" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:51.754367" elapsed="0.000259"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:51.754344" elapsed="0.000314"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.754703" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:53:51.756974" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:51.757037" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 131 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:51.741138" elapsed="0.015949"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.759263" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:51.757689" elapsed="0.001619"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.757672" elapsed="0.001658"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.759871" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.759475" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.760421" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.760059" elapsed="0.000401"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:51.760514" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:51.760689" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:51.757360" elapsed="0.003354"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:51.760870" elapsed="0.000395"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:51.740573" elapsed="0.020756"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.769025" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:51.768730" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:51.778398" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:51.779160" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;360000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;862000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;376000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;367000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:51.779582" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:51.769197" elapsed="0.010422"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.780226" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.779846" elapsed="0.000444"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.784106" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;360000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;862000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;376000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;367000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;888000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;345000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;837000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;391000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;833000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;343000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;844000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;395000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;840000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;347000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;855000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;850000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;856000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;357000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;356000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.780520" elapsed="0.004681"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.787738" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:51.785303" elapsed="0.002501"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.785275" elapsed="0.002560"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:51.810632" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:51.810680" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:51.788027" elapsed="0.022677"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:51.812516" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:51.810783" elapsed="0.001791"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.810764" elapsed="0.001835"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:51.812633" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:51.812829" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:51.812873" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 131 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:51.768340" elapsed="0.044557"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.815043" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:51.813468" elapsed="0.001635"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.813450" elapsed="0.001675"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.815680" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.815275" elapsed="0.000432"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.816243" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.815873" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:51.816319" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:51.816509" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:51.813135" elapsed="0.003400"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:51.816692" elapsed="0.000397"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:51.767722" elapsed="0.049431"/>
</kw>
<arg>f8.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:51.722830" elapsed="0.094380"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:51.715927" elapsed="0.101394"/>
</test>
<test id="s1-s3-s2-t10" name="Test Is Flow 9 Added" line="66">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:51.828109" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f9.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f9.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:51.828245" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:51.827960" elapsed="0.000314"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:51.828869" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35b4c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:51.828425" elapsed="0.000471"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:51.829575" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:51.829048" elapsed="0.000555"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:51.830026" level="INFO">${flow_id} = 132</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:51.829757" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:51.830502" level="INFO">${flow_priority} = 9</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:51.830234" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:51.831456" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:51.830675" elapsed="0.000812"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.831976" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.831645" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.832571" level="INFO">${flow_id} = 132</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.832227" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.833119" level="INFO">${flow_priority} = 9</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.832774" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.833630" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.833316" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.834175" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.833827" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.834699" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35b4c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.834376" elapsed="0.000365"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:51.827636" elapsed="0.007161"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.835347" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.834948" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.835937" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;132&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;9&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf9&lt;/flow-name&gt;
    &lt;priority&gt;9&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.835531" elapsed="0.000471"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.843628" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:51.843326" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:51.850892" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=132?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=132?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:51.851128" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=132?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:51.851229" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:51.843786" elapsed="0.007468"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.851663" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.851413" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.854394" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.851855" elapsed="0.002610"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:51.857056" elapsed="0.000059"/>
</return>
<status status="PASS" start="2026-05-25T01:53:51.854608" elapsed="0.002560"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.854578" elapsed="0.002624"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:51.857397" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:51.857709" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:51.857523" elapsed="0.000262"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:51.857500" elapsed="0.000317"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.857863" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:53:51.860129" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:51.860193" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 132 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:51.842992" elapsed="0.017234"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.862563" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:51.860993" elapsed="0.001615"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.860976" elapsed="0.001654"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.863185" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.862774" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.863720" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.863372" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:51.863799" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:51.863974" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:51.860518" elapsed="0.003480"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:51.864168" elapsed="0.000393"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:51.842438" elapsed="0.022187"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.872338" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:51.872024" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:51.881660" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:51.882426" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;360000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;862000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;376000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;367000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:51.882823" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:51.872494" elapsed="0.010366"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.883458" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.883103" elapsed="0.000419"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.887294" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;360000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;862000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;376000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;367000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;888000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;345000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;837000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;391000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;833000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;343000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;844000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;395000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;840000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;347000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;855000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;850000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;856000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;357000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;356000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.883721" elapsed="0.004649"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.890940" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:51.888473" elapsed="0.002533"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.888444" elapsed="0.002593"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:51.913281" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:51.913330" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:51.891254" elapsed="0.022100"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:51.915201" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:51.913433" elapsed="0.001826"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.913414" elapsed="0.001870"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:51.915318" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:51.915512" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:51.915557" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 132 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:51.871652" elapsed="0.043929"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.917726" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:51.916140" elapsed="0.001631"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.916121" elapsed="0.001672"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.918356" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.917940" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.918896" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.918547" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:51.918971" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:51.919162" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:51.915793" elapsed="0.003395"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:51.919344" elapsed="0.000383"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:51.871032" elapsed="0.048756"/>
</kw>
<arg>f9.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:51.824428" elapsed="0.095416"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:51.817569" elapsed="0.102384"/>
</test>
<test id="s1-s3-s2-t11" name="Test Is Flow 10 Added" line="68">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:51.930793" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f10.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f10.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:51.930925" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:51.930656" elapsed="0.000298"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:51.931558" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7d4e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:51.931118" elapsed="0.000468"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:51.932019" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:51.931739" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:51.932489" level="INFO">${flow_id} = 133</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:51.932218" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:51.932962" level="INFO">${flow_priority} = 10</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:51.932690" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:51.933886" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:51.933156" elapsed="0.000761"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.934422" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.934090" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.934981" level="INFO">${flow_id} = 133</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.934656" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.935520" level="INFO">${flow_priority} = 10</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.935193" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.936027" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.935715" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.936560" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.936241" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.937117" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7d4e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:51.936779" elapsed="0.000380"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:51.930330" elapsed="0.006885"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.937745" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.937367" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.938344" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;133&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;10&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf10&lt;/flow-name&gt;
    &lt;priority&gt;10&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.937926" elapsed="0.000484"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.946020" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:51.945718" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:51.953169" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=133?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=133?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:51.953639" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=133?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:51.953882" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:51.946194" elapsed="0.007751"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.954995" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.954372" elapsed="0.000767"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.959331" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.955491" elapsed="0.003914"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:51.961985" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-05-25T01:53:51.959550" elapsed="0.002546"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.959519" elapsed="0.002613"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:51.962338" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:51.962651" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:51.962465" elapsed="0.000256"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:51.962442" elapsed="0.000311"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.962798" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:53:51.965101" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:51.965168" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 133 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:51.945403" elapsed="0.019798"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.967483" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:51.965900" elapsed="0.001628"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.965882" elapsed="0.001667"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.968111" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.967697" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.968661" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:51.968301" elapsed="0.000386"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:51.968740" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:51.968917" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:51.965495" elapsed="0.003446"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:51.969111" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:51.944840" elapsed="0.024714"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.977276" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:51.976962" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:51.986718" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:51.987481" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;360000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;862000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;376000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;367000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:51.987873" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:51.977432" elapsed="0.010477"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.988505" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.988151" elapsed="0.000417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:51.994380" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;360000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;862000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;376000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;367000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;888000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;345000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;837000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;391000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;833000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;343000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;844000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;395000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;840000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;347000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;855000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;850000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;856000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;357000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;356000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:51.988807" elapsed="0.007455"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:51.998978" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:51.996437" elapsed="0.002588"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:51.996388" elapsed="0.002660"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:52.022419" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:52.022467" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:51.999203" elapsed="0.023288"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:52.024255" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:52.022570" elapsed="0.001741"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.022550" elapsed="0.001785"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:52.024369" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:52.024563" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:52.024606" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 133 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:51.976575" elapsed="0.048055"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.026783" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:52.025217" elapsed="0.001611"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.025199" elapsed="0.001651"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.027442" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.026996" elapsed="0.000473"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.027983" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.027632" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:52.028059" elapsed="0.000043"/>
</return>
<msg time="2026-05-25T01:53:52.028254" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:52.024870" elapsed="0.003410"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:52.028435" elapsed="0.000401"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:51.975953" elapsed="0.052947"/>
</kw>
<arg>f10.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:51.927118" elapsed="0.101838"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:51.920231" elapsed="0.108848"/>
</test>
<test id="s1-s3-s2-t12" name="Test Is Flow 11 Added" line="70">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:52.039847" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f11.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f11.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:52.039980" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:52.039713" elapsed="0.000296"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:52.040594" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc358c70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:52.040174" elapsed="0.000448"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:52.041099" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:52.040805" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:52.041548" level="INFO">${flow_id} = 134</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:52.041279" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:52.041992" level="INFO">${flow_priority} = 11</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:52.041724" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:52.042907" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:52.042182" elapsed="0.000755"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.043445" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.043111" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.044012" level="INFO">${flow_id} = 134</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.043682" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.044560" level="INFO">${flow_priority} = 11</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.044232" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.045107" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.044773" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.045627" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.045307" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.046159" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc358c70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.045823" elapsed="0.000378"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:52.039387" elapsed="0.006870"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.046792" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.046407" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.047227" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;134&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;1&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;27&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv4-match&gt;
            &lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;
            &lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;
        &lt;/icmpv4-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;11&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf11&lt;/flow-name&gt;
    &lt;priority&gt;11&lt;/priority&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.046972" elapsed="0.000319"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.055099" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:52.054781" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:52.061687" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=134?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=134?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:52.061884" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=134?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:52.061982" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:52.055258" elapsed="0.006749"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.062441" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.062186" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.064661" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.062629" elapsed="0.002113"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:52.066937" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:53:52.064847" elapsed="0.002180"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.064826" elapsed="0.002235"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:52.067278" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:52.067590" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:52.067404" elapsed="0.000258"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:52.067381" elapsed="0.000313"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.067738" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:52.070014" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:52.070095" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 134 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:52.054468" elapsed="0.015661"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.073123" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:52.070881" elapsed="0.002306"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.070856" elapsed="0.002362"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.073909" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.073421" elapsed="0.000515"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.074461" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.074114" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:52.074536" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:52.074713" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:52.070423" elapsed="0.004315"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:52.074894" elapsed="0.000396"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:52.053899" elapsed="0.021454"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.083080" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:52.082769" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:52.093935" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:52.095284" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;360000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;862000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;376000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;367000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:52.095997" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:52.083240" elapsed="0.012821"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.097155" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.096477" elapsed="0.000789"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.103379" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;360000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;862000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;359000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;376000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;367000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;878000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;879000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;377000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;875000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;385000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;888000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;345000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;847000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;388000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;890000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;389000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;337000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;837000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;391000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;833000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;894000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;343000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;844000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;339000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;395000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;840000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;859000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;185000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;347000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;855000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;351000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;850000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;348000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;856000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;357000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;854000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;356000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.097612" elapsed="0.007577"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.107323" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:52.105357" elapsed="0.002014"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.105311" elapsed="0.002083"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:52.130229" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:52.130276" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:52.107532" elapsed="0.022768"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:52.132097" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:52.130380" elapsed="0.001774"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.130360" elapsed="0.001818"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:52.132211" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:52.132406" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:52.132450" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 134 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:52.082393" elapsed="0.050080"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.134648" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:52.133032" elapsed="0.001661"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.133014" elapsed="0.001701"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.135279" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.134862" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.135817" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.135468" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:52.135892" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:52.136081" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:52.132688" elapsed="0.003420"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:52.136264" elapsed="0.000382"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:52.081771" elapsed="0.054938"/>
</kw>
<arg>f11.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:52.036127" elapsed="0.100639"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:52.029322" elapsed="0.107586"/>
</test>
<test id="s1-s3-s2-t13" name="Test Is Flow 15 Added" line="72">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:52.148105" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f15.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f15.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:52.148246" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:52.147950" elapsed="0.000325"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:52.148917" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc090b30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:52.148454" elapsed="0.000492"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:52.149404" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:52.149119" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:52.149858" level="INFO">${flow_id} = 138</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:52.149585" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:52.150333" level="INFO">${flow_priority} = 15</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:52.150034" elapsed="0.000326"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:52.151197" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:52.150513" elapsed="0.000715"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.151862" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.151387" elapsed="0.000517"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.152446" level="INFO">${flow_id} = 138</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.152115" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.153025" level="INFO">${flow_priority} = 15</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.152645" elapsed="0.000438"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.153561" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.153241" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.154101" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.153765" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.154624" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc090b30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.154302" elapsed="0.000364"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:52.147616" elapsed="0.007107"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.155273" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.154875" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.155697" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;138&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;15&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf15&lt;/flow-name&gt;
    &lt;priority&gt;15&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.155457" elapsed="0.000302"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.163664" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:52.163361" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:52.171388" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=138?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=138?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:52.171587" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=138?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:52.171686" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:52.163820" elapsed="0.007891"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.172145" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.171868" elapsed="0.000322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.174390" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.172334" elapsed="0.002107"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:52.176268" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-05-25T01:53:52.174511" elapsed="0.001822"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.174491" elapsed="0.001896"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:52.176533" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:52.176759" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:52.176625" elapsed="0.000186"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:52.176609" elapsed="0.000238"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.176879" elapsed="0.000015"/>
</return>
<msg time="2026-05-25T01:53:52.178509" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:52.178553" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 138 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:52.163024" elapsed="0.015552"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.180709" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:52.179129" elapsed="0.001626"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.179111" elapsed="0.001665"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.181371" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.180949" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.181909" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.181560" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:52.181985" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:52.182179" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:52.178785" elapsed="0.003419"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:52.182360" elapsed="0.000388"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:52.162465" elapsed="0.020347"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.190664" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:52.190368" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:52.201867" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:52.205556" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:52.205856" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:52.190821" elapsed="0.015063"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.206317" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.206045" elapsed="0.000317"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.208930" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;902000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;411000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;364000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;871000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;867000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;212000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;375000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;883000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.206506" elapsed="0.003202"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.211544" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:52.209782" elapsed="0.001810"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.209761" elapsed="0.001853"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:52.233470" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:52.233518" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:52.211754" elapsed="0.021788"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:52.235339" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:52.233621" elapsed="0.001775"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.233601" elapsed="0.001819"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:52.235453" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:52.235649" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:52.235693" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 138 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:52.189977" elapsed="0.045739"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.237867" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:52.236287" elapsed="0.001624"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.236269" elapsed="0.001664"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.238497" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.238093" elapsed="0.000432"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.239037" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.238687" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:52.239129" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:52.239307" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:52.235937" elapsed="0.003395"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:52.239487" elapsed="0.000391"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:52.189367" elapsed="0.050573"/>
</kw>
<arg>f15.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:52.144153" elapsed="0.095843"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:52.137182" elapsed="0.102946"/>
</test>
<test id="s1-s3-s2-t14" name="Test Is Flow 16 Added" line="74">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:52.250916" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f16.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f16.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:52.251090" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:52.250778" elapsed="0.000343"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:52.251831" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4dbd30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:52.251273" elapsed="0.000586"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:52.252314" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:52.252017" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:52.252761" level="INFO">${flow_id} = 139</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:52.252493" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:52.253229" level="INFO">${flow_priority} = 16</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:52.252946" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:52.254060" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:52.253405" elapsed="0.000701"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.254591" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.254263" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.255164" level="INFO">${flow_id} = 139</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.254823" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.255687" level="INFO">${flow_priority} = 16</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.255360" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.256209" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.255880" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.256724" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.256405" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.257282" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4dbd30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.256942" elapsed="0.000382"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:52.250452" elapsed="0.006927"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.257910" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.257529" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.258347" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    &lt;priority&gt;16&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.258106" elapsed="0.000303"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.266207" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:52.265890" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:52.273498" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:52.273696" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:52.273795" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:52.266364" elapsed="0.007456"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.274254" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.273978" elapsed="0.000320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.276470" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.274441" elapsed="0.002079"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:52.278344" elapsed="0.000027"/>
</return>
<status status="PASS" start="2026-05-25T01:53:52.276589" elapsed="0.001819"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.276569" elapsed="0.001893"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:52.278608" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:52.278833" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:52.278699" elapsed="0.000184"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:52.278683" elapsed="0.000223"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.278937" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:53:52.280556" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:52.280600" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 139 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:52.265575" elapsed="0.015048"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.282801" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:52.281187" elapsed="0.001660"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.281169" elapsed="0.001699"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.283425" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.283014" elapsed="0.000437"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.283962" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.283612" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:52.284037" elapsed="0.000048"/>
</return>
<msg time="2026-05-25T01:53:52.284238" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:52.280830" elapsed="0.003433"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:52.284419" elapsed="0.000377"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:52.265011" elapsed="0.019848"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.292601" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:52.292305" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:52.303806" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:52.304376" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:52.304656" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:52.292759" elapsed="0.011924"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.305134" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.304847" elapsed="0.000332"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.307868" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;902000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;411000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;364000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;871000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;867000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;212000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;375000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;883000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.305324" elapsed="0.003322"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.310500" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:52.308720" elapsed="0.001828"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.308700" elapsed="0.001870"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:52.331280" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:52.331328" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:52.310709" elapsed="0.020643"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:52.333186" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:52.331430" elapsed="0.001813"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.331410" elapsed="0.001856"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:52.333300" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:52.333492" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:52.333536" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 139 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:52.291913" elapsed="0.041645"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.335689" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:52.334123" elapsed="0.001610"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.334104" elapsed="0.001651"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.336322" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.335902" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.336918" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.336512" elapsed="0.000432"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:52.337018" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:52.337214" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:52.333775" elapsed="0.003464"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:52.337397" elapsed="0.000383"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:52.291309" elapsed="0.046533"/>
</kw>
<arg>f16.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:52.247210" elapsed="0.090688"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:52.240392" elapsed="0.097616"/>
</test>
<test id="s1-s3-s2-t15" name="Test Is Flow 17 Added" line="76">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:52.348803" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f17.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f17.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:52.348933" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:52.348668" elapsed="0.000294"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:52.349545" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1cc20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:52.349141" elapsed="0.000431"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:52.349998" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:52.349723" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:52.350461" level="INFO">${flow_id} = 140</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:52.350191" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:52.350900" level="INFO">${flow_priority} = 17</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:52.350634" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:52.351732" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:52.351088" elapsed="0.000674"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.352262" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.351917" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.352819" level="INFO">${flow_id} = 140</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.352496" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.353379" level="INFO">${flow_priority} = 17</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.353037" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.353887" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.353571" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.354415" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.354095" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.354928" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1cc20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.354610" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:52.348339" elapsed="0.006685"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.355565" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.355187" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.355986" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    &lt;priority&gt;17&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;protocol-match-fields&gt;
            &lt;mpls-label&gt;567&lt;/mpls-label&gt;
            &lt;mpls-tc&gt;3&lt;/mpls-tc&gt;
            &lt;mpls-bos&gt;1&lt;/mpls-bos&gt;
        &lt;/protocol-match-fields&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.355746" elapsed="0.000301"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.363868" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:52.363570" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:52.372415" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=140?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=140?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:52.372853" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=140?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:52.373126" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:52.364024" elapsed="0.009162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.374140" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.373542" elapsed="0.000701"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.379173" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.374561" elapsed="0.004727"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:52.382594" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-05-25T01:53:52.379440" elapsed="0.003218"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.379397" elapsed="0.003315"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:52.382859" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:52.383101" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:52.382951" elapsed="0.000203"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:52.382934" elapsed="0.000243"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.383209" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:53:52.384812" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:52.384857" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 140 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:52.363256" elapsed="0.021623"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.387014" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:52.385446" elapsed="0.001614"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.385428" elapsed="0.001668"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.387640" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.387242" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.388199" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.387833" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:52.388275" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:52.388451" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:52.385115" elapsed="0.003360"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:52.388631" elapsed="0.000404"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:52.362689" elapsed="0.026428"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.396761" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:52.396462" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:52.407883" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:52.409182" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:52.409811" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:52.396919" elapsed="0.012951"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.410823" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.410261" elapsed="0.000664"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.417139" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;902000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;411000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;364000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;871000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;867000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;212000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;375000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;883000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.411278" elapsed="0.006967"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.420061" elapsed="0.000030"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:52.418318" elapsed="0.001807"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.418299" elapsed="0.001848"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:52.441997" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:52.442044" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:52.420287" elapsed="0.021793"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:52.443861" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:52.442162" elapsed="0.001755"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.442142" elapsed="0.001799"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:52.443974" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:52.444192" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:52.444237" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 140 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:52.396087" elapsed="0.048172"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.446395" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:52.444803" elapsed="0.001637"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.444785" elapsed="0.001677"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.447008" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.446607" elapsed="0.000428"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.447569" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.447215" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:52.447646" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:52.447823" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:52.444473" elapsed="0.003375"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:52.448004" elapsed="0.000431"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:52.395468" elapsed="0.053031"/>
</kw>
<arg>f17.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:52.345108" elapsed="0.103447"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:52.338271" elapsed="0.110392"/>
</test>
<test id="s1-s3-s2-t16" name="Test Is Flow 18 Added" line="78">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:52.459517" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f18.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f18.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:52.459648" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:52.459383" elapsed="0.000294"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:52.460237" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1efc0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:52.459832" elapsed="0.000433"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:52.460695" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:52.460417" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:52.461171" level="INFO">${flow_id} = 141</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:52.460871" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:52.461617" level="INFO">${flow_priority} = 18</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:52.461348" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:52.462384" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:52.461791" elapsed="0.000623"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.462896" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.462567" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.463470" level="INFO">${flow_id} = 141</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.463142" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.463989" level="INFO">${flow_priority} = 18</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.463663" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.464509" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.464196" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.465021" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.464705" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.465586" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1efc0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.465262" elapsed="0.000365"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:52.459041" elapsed="0.006642"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.466229" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.465831" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.466650" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;18&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;18&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.466411" elapsed="0.000296"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.474497" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:52.474199" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:52.480901" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=141?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=141?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:52.481136" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=141?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:52.481238" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:52.474655" elapsed="0.006608"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.481672" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.481422" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.484959" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.481919" elapsed="0.003114"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:52.487758" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-05-25T01:53:52.485166" elapsed="0.002687"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.485137" elapsed="0.002752"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:52.488120" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:52.488502" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:52.488300" elapsed="0.000278"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:52.488274" elapsed="0.000338"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.488658" elapsed="0.000021"/>
</return>
<msg time="2026-05-25T01:53:52.490661" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:52.490706" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 141 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:52.473871" elapsed="0.016857"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.492855" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:52.491280" elapsed="0.001620"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.491262" elapsed="0.001661"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.493491" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.493082" elapsed="0.000436"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.494026" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.493680" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:52.494119" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:52.494297" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:52.490934" elapsed="0.003389"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:52.494479" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:52.473322" elapsed="0.021602"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.502652" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:52.502355" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:52.512936" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:52.513798" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:52.514237" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:52.502808" elapsed="0.011469"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.514889" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.514514" elapsed="0.000437"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.518991" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;902000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;411000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;364000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;871000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;867000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;212000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;375000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;883000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.515176" elapsed="0.004976"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.522488" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:52.520255" elapsed="0.002282"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.520227" elapsed="0.002332"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:52.543829" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:52.543878" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:52.522697" elapsed="0.021205"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:52.545724" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:52.543980" elapsed="0.001800"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.543961" elapsed="0.001843"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:52.545838" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:52.546032" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:52.546093" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 141 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:52.501963" elapsed="0.044154"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.548287" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:52.546665" elapsed="0.001666"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.546647" elapsed="0.001707"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.548897" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.548499" elapsed="0.000426"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.549484" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.549102" elapsed="0.000408"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:52.549559" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:52.549736" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:52.546334" elapsed="0.003428"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:52.549918" elapsed="0.000400"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:52.501358" elapsed="0.049023"/>
</kw>
<arg>f18.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:52.455772" elapsed="0.094667"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:52.448973" elapsed="0.101575"/>
</test>
<test id="s1-s3-s2-t17" name="Test Is Flow 19 Added" line="80">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:52.561355" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f19.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f19.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:52.561487" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:52.561218" elapsed="0.000297"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:52.562049" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc388360&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:52.561667" elapsed="0.000426"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:52.562523" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:52.562247" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:52.562968" level="INFO">${flow_id} = 142</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:52.562700" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:52.563428" level="INFO">${flow_priority} = 19</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:52.563159" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:52.564168" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:52.563603" elapsed="0.000595"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.564681" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.564351" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.565267" level="INFO">${flow_id} = 142</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.564913" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.565790" level="INFO">${flow_priority} = 19</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.565463" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.566316" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.565982" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.566829" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.566510" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.567361" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc388360&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.567023" elapsed="0.000379"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:52.560848" elapsed="0.006608"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.567979" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.567604" elapsed="0.000405"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.568413" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;19&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;19&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.568175" elapsed="0.000296"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.576288" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:52.575966" elapsed="0.000349"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:52.584245" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=142?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=142?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:52.584437" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=142?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:52.584536" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:52.576446" elapsed="0.008116"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.584973" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.584720" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.589147" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.585177" elapsed="0.004102"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:52.593402" elapsed="0.000062"/>
</return>
<status status="PASS" start="2026-05-25T01:53:52.589433" elapsed="0.004113"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.589390" elapsed="0.004210"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:52.593814" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:52.594087" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:52.593904" elapsed="0.000238"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:52.593887" elapsed="0.000278"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.594197" elapsed="0.000015"/>
</return>
<msg time="2026-05-25T01:53:52.595810" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:52.595855" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 142 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:52.575652" elapsed="0.020226"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.598002" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:52.596428" elapsed="0.001619"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.596410" elapsed="0.001673"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.598626" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.598231" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.599186" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.598819" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:52.599263" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:52.599439" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:52.596098" elapsed="0.003366"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:52.599618" elapsed="0.000376"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:52.575101" elapsed="0.024956"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.607766" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:52.607472" elapsed="0.000320"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:52.616987" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:52.617590" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:52.618032" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:52.607920" elapsed="0.010203"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.619041" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.618481" elapsed="0.000693"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.625294" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;902000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;411000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;364000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;871000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;867000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;212000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;375000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;883000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.619492" elapsed="0.006847"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.628161" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:52.626412" elapsed="0.001798"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.626393" elapsed="0.001839"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:52.649482" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:52.649530" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:52.628371" elapsed="0.021183"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:52.651339" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:52.649632" elapsed="0.001763"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.649612" elapsed="0.001807"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:52.651452" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:52.651644" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:52.651688" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 142 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:52.607095" elapsed="0.044616"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.653898" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:52.652317" elapsed="0.001626"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.652298" elapsed="0.001667"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.654524" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.654126" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.655062" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.654712" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:52.655154" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:52.655330" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:52.651921" elapsed="0.003434"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:52.655511" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:52.606476" elapsed="0.049483"/>
</kw>
<arg>f19.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:52.557627" elapsed="0.098387"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:52.550790" elapsed="0.105347"/>
</test>
<test id="s1-s3-s2-t18" name="Test Is Flow 20 Added" line="82">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:52.666909" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f20.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f20.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:52.667039" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:52.666774" elapsed="0.000308"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:52.667620" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcbcd10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:52.667235" elapsed="0.000412"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:52.668092" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:52.667801" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:52.668542" level="INFO">${flow_id} = 143</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:52.668272" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:52.668984" level="INFO">${flow_priority} = 20</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:52.668717" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:52.669745" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:52.669174" elapsed="0.000601"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.670276" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.669932" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.670834" level="INFO">${flow_id} = 143</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.670509" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.671373" level="INFO">${flow_priority} = 20</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.671030" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.671878" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.671566" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.672407" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.672088" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.672920" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcbcd10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.672604" elapsed="0.000358"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:52.666446" elapsed="0.006570"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.673596" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.673182" elapsed="0.000444"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.674015" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;20&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;20&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xf0ff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.673778" elapsed="0.000310"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.681875" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:52.681573" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:52.687556" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=143?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=143?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:52.687756" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=143?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:52.687854" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:52.682033" elapsed="0.005846"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.688314" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.688039" elapsed="0.000320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.690896" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.688510" elapsed="0.002457"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:52.693515" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:53:52.691084" elapsed="0.002521"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.691035" elapsed="0.002604"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:52.693835" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:52.694214" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:52.693960" elapsed="0.000329"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:52.693937" elapsed="0.000385"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.694367" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:52.696635" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:52.696698" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 143 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:52.681227" elapsed="0.015503"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.699172" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:52.697533" elapsed="0.001685"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.697507" elapsed="0.001733"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.699786" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.699386" elapsed="0.000427"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.700339" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.699973" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:52.700414" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:52.700591" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:52.697017" elapsed="0.003599"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:52.700773" elapsed="0.000395"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:52.680654" elapsed="0.020578"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.708951" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:52.708653" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:52.719928" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:52.720722" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:52.721129" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:52.709122" elapsed="0.012046"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.721802" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.721427" elapsed="0.000478"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.727991" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;902000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;411000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;364000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;871000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;867000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;212000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;375000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;883000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.722257" elapsed="0.007512"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.731593" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:52.729845" elapsed="0.001796"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.729825" elapsed="0.001838"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:52.752024" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:52.752085" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:52.731802" elapsed="0.020308"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:52.753928" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:52.752189" elapsed="0.001795"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.752170" elapsed="0.001838"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:52.754041" elapsed="0.000043"/>
</return>
<msg time="2026-05-25T01:53:52.754253" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:52.754298" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 143 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:52.708277" elapsed="0.046043"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.756442" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:52.754863" elapsed="0.001624"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.754845" elapsed="0.001664"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.757052" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.756655" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.757681" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.757261" elapsed="0.000447"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:52.757758" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:52.757935" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:52.754533" elapsed="0.003427"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:52.758134" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:52.707659" elapsed="0.050922"/>
</kw>
<arg>f20.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:52.663190" elapsed="0.095448"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:52.656359" elapsed="0.102389"/>
</test>
<test id="s1-s3-s2-t19" name="Test Is Flow 21 Added" line="84">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:52.769539" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:52.769671" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:52.769401" elapsed="0.000299"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:52.770278" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfa14090&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:52.769852" elapsed="0.000454"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:52.770736" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:52.770459" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:52.771199" level="INFO">${flow_id} = 144</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:52.770912" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:52.771642" level="INFO">${flow_priority} = 21</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:52.771375" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:52.772543" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:52.771823" elapsed="0.000750"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.773062" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.772729" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.773661" level="INFO">${flow_id} = 144</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.773312" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.774200" level="INFO">${flow_priority} = 21</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.773858" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.774710" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.774396" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.775242" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.774907" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.775761" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfa14090&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.775441" elapsed="0.000365"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:52.769038" elapsed="0.006825"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.776414" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.776014" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.776839" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.776598" elapsed="0.000304"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.784710" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:52.784412" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:52.790604" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:52.790802" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:52.790900" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:52.784871" elapsed="0.006054"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.791360" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.791107" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.793617" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.791550" elapsed="0.002118"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:52.796177" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:53:52.793744" elapsed="0.002565"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.793718" elapsed="0.002630"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:52.796546" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:52.796860" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:52.796673" elapsed="0.000259"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:52.796649" elapsed="0.000315"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.797007" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:52.799318" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:52.799382" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:52.784093" elapsed="0.015321"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.802230" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:52.800185" elapsed="0.002091"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.800160" elapsed="0.002137"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.802837" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.802444" elapsed="0.000420"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.803391" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.803024" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:52.803467" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:52.803643" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:52.799703" elapsed="0.003965"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:52.803828" elapsed="0.000397"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:52.783525" elapsed="0.020763"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.811987" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:52.811691" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:52.823399" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:52.824193" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:52.824583" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:52.812158" elapsed="0.012463"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.825221" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.824846" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.831362" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;902000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;411000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;364000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;871000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;867000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;212000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;375000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;883000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.825525" elapsed="0.007696"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.835367" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:52.833384" elapsed="0.002031"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.833339" elapsed="0.002099"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:52.910217" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:52.910283" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:52.835578" elapsed="0.074731"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:52.912247" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:52.910426" elapsed="0.001881"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.910397" elapsed="0.001937"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:52.912371" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:53:52.912591" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:52.912636" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:52.811318" elapsed="0.101342"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.914884" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:52.913297" elapsed="0.001632"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.913279" elapsed="0.001673"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.915575" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.915120" elapsed="0.000483"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.916131" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.915766" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:52.916208" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:52.916384" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:52.912912" elapsed="0.003498"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:52.916565" elapsed="0.000408"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:52.810695" elapsed="0.106341"/>
</kw>
<arg>f21.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:52.765813" elapsed="0.151297"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:52.758997" elapsed="0.158234"/>
</test>
<test id="s1-s3-s2-t20" name="Test Is Flow 22 Added" line="86">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:52.928124" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f22.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f22.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:52.928290" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:52.927967" elapsed="0.000352"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:52.928895" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38b880&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:52.928470" elapsed="0.000453"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:52.929373" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:52.929091" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:52.929832" level="INFO">${flow_id} = 145</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:52.929562" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:52.930293" level="INFO">${flow_priority} = 22</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:52.930006" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:52.931307" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:52.930468" elapsed="0.000869"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.931831" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.931497" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.932470" level="INFO">${flow_id} = 145</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.932142" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.932997" level="INFO">${flow_priority} = 22</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.932665" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.933547" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.933207" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.934083" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.933747" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.934606" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38b880&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:52.934283" elapsed="0.000366"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:52.927638" elapsed="0.007067"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.935256" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.934855" elapsed="0.000433"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.935681" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;22&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;22&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.935440" elapsed="0.000303"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.943589" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:52.943282" elapsed="0.000334"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:52.949668" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=145?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=145?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:52.949950" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=145?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:52.950122" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:52.943748" elapsed="0.006411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.950733" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.950381" elapsed="0.000414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.953855" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.950994" elapsed="0.002932"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:52.956506" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:53:52.954024" elapsed="0.002616"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.953996" elapsed="0.002683"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:52.956880" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:52.957219" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:52.957009" elapsed="0.000284"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:52.956985" elapsed="0.000340"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.957370" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:52.959142" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:52.959188" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 145 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:52.942946" elapsed="0.016266"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.961346" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:52.959753" elapsed="0.001639"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.959735" elapsed="0.001679"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.961968" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.961571" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.962527" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:52.962175" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:52.962605" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:52.962783" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:52.959421" elapsed="0.003387"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:52.962965" elapsed="0.000407"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:52.942383" elapsed="0.021054"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.971201" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:52.970888" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:52.980277" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:52.980858" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:52.981172" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:52.971357" elapsed="0.009843"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.981643" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.981359" elapsed="0.000330"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:52.986181" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;902000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;411000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;364000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;871000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;867000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;212000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;375000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;883000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:52.981833" elapsed="0.006121"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:52.991374" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:52.988146" elapsed="0.003276"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:52.988099" elapsed="0.003346"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:53.012092" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:53.012142" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:52.991584" elapsed="0.020582"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:53.013975" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:53.012246" elapsed="0.001786"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.012226" elapsed="0.001830"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:53.014106" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:53.014303" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:53.014349" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 145 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:52.970507" elapsed="0.043865"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.016512" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:53.014920" elapsed="0.001638"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.014902" elapsed="0.001678"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.017149" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.016728" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.017712" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.017343" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:53.017794" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:53.017972" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:53.014586" elapsed="0.003412"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:53.018170" elapsed="0.000388"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:52.969880" elapsed="0.048740"/>
</kw>
<arg>f22.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:52.924405" elapsed="0.094270"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:52.917582" elapsed="0.101209"/>
</test>
<test id="s1-s3-s2-t21" name="Test Is Flow 23 Added" line="88">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:53.029653" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f23.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f23.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:53.029820" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:53.029488" elapsed="0.000361"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:53.030445" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1f970&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:53.030002" elapsed="0.000470"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:53.030907" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:53.030626" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:53.031373" level="INFO">${flow_id} = 146</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:53.031100" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:53.031817" level="INFO">${flow_priority} = 23</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:53.031549" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:53.032735" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:53.031992" elapsed="0.000774"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.033270" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.032924" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.033849" level="INFO">${flow_id} = 146</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.033505" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.034388" level="INFO">${flow_priority} = 23</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.034044" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.034895" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.034582" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.035426" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.035106" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.035940" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1f970&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.035622" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:53.029159" elapsed="0.006877"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.036578" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.036204" elapsed="0.000404"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.036999" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;23&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;23&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.036759" elapsed="0.000302"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.044875" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:53.044577" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:53.050859" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=146?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=146?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:53.051055" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=146?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:53.051202" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:53.045031" elapsed="0.006197"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.051638" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.051387" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.053892" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.051829" elapsed="0.002114"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:53.056231" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-05-25T01:53:53.054011" elapsed="0.002314"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.053992" elapsed="0.002367"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:53.056557" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:53.056869" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:53.056683" elapsed="0.000257"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:53.056661" elapsed="0.000311"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.057015" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:53.059297" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:53.059358" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 146 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:53.044261" elapsed="0.015130"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.062371" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:53.060159" elapsed="0.002275"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.060134" elapsed="0.002330"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.063112" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.062668" elapsed="0.000472"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.063646" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.063302" elapsed="0.000370"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:53.063720" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:53.063894" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:53.059680" elapsed="0.004239"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:53.064088" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:53.043680" elapsed="0.020852"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.072241" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:53.071930" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:53.082398" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:53.083193" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:53.083584" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:53.072397" elapsed="0.011224"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.084222" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.083846" elapsed="0.000440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.088142" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;902000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;411000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;364000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;871000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;867000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;212000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;375000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;883000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.084486" elapsed="0.004836"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.091880" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:53.089426" elapsed="0.002521"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.089398" elapsed="0.002580"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:53.112962" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:53.113010" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:53.092191" elapsed="0.020842"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:53.114834" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:53.113126" elapsed="0.001764"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.113107" elapsed="0.001806"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:53.114947" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:53.115156" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:53.115200" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 146 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:53.071556" elapsed="0.043666"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.117348" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:53.115766" elapsed="0.001627"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.115748" elapsed="0.001667"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.117989" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.117561" elapsed="0.000456"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.118550" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.118198" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:53.118627" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:53.118804" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:53.115434" elapsed="0.003396"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:53.118986" elapsed="0.000404"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:53.070936" elapsed="0.048518"/>
</kw>
<arg>f23.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:53.025912" elapsed="0.093598"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:53.019061" elapsed="0.100559"/>
</test>
<test id="s1-s3-s2-t22" name="Test Is Flow 24 Added" line="90">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:53.130433" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f24.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f24.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:53.130563" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:53.130296" elapsed="0.000295"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:53.131152" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4d8c70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:53.130742" elapsed="0.000438"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:53.131614" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:53.131335" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:53.132083" level="INFO">${flow_id} = 147</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:53.131793" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:53.132534" level="INFO">${flow_priority} = 24</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:53.132264" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:53.133270" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:53.132709" elapsed="0.000591"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.133813" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.133456" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.134427" level="INFO">${flow_id} = 147</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.134046" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.134950" level="INFO">${flow_priority} = 24</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.134624" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.135470" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.135157" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.135981" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.135665" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.136513" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4d8c70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.136194" elapsed="0.000360"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:53.129953" elapsed="0.006657"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.137153" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.136760" elapsed="0.000424"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.137574" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;24&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;24&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                        &lt;output-action&gt;
                        &lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.137335" elapsed="0.000295"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.147137" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:53.146821" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:53.153167" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=147?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=147?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:53.153357" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=147?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:53.153464" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:53.147295" elapsed="0.006195"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.153996" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.153648" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.157122" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.154282" elapsed="0.002912"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:53.159727" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:53:53.157290" elapsed="0.002527"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.157263" elapsed="0.002588"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:53.160047" elapsed="0.000049"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:53.160383" elapsed="0.000069"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:53.160195" elapsed="0.000304"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:53.160171" elapsed="0.000361"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.160577" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:53.162836" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:53.162881" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 147 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:53.146506" elapsed="0.016398"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.165025" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:53.163458" elapsed="0.001632"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.163440" elapsed="0.001674"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.165654" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.165261" elapsed="0.000419"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.166229" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.165862" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:53.166305" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:53.166481" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:53.163129" elapsed="0.003377"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:53.166661" elapsed="0.000377"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:53.145938" elapsed="0.021182"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.174827" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:53.174530" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:53.182161" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:53.182711" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:53.183123" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:53.174983" elapsed="0.008179"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.183735" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.183384" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.187627" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;902000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;411000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;364000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;871000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;867000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;212000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;375000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;883000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.183995" elapsed="0.004715"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.191142" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:53.188812" elapsed="0.002378"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.188784" elapsed="0.002429"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:53.210354" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:53.210401" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:53.191351" elapsed="0.019074"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:53.212273" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:53.210502" elapsed="0.001827"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.210483" elapsed="0.001870"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:53.212386" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:53.212579" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:53.212623" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 147 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:53.174156" elapsed="0.038490"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.214799" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:53.213209" elapsed="0.001635"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.213191" elapsed="0.001675"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.215429" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.215014" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.215967" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.215619" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:53.216042" elapsed="0.000043"/>
</return>
<msg time="2026-05-25T01:53:53.216237" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:53.212859" elapsed="0.003403"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:53.216418" elapsed="0.000382"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:53.173521" elapsed="0.043342"/>
</kw>
<arg>f24.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:53.126695" elapsed="0.090224"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:53.119866" elapsed="0.097162"/>
</test>
<test id="s1-s3-s2-t23" name="Test Is Flow 25 Added" line="92">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:53.227824" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f25.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f25.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:53.227956" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:53.227689" elapsed="0.000296"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:53.228570" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1f010&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:53.228151" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:53.229025" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:53.228749" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:53.229488" level="INFO">${flow_id} = 148</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:53.229218" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:53.229956" level="INFO">${flow_priority} = 25</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:53.229662" elapsed="0.000320"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:53.230879" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:53.230147" elapsed="0.000762"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.231420" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.231087" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.231977" level="INFO">${flow_id} = 148</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.231651" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.232516" level="INFO">${flow_priority} = 25</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.232188" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.233026" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.232707" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.233559" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.233238" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.234106" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1f010&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.233753" elapsed="0.000395"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:53.227362" elapsed="0.006841"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.234782" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.234355" elapsed="0.000457"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.235223" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;25&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;25&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.234965" elapsed="0.000321"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.243092" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:53.242775" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:53.250253" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=148?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=148?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:53.250445" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=148?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:53.250543" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:53.243250" elapsed="0.007319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.251096" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.250728" elapsed="0.000434"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.254230" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.251361" elapsed="0.002940"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:53.256860" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-05-25T01:53:53.254398" elapsed="0.002558"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.254370" elapsed="0.002620"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:53.257207" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:53.257525" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:53.257337" elapsed="0.000259"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:53.257314" elapsed="0.000315"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.257673" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:53:53.259948" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:53.260011" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 148 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:53.242460" elapsed="0.017584"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.262972" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:53.260819" elapsed="0.002199"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.260794" elapsed="0.002246"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.263597" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.263200" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.264156" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.263786" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:53.264233" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:53.264411" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:53.260356" elapsed="0.004080"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:53.264592" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:53.241890" elapsed="0.023146"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.272741" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:53.272446" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:53.281889" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:53.282690" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:53.283109" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:53.272897" elapsed="0.010251"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.283723" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.283371" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.287587" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;902000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;411000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;364000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;871000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;867000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;212000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;375000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;883000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.283986" elapsed="0.004672"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.291235" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:53.288762" elapsed="0.002541"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.288732" elapsed="0.002603"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:53.313251" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:53.313298" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:53.291528" elapsed="0.021794"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:53.315193" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:53.313400" elapsed="0.001849"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.313380" elapsed="0.001893"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:53.315307" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:53.315498" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:53.315542" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 148 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:53.272054" elapsed="0.043511"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.317699" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:53.316123" elapsed="0.001621"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.316104" elapsed="0.001662"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.318388" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.317954" elapsed="0.000462"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.318929" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.318581" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:53.319005" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:53.319199" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:53.315777" elapsed="0.003448"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:53.319383" elapsed="0.000382"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:53.271445" elapsed="0.048383"/>
</kw>
<arg>f25.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:53.224119" elapsed="0.095764"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:53.217293" elapsed="0.102697"/>
</test>
<test id="s1-s3-s2-t24" name="Test Is Flow 31 Added" line="94">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:53.330805" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f31.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f31.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:53.330935" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:53.330670" elapsed="0.000293"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:53.331526" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4da890&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:53.331131" elapsed="0.000423"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:53.331981" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:53.331706" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:53.332445" level="INFO">${flow_id} = 154</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:53.332175" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:53.332891" level="INFO">${flow_priority} = 31</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:53.332620" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:53.333694" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:53.333080" elapsed="0.000644"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.334258" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.333907" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.334816" level="INFO">${flow_id} = 154</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.334491" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.335353" level="INFO">${flow_priority} = 31</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.335008" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.335862" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.335547" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.336396" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.336058" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.336911" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4da890&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.336592" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:53.330343" elapsed="0.006665"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.337556" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.337175" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.338000" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;154&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;31&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf31&lt;/flow-name&gt;
    &lt;priority&gt;31&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.337741" elapsed="0.000317"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.345859" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:53.345563" elapsed="0.000336"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:53.351360" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=154?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=154?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:53.351553" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=154?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:53.351650" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:53.346030" elapsed="0.005645"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.352309" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.351927" elapsed="0.000446"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.355469" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.352575" elapsed="0.002965"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:53.358142" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-05-25T01:53:53.355636" elapsed="0.002599"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.355609" elapsed="0.002660"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:53.358467" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:53.358841" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:53.358645" elapsed="0.000269"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:53.358619" elapsed="0.000327"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.358991" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:53:53.361287" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:53.361349" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 154 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:53.345250" elapsed="0.016131"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.363949" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:53.362193" elapsed="0.001801"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.362167" elapsed="0.001849"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.364575" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.364179" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.365131" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.364764" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:53.365208" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:53.365385" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:53.361669" elapsed="0.003741"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:53.365566" elapsed="0.000392"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:53.344680" elapsed="0.021349"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.373773" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:53.373477" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:53.382710" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:53.383497" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:53.383885" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:53.373944" elapsed="0.009978"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.384528" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.384169" elapsed="0.000423"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.388419" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;902000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;411000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;364000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;871000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;867000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;212000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;375000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;883000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.384793" elapsed="0.004699"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.392049" elapsed="0.000040"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:53.389594" elapsed="0.002542"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.389566" elapsed="0.002603"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:53.413529" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:53.413577" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:53.392365" elapsed="0.021236"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:53.415852" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:53.413682" elapsed="0.002228"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.413661" elapsed="0.002273"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:53.415967" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:53.416190" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:53.416239" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 154 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:53.373099" elapsed="0.043164"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.418428" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:53.416814" elapsed="0.001659"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.416795" elapsed="0.001700"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.419063" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.418641" elapsed="0.000466"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.419621" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.419270" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:53.419697" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:53.419874" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:53.416479" elapsed="0.003420"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:53.420055" elapsed="0.000401"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:53.372475" elapsed="0.048045"/>
</kw>
<arg>f31.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:53.327095" elapsed="0.093482"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:53.320253" elapsed="0.100432"/>
</test>
<test id="s1-s3-s2-t25" name="Test Is Flow 36 Added" line="96">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:53.431530" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f36.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f36.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:53.431662" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:53.431395" elapsed="0.000296"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:53.432253" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc091080&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:53.431842" elapsed="0.000438"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:53.432708" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:53.432432" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:53.433172" level="INFO">${flow_id} = 159</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:53.432885" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:53.433618" level="INFO">${flow_priority} = 36</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:53.433349" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:53.434443" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:53.433798" elapsed="0.000675"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.434958" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.434629" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.435533" level="INFO">${flow_id} = 159</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.435208" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.436055" level="INFO">${flow_priority} = 36</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.435729" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.436579" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.436266" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.437117" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.436780" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.437633" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc091080&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.437314" elapsed="0.000360"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:53.431055" elapsed="0.006674"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.438293" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.437877" elapsed="0.000447"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.438712" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;ip-match&gt;
                            &lt;ip-dscp&gt;1&lt;/ip-dscp&gt;
                        &lt;/ip-match&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;159&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;36&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf36&lt;/flow-name&gt;
    &lt;priority&gt;36&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.438475" elapsed="0.000297"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.446661" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:53.446360" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:53.451835" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=159?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=159?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:53.452131" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=159?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:53.452270" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:53.446820" elapsed="0.005486"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.452876" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.452527" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.456007" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.453160" elapsed="0.002940"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:53.458647" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-05-25T01:53:53.456199" elapsed="0.002540"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.456171" elapsed="0.002601"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:53.458971" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:53.459357" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:53.459165" elapsed="0.000263"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:53.459139" elapsed="0.000320"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.459504" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:53.461766" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:53.461829" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 159 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:53.446027" elapsed="0.015834"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.464277" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:53.462673" elapsed="0.001650"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.462647" elapsed="0.001698"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.464885" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.464490" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.465448" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.465091" elapsed="0.000384"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:53.465525" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:53.465702" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:53.462208" elapsed="0.003520"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:53.465891" elapsed="0.000416"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:53.445462" elapsed="0.020909"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.474052" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:53.473742" elapsed="0.000351"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:53.483110" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:53.483882" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:53.484297" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:53.474226" elapsed="0.010109"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.484919" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.484560" elapsed="0.000423"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.488804" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;902000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;411000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;364000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;871000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;867000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;212000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;375000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;883000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.485205" elapsed="0.004683"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.492460" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:53.489990" elapsed="0.002537"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.489961" elapsed="0.002598"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:53.512610" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:53.512658" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:53.492752" elapsed="0.019930"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:53.514572" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:53.512760" elapsed="0.001868"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.512741" elapsed="0.001911"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:53.514686" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:53.514883" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:53.514927" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 159 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:53.473367" elapsed="0.041582"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.517113" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:53.515530" elapsed="0.001629"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.515511" elapsed="0.001669"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.517726" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.517327" elapsed="0.000427"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.518337" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.517916" elapsed="0.000447"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:53.518413" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:53.518591" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:53.515196" elapsed="0.003421"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:53.518775" elapsed="0.000400"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:53.472746" elapsed="0.046493"/>
</kw>
<arg>f36.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:53.427812" elapsed="0.091483"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:53.420942" elapsed="0.098461"/>
</test>
<test id="s1-s3-s2-t26" name="Test Is Flow 38 Added" line="98">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:53.530207" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f38.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f38.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:53.530335" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:53.530033" elapsed="0.000331"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:53.530909" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4b9df0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:53.530516" elapsed="0.000420"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:53.531381" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:53.531104" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:53.531888" level="INFO">${flow_id} = 161</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:53.531613" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:53.532363" level="INFO">${flow_priority} = 38</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:53.532085" elapsed="0.000303"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:53.533227" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:53.532538" elapsed="0.000724"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.533767" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.533422" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.534405" level="INFO">${flow_id} = 161</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.534004" elapsed="0.000445"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.534990" level="INFO">${flow_priority} = 38</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.534605" elapsed="0.000428"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.535527" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.535206" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.536049" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.535726" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.536592" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4b9df0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.536265" elapsed="0.000370"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:53.529707" elapsed="0.006985"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.537252" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.536843" elapsed="0.000440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.537678" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-queue-action&gt;
                        &lt;queue-id&gt;1&lt;/queue-id&gt;
                    &lt;/set-queue-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;161&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;38&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf38&lt;/flow-name&gt;
    &lt;priority&gt;38&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.537435" elapsed="0.000359"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.547484" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:53.547179" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:53.552414" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=161?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=161?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:53.552610" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=161?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:53.552720" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:53.547642" elapsed="0.005105"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.553367" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.552976" elapsed="0.000455"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.556592" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.553632" elapsed="0.003033"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:53.559293" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-05-25T01:53:53.556766" elapsed="0.002620"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.556735" elapsed="0.002687"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:53.559621" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:53.559987" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:53.559795" elapsed="0.000291"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:53.559771" elapsed="0.000351"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.560168" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:53.562519" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:53.562584" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 161 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:53.546823" elapsed="0.015793"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.564814" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:53.563240" elapsed="0.001620"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.563222" elapsed="0.001660"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.565451" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.565030" elapsed="0.000448"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.565996" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.565641" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:53.566109" elapsed="0.000035"/>
</return>
<msg time="2026-05-25T01:53:53.566307" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:53.562888" elapsed="0.003445"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:53.566492" elapsed="0.000394"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:53.546233" elapsed="0.020716"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.574719" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:53.574422" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:53.584526" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:53.585331" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:53.585721" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:53.574877" elapsed="0.010884"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.586413" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.585984" elapsed="0.000493"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.592424" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;902000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;411000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;364000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;871000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;867000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;212000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;375000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;883000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.586678" elapsed="0.007539"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.596346" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:53.594381" elapsed="0.002013"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.594336" elapsed="0.002080"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:53.614885" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:53.614932" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:53.596555" elapsed="0.018400"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:53.616973" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:53.615034" elapsed="0.001995"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.615014" elapsed="0.002039"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:53.617110" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:53.617306" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:53.617349" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 161 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:53.574018" elapsed="0.043354"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.619533" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:53.617919" elapsed="0.001659"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.617901" elapsed="0.001699"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.620166" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.619748" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.620706" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.620356" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:53.620782" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:53.620958" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:53.617587" elapsed="0.003396"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:53.621156" elapsed="0.000382"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:53.573413" elapsed="0.048187"/>
</kw>
<arg>f38.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:53.526456" elapsed="0.095201"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:53.519649" elapsed="0.102117"/>
</test>
<test id="s1-s3-s2-t27" name="Test Is Flow 43 Added" line="100">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:53.632470" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f43.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f43.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:53.632601" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:53.632336" elapsed="0.000293"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:53.633198" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe68bd0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:53.632780" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:53.633654" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:53.633377" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:53.634115" level="INFO">${flow_id} = 166</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:53.633830" elapsed="0.000334"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:53.634592" level="INFO">${flow_priority} = 43</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:53.634321" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:53.635437" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:53.634766" elapsed="0.000702"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.635961" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.635624" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.636539" level="INFO">${flow_id} = 166</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.636212" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.637063" level="INFO">${flow_priority} = 43</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.636735" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.637588" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.637273" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.638121" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.637784" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.638654" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe68bd0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.638333" elapsed="0.000362"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:53.631997" elapsed="0.006752"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.639290" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.638899" elapsed="0.000422"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.639709" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;166&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;43&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf43&lt;/flow-name&gt;
    &lt;priority&gt;43&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.639472" elapsed="0.000297"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.647597" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:53.647300" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:53.653031" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=166?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=166?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:53.653244" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=166?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:53.653342" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:53.647753" elapsed="0.005615"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.653780" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.653527" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.656025" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.653968" elapsed="0.002124"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:53.657904" elapsed="0.000027"/>
</return>
<status status="PASS" start="2026-05-25T01:53:53.656164" elapsed="0.001805"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.656144" elapsed="0.001849"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:53.658205" elapsed="0.000027"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:53.658438" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:53.658303" elapsed="0.000186"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:53.658286" elapsed="0.000226"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.658544" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:53:53.660733" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:53.660801" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 166 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:53.646968" elapsed="0.013865"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.663837" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:53.661602" elapsed="0.002299"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.661577" elapsed="0.002355"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.664711" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.664157" elapsed="0.000591"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.665491" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.664975" elapsed="0.000552"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:53.665597" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:53:53.665841" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:53.661142" elapsed="0.004734"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:53.666115" elapsed="0.000564"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:53.646416" elapsed="0.020350"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.674555" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:53.674254" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:53.683742" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:53.685007" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:53.685662" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:53.674713" elapsed="0.011009"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.686715" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.686112" elapsed="0.000709"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.691760" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;902000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;411000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;364000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;871000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;867000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;212000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;375000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;883000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.687181" elapsed="0.005363"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.694393" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:53.692617" elapsed="0.001825"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.692597" elapsed="0.001867"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:53.714552" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:53.714599" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:53.694604" elapsed="0.020019"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:53.716476" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:53.714701" elapsed="0.001830"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.714682" elapsed="0.001873"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:53.716589" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:53.716781" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:53.716825" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 166 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:53.673835" elapsed="0.043013"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.718999" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:53.717414" elapsed="0.001630"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.717396" elapsed="0.001684"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.719632" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.719230" elapsed="0.000430"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.720205" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.719826" elapsed="0.000406"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:53.720283" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:53.720461" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:53.717062" elapsed="0.003425"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:53.720645" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:53.673218" elapsed="0.047893"/>
</kw>
<arg>f43.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:53.628757" elapsed="0.092412"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:53.621940" elapsed="0.099338"/>
</test>
<test id="s1-s3-s2-t28" name="Test Is Flow 45 Added" line="102">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:53.732248" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f45.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f45.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:53.732380" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:53.732111" elapsed="0.000298"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:53.732953" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe68310&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:53.732561" elapsed="0.000419"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:53.733431" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:53.733149" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:53.733884" level="INFO">${flow_id} = 168</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:53.733610" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:53.734361" level="INFO">${flow_priority} = 45</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:53.734060" elapsed="0.000327"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:53.735153" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:53.734537" elapsed="0.000646"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.735682" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.735341" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.736263" level="INFO">${flow_id} = 168</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.735917" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.736786" level="INFO">${flow_priority} = 45</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.736458" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.737315" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.736981" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.737834" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.737513" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.738399" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe68310&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.738032" elapsed="0.000410"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:53.731770" elapsed="0.006727"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.739036" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.738653" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.739478" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;168&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;1180719718&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xfff0ffff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
    &lt;cookie&gt;45&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf45&lt;/flow-name&gt;
    &lt;priority&gt;45&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.739238" elapsed="0.000298"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.747363" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:53.747045" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:53.752374" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=168?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=168?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:53.752570" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=168?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:53.752668" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:53.747522" elapsed="0.005172"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.753131" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.752853" elapsed="0.000324"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.755659" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.753321" elapsed="0.002409"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:53.758297" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-05-25T01:53:53.755833" elapsed="0.002561"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.755805" elapsed="0.002623"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:53.758626" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:53.758994" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:53.758753" elapsed="0.000336"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:53.758730" elapsed="0.000394"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.759171" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:53.761440" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:53.761502" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 168 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:53.746728" elapsed="0.014806"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.764053" elapsed="0.000029"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:53.762352" elapsed="0.001762"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.762325" elapsed="0.001812"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.764682" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.764285" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.765247" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.764877" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:53.765324" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:53.765501" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:53.761832" elapsed="0.003694"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:53.765681" elapsed="0.000396"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:53.746144" elapsed="0.020001"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.773904" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:53.773607" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:53.783090" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:53.783868" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:53.784285" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:53.774060" elapsed="0.010263"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.784905" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.784545" elapsed="0.000423"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.788829" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;902000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;411000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;364000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;871000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;867000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;212000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;375000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;883000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.785192" elapsed="0.004735"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.792512" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:53.790029" elapsed="0.002551"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.790002" elapsed="0.002609"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:53.814410" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:53.814457" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:53.792805" elapsed="0.021676"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:53.816339" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:53.814559" elapsed="0.001836"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.814540" elapsed="0.001879"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:53.816452" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:53.816645" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:53.816689" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 168 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:53.773231" elapsed="0.043481"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.818859" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:53.817272" elapsed="0.001632"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.817254" elapsed="0.001672"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.819487" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.819087" elapsed="0.000427"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.820024" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.819677" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:53.820118" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:53.820296" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:53.816925" elapsed="0.003396"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:53.820477" elapsed="0.000380"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:53.772607" elapsed="0.048312"/>
</kw>
<arg>f45.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:53.728521" elapsed="0.092454"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:53.721705" elapsed="0.099395"/>
</test>
<test id="s1-s3-s2-t29" name="Test Is Flow 101 Added" line="104">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:53.832330" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f101.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f101.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:53.832463" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:53.832193" elapsed="0.000299"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:53.833063" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc093600&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:53.832642" elapsed="0.000466"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:53.833540" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:53.833260" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:53.833987" level="INFO">${flow_id} = 224</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:53.833718" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:53.834461" level="INFO">${flow_priority} = 101</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:53.834178" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:53.835369" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:53.834636" elapsed="0.000763"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.835884" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.835554" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.836482" level="INFO">${flow_id} = 224</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.836153" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.837006" level="INFO">${flow_priority} = 101</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.836680" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.837536" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.837220" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.838052" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.837734" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.838621" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc093600&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.838268" elapsed="0.000394"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:53.831830" elapsed="0.006888"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.839267" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.838868" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.839688" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;101&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;101&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.839450" elapsed="0.000306"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.847602" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:53.847299" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:53.852756" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=224?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=224?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:53.852952" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=224?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:53.853050" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:53.847761" elapsed="0.005336"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.853508" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.853258" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.856156" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.853694" elapsed="0.002534"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:53.858805" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:53:53.856371" elapsed="0.002524"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.856342" elapsed="0.002587"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:53.859146" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:53.859463" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:53.859274" elapsed="0.000260"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:53.859251" elapsed="0.000316"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.859612" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:53.861879" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:53.861943" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 224 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:53.846965" elapsed="0.015010"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.864361" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:53.862780" elapsed="0.001626"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.862755" elapsed="0.001673"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.864966" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.864574" elapsed="0.000419"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.865523" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.865173" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:53.865600" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:53.865780" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:53.862289" elapsed="0.003517"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:53.865963" elapsed="0.000414"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:53.846404" elapsed="0.020035"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.874173" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:53.873860" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:53.882966" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:53.883763" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:53.884176" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:53.874331" elapsed="0.009883"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.884797" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.884438" elapsed="0.000422"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.888690" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;902000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;411000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;364000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;871000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;867000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;212000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;375000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;883000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.885061" elapsed="0.004868"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.892506" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:53.890030" elapsed="0.002543"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.890003" elapsed="0.002602"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:53.912346" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:53.912394" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:53.892800" elapsed="0.019617"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:53.914298" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:53.912495" elapsed="0.001859"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.912476" elapsed="0.001902"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:53.914430" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:53.914623" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:53.914668" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 224 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:53.873482" elapsed="0.041208"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.916825" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:53.915250" elapsed="0.001620"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.915232" elapsed="0.001660"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.917453" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.917039" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.917992" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.917644" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:53.918083" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:53.918263" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:53.914902" elapsed="0.003386"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:53.918473" elapsed="0.000382"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:53.872858" elapsed="0.046059"/>
</kw>
<arg>f101.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:53.828337" elapsed="0.090637"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:53.821358" elapsed="0.097754"/>
</test>
<test id="s1-s3-s2-t30" name="Test Is Flow 102 Added" line="106">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:53.929901" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f102.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f102.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:53.930156" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:53.929767" elapsed="0.000420"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:53.930783" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e4900&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:53.930340" elapsed="0.000471"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:53.931259" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:53.930964" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:53.931706" level="INFO">${flow_id} = 225</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:53.931438" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:53.932173" level="INFO">${flow_priority} = 102</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:53.931885" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:53.933113" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:53.932349" elapsed="0.000796"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.933632" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.933303" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.934214" level="INFO">${flow_id} = 225</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.933870" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.934765" level="INFO">${flow_priority} = 102</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.934435" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.935293" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.934959" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.935818" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.935491" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.936356" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e4900&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:53.936017" elapsed="0.000381"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:53.929442" elapsed="0.007012"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.936986" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.936606" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.939285" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;102&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;102&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.937186" elapsed="0.002167"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.946957" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:53.946659" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:53.952239" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=225?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=225?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:53.952517" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=225?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:53.952667" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:53.947129" elapsed="0.005573"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.953298" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.952922" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.956413" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.953560" elapsed="0.002965"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:53.959106" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-05-25T01:53:53.956624" elapsed="0.002575"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.956596" elapsed="0.002638"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:53.959431" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:53.959741" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:53.959556" elapsed="0.000257"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:53.959533" elapsed="0.000311"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.959888" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:53:53.962156" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:53.962219" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 225 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:53.946332" elapsed="0.015920"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.965235" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:53.963017" elapsed="0.002281"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.962992" elapsed="0.002337"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.966102" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.965533" elapsed="0.000607"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.966854" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:53.966368" elapsed="0.000511"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:53.966929" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:53.967121" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:53.962560" elapsed="0.004587"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:53.967301" elapsed="0.000378"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:53.945767" elapsed="0.021975"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.975494" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:53.975198" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:53.985693" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:53.986963" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:53.987620" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:53.975652" elapsed="0.012028"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.988628" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.988036" elapsed="0.000692"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:53.994814" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;902000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;411000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;364000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;871000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;867000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;212000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;375000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;883000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:53.989052" elapsed="0.006542"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:53.997414" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:53.995667" elapsed="0.001795"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:53.995647" elapsed="0.001837"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:54.015997" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:54.016044" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:53.997622" elapsed="0.018458"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:54.018090" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:54.016160" elapsed="0.001987"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.016141" elapsed="0.002029"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:54.018203" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:54.018395" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:54.018440" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 225 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:53.974787" elapsed="0.043675"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.020616" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:54.019029" elapsed="0.001630"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.019011" elapsed="0.001670"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.021242" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.020829" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.021785" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.021434" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:54.021861" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:54.022036" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:54.018701" elapsed="0.003361"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:54.022235" elapsed="0.000397"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:53.974144" elapsed="0.048550"/>
</kw>
<arg>f102.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:53.926189" elapsed="0.096561"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:53.919375" elapsed="0.103484"/>
</test>
<test id="s1-s3-s2-t31" name="Test Is Flow 103 Added" line="108">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:54.033672" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f103.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f103.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:54.033812" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:54.033539" elapsed="0.000302"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:54.034444" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7e660&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:54.033993" elapsed="0.000479"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:54.034926" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:54.034649" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:54.035394" level="INFO">${flow_id} = 226</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:54.035123" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:54.035841" level="INFO">${flow_priority} = 103</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:54.035570" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:54.036774" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:54.036017" elapsed="0.000788"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.037314" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.036964" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.037886" level="INFO">${flow_id} = 226</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.037559" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.038431" level="INFO">${flow_priority} = 103</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.038100" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.038955" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.038640" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.039642" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.039169" elapsed="0.000520"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.040191" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7e660&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.039849" elapsed="0.000386"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:54.033213" elapsed="0.007078"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.040824" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.040441" elapsed="0.000414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.041267" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;103&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;103&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;1&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.041008" elapsed="0.000324"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.049091" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:54.048778" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:54.054437" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=226?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=226?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:54.054651" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=226?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:54.054753" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:54.049252" elapsed="0.005529"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.055217" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.054943" elapsed="0.000320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.057462" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.055407" elapsed="0.002137"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:54.059660" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:53:54.057615" elapsed="0.002136"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.057595" elapsed="0.002190"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:54.059983" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:54.060322" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:54.060131" elapsed="0.000263"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:54.060106" elapsed="0.000320"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.060471" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:54.062747" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:54.062810" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 226 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:54.048461" elapsed="0.014381"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.065808" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:54.063614" elapsed="0.002257"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.063590" elapsed="0.002313"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.066714" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.066126" elapsed="0.000626"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.067282" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.066918" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:54.067358" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:54.067533" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:54.063154" elapsed="0.004404"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:54.067715" elapsed="0.000401"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:54.047896" elapsed="0.020285"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.075894" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:54.075601" elapsed="0.000320"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:54.084169" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:54.085498" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:54.086219" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:54.076049" elapsed="0.010236"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.087375" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.086708" elapsed="0.000780"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.094236" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;902000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;411000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;364000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;871000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;867000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;212000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;375000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;883000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.087836" elapsed="0.008103"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.097755" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:54.096014" elapsed="0.001790"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.095993" elapsed="0.001833"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:54.117641" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:54.117689" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:54.097966" elapsed="0.019747"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:54.119585" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:54.117796" elapsed="0.001844"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.117775" elapsed="0.001889"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:54.119697" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:54.119891" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:54.119935" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 226 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:54.075227" elapsed="0.044731"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.122108" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:54.120520" elapsed="0.001634"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.120501" elapsed="0.001675"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.122748" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.122324" elapsed="0.000452"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.123313" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.122940" elapsed="0.000399"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:54.123389" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:54.123566" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:54.120187" elapsed="0.003404"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:54.123747" elapsed="0.000416"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:54.074602" elapsed="0.049631"/>
</kw>
<arg>f103.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:54.029962" elapsed="0.094335"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:54.023116" elapsed="0.101290"/>
</test>
<test id="s1-s3-s2-t32" name="Test Is Flow 104 Added" line="110">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:54.135228" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f104.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f104.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:54.135361" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:54.135092" elapsed="0.000298"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:54.135956" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7fc40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:54.135542" elapsed="0.000441"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:54.136430" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:54.136152" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:54.136879" level="INFO">${flow_id} = 227</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:54.136606" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:54.137340" level="INFO">${flow_priority} = 104</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:54.137054" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:54.138231" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:54.137515" elapsed="0.000746"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.138760" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.138417" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.139341" level="INFO">${flow_id} = 227</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.138994" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.139866" level="INFO">${flow_priority} = 104</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.139535" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.140391" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.140060" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.141058" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.140588" elapsed="0.000533"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.141607" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7fc40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.141280" elapsed="0.000370"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:54.134747" elapsed="0.006959"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.142258" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.141858" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.142714" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;104&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;104&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.142442" elapsed="0.000339"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.150488" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:54.150190" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:54.155716" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=227?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=227?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:54.155914" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=227?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:54.156012" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:54.150677" elapsed="0.005360"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.156472" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.156221" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.158721" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.156658" elapsed="0.002115"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:54.160972" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:53:54.158875" elapsed="0.002187"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.158853" elapsed="0.002265"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:54.161315" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:54.161629" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:54.161441" elapsed="0.000260"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:54.161418" elapsed="0.000315"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.161778" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:53:54.164035" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:54.164117" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 227 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:54.149858" elapsed="0.014292"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.167151" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:54.164904" elapsed="0.002310"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.164879" elapsed="0.002365"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.167934" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.167448" elapsed="0.000513"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.168493" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.168141" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:54.168570" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:54.168747" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:54.164440" elapsed="0.004337"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:54.168935" elapsed="0.000399"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:54.149308" elapsed="0.020090"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.177135" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:54.176823" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:54.184300" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:54.184957" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:54.185390" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:54.177292" elapsed="0.008135"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.186004" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.185652" elapsed="0.000435"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.189898" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;902000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;411000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;364000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;871000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;867000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;212000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;375000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;883000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.186293" elapsed="0.004703"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.193555" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:54.191116" elapsed="0.002506"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.191086" elapsed="0.002568"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:54.218906" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:54.218953" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:54.193848" elapsed="0.025129"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:54.220763" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:54.219056" elapsed="0.001763"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.219036" elapsed="0.001807"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:54.220877" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:54.221180" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:54.221227" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 227 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:54.176448" elapsed="0.044802"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.223402" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:54.221798" elapsed="0.001649"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.221779" elapsed="0.001689"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.224016" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.223615" elapsed="0.000429"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.224577" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.224225" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:54.224652" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:54.224833" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:54.221465" elapsed="0.003393"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:54.225013" elapsed="0.000429"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:54.175827" elapsed="0.049678"/>
</kw>
<arg>f104.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:54.131459" elapsed="0.094103"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:54.124660" elapsed="0.101010"/>
</test>
<test id="s1-s3-s2-t33" name="Test Is Flow 105 Added" line="112">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:54.236449" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f105.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f105.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:54.236579" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:54.236316" elapsed="0.000292"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:54.237190" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ed710&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:54.236759" elapsed="0.000459"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:54.237648" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:54.237372" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:54.238110" level="INFO">${flow_id} = 228</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:54.237826" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:54.238556" level="INFO">${flow_priority} = 105</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:54.238287" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:54.239469" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:54.238741" elapsed="0.000758"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.239987" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.239655" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.240561" level="INFO">${flow_id} = 228</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.240233" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.241105" level="INFO">${flow_priority} = 105</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.240759" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.241616" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.241302" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.242146" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.241812" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.242667" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ed710&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.242344" elapsed="0.000393"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:54.235974" elapsed="0.006819"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.243342" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.242943" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.243763" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;105&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;105&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.243525" elapsed="0.000302"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.251631" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:54.251334" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:54.256814" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=228?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=228?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:54.257007" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=228?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:54.257126" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:54.251787" elapsed="0.005366"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.257564" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.257312" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.259851" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.257753" elapsed="0.002170"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:54.262513" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-05-25T01:53:54.260094" elapsed="0.002510"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.260044" elapsed="0.002594"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:54.262854" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:54.263189" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:54.262981" elapsed="0.000282"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:54.262957" elapsed="0.000338"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.263340" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:54.265586" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:54.265649" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 228 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:54.251001" elapsed="0.014679"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.268421" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:54.266457" elapsed="0.002009"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.266432" elapsed="0.002056"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.269023" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.268632" elapsed="0.000417"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.269575" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.269228" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:54.269651" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:54.269831" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:54.265976" elapsed="0.003880"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:54.270011" elapsed="0.000396"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:54.250419" elapsed="0.020051"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.278197" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:54.277886" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:54.285604" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:54.286399" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:54.286805" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:54.278354" elapsed="0.008489"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.287442" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.287084" elapsed="0.000422"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.291322" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;902000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;411000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;364000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;871000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;867000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;212000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;375000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;883000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.287706" elapsed="0.004701"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.294968" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:54.292509" elapsed="0.002527"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.292481" elapsed="0.002604"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:54.321590" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:54.321637" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:54.295282" elapsed="0.026379"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:54.323484" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:54.321741" elapsed="0.001799"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.321722" elapsed="0.001841"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:54.323597" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:54.323789" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:54.323832" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 228 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:54.277511" elapsed="0.046344"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.325983" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:54.324417" elapsed="0.001611"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.324399" elapsed="0.001651"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.326609" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.326211" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.327178" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.326810" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:54.327254" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:54.327430" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:54.324084" elapsed="0.003371"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:54.327612" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:54.276888" elapsed="0.051170"/>
</kw>
<arg>f105.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:54.232753" elapsed="0.095380"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:54.225971" elapsed="0.102271"/>
</test>
<test id="s1-s3-s2-t34" name="Test Is Flow 106 Added" line="114">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:54.339012" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f106.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f106.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:54.339159" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:54.338876" elapsed="0.000313"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:54.339753" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc771f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:54.339340" elapsed="0.000440"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:54.340228" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:54.339932" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:54.340677" level="INFO">${flow_id} = 229</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:54.340407" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:54.341137" level="INFO">${flow_priority} = 106</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:54.340852" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:54.342016" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:54.341313" elapsed="0.000732"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.342546" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.342217" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.343147" level="INFO">${flow_id} = 229</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.342799" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.343671" level="INFO">${flow_priority} = 106</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.343344" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.344192" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.343863" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.344707" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.344389" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.345237" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc771f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.344901" elapsed="0.000377"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:54.338524" elapsed="0.006809"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.345858" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.345481" elapsed="0.000406"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.346292" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;106&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;106&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.346037" elapsed="0.000319"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.355729" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:54.355432" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:54.360940" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=229?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=229?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:54.361154" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=229?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:54.361263" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:54.355885" elapsed="0.005404"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.361695" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.361446" elapsed="0.000293"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.364013" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.361885" elapsed="0.002220"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:54.366664" elapsed="0.000038"/>
</return>
<status status="PASS" start="2026-05-25T01:53:54.364247" elapsed="0.002506"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.364218" elapsed="0.002568"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:54.366997" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:54.367331" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:54.367145" elapsed="0.000258"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:54.367120" elapsed="0.000315"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.367480" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:54.369725" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:54.369787" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 229 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:54.355115" elapsed="0.014704"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.372678" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:54.370591" elapsed="0.002132"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.370567" elapsed="0.002178"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.373305" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.372890" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.373847" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.373493" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:54.373922" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:54.374120" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:54.370132" elapsed="0.004014"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:54.374301" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:54.354521" elapsed="0.020223"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.382442" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:54.382145" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:54.389650" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:54.390449" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:54.390862" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:54.382599" elapsed="0.008306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.391512" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.391157" elapsed="0.000418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.442803" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;902000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;411000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;364000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;871000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;867000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;212000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;375000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;883000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.391774" elapsed="0.051909"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.445589" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:54.443792" elapsed="0.001851"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.443762" elapsed="0.001904"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:54.470643" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:54.470690" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:54.445859" elapsed="0.024855"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:54.472524" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:54.470797" elapsed="0.001783"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.470773" elapsed="0.001831"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:54.472637" elapsed="0.000034"/>
</return>
<msg time="2026-05-25T01:53:54.472847" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:54.472892" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 229 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:54.381757" elapsed="0.091158"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.475133" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:54.473523" elapsed="0.001656"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.473505" elapsed="0.001696"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.475804" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.475352" elapsed="0.000479"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.476363" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.475993" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:54.476438" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:54.476617" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:54.473173" elapsed="0.003469"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:54.476800" elapsed="0.000415"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:54.381152" elapsed="0.096125"/>
</kw>
<arg>f106.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:54.335301" elapsed="0.142033"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:54.328485" elapsed="0.148971"/>
</test>
<test id="s1-s3-s2-t35" name="Test Is Flow 107 Added" line="116">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:54.488367" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f107.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f107.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:54.488533" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:54.488224" elapsed="0.000337"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:54.489165" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ec7c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:54.488713" elapsed="0.000480"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:54.489626" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:54.489347" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:54.490087" level="INFO">${flow_id} = 230</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:54.489804" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:54.490533" level="INFO">${flow_priority} = 107</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:54.490265" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:54.491551" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:54.490709" elapsed="0.000872"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.492245" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.491737" elapsed="0.000551"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.492824" level="INFO">${flow_id} = 230</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.492490" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.493366" level="INFO">${flow_priority} = 107</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.493020" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.493876" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.493561" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.494409" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.494088" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.494939" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ec7c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.494606" elapsed="0.000378"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:54.487877" elapsed="0.007163"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.495587" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.495206" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.496010" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;107&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;107&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.495769" elapsed="0.000322"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.503719" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:54.503409" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:54.509829" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=230?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=230?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:54.510132" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=230?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:54.510272" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:54.503877" elapsed="0.006429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.510882" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.510528" elapsed="0.000438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.514009" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.511189" elapsed="0.002954"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:54.516678" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:53:54.514245" elapsed="0.002523"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.514216" elapsed="0.002587"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:54.517007" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:54.517348" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:54.517159" elapsed="0.000261"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:54.517135" elapsed="0.000317"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.517496" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:53:54.519775" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:54.519825" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 230 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:54.503092" elapsed="0.016756"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.521976" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:54.520407" elapsed="0.001613"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.520389" elapsed="0.001654"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.522600" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.522205" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.523168" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.522789" elapsed="0.000405"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:54.523245" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:54.523421" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:54.520057" elapsed="0.003389"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:54.523602" elapsed="0.000385"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:54.502506" elapsed="0.021546"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.531788" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:54.531491" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:54.539037" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:54.539840" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:54.540262" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:54.531946" elapsed="0.008354"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.541120" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.540522" elapsed="0.000665"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.544768" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;902000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;411000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;364000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;871000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;867000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;212000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;375000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;883000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.541392" elapsed="0.004463"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.548410" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:54.545956" elapsed="0.002521"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.545928" elapsed="0.002581"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:54.576459" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:54.576507" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:54.548700" elapsed="0.027831"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:54.578315" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:54.576610" elapsed="0.001763"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.576590" elapsed="0.001810"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:54.578435" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:53:54.578635" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:54.578680" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 230 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:54.531118" elapsed="0.047585"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.580904" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:54.579350" elapsed="0.001600"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.579331" elapsed="0.001640"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.581532" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.581132" elapsed="0.000427"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.582091" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.581722" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:54.582168" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:54.582346" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:54.578946" elapsed="0.003425"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:54.582528" elapsed="0.000383"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:54.530473" elapsed="0.052500"/>
</kw>
<arg>f107.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:54.484637" elapsed="0.098446"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:54.477785" elapsed="0.105422"/>
</test>
<test id="s1-s3-s2-t36" name="Test Is Flow 108 Added" line="118">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:54.593994" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f108.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f108.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:54.594146" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:54.593856" elapsed="0.000319"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:54.594755" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3077e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:54.594326" elapsed="0.000456"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:54.595261" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:54.594934" elapsed="0.000354"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:54.595710" level="INFO">${flow_id} = 231</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:54.595440" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:54.596171" level="INFO">${flow_priority} = 108</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:54.595884" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:54.597113" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:54.596346" elapsed="0.000799"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.597631" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.597302" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.598205" level="INFO">${flow_id} = 231</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.597863" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.598744" level="INFO">${flow_priority} = 108</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.598402" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.599290" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.598939" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.599804" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.599487" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.600492" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3077e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.599999" elapsed="0.000536"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:54.593520" elapsed="0.007071"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.601144" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.600744" elapsed="0.000431"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.601569" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;108&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;108&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.601328" elapsed="0.000307"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.609254" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:54.608940" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:54.614624" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=231?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=231?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:54.614823" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=231?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:54.614919" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:54.609411" elapsed="0.005533"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.615389" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.615138" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.617600" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.615578" elapsed="0.002104"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:54.619524" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-05-25T01:53:54.617754" elapsed="0.001835"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.617734" elapsed="0.001879"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:54.619755" elapsed="0.000025"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:54.619984" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:54.619850" elapsed="0.000185"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:54.619834" elapsed="0.000224"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.620107" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:53:54.621707" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:54.621752" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 231 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:54.608624" elapsed="0.013151"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.623902" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:54.622327" elapsed="0.001620"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.622309" elapsed="0.001660"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.624526" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.624132" elapsed="0.000420"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.625061" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.624715" elapsed="0.000387"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:54.625154" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:54.625332" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:54.621982" elapsed="0.003374"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:54.625512" elapsed="0.000379"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:54.608062" elapsed="0.017893"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.633652" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:54.633359" elapsed="0.000320"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:54.641003" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:54.641575" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:54.641856" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:54.633809" elapsed="0.008073"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.642314" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.642042" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.645099" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;902000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;411000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;364000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;871000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;867000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;212000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;375000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;883000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.642505" elapsed="0.003360"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.647685" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:54.645937" elapsed="0.001796"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.645917" elapsed="0.001838"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:54.674160" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:54.674209" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:54.647899" elapsed="0.026334"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:54.676037" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:54.674313" elapsed="0.001795"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.674293" elapsed="0.001839"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:54.676166" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:54.676361" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:54.676406" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 231 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:54.632968" elapsed="0.043461"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.678556" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:54.676974" elapsed="0.001626"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.676955" elapsed="0.001667"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.679192" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.678770" elapsed="0.000451"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.679736" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.679385" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:54.679813" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:54.679989" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:54.676642" elapsed="0.003373"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:54.680188" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:54.632361" elapsed="0.048274"/>
</kw>
<arg>f108.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:54.590264" elapsed="0.090427"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:54.583470" elapsed="0.097330"/>
</test>
<test id="s1-s3-s2-t37" name="Test Is Flow 109 Added" line="120">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:54.691646" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f109.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f109.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:54.691778" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:54.691512" elapsed="0.000295"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:54.692401" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35a0c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:54.691958" elapsed="0.000471"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:54.692857" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:54.692580" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:54.693320" level="INFO">${flow_id} = 232</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:54.693033" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:54.693764" level="INFO">${flow_priority} = 109</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:54.693494" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:54.694711" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:54.693938" elapsed="0.000804"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.695253" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.694898" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.695814" level="INFO">${flow_id} = 232</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.695488" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.696356" level="INFO">${flow_priority} = 109</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.696009" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.696863" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.696550" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.697395" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.697060" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.698095" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35a0c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.697593" elapsed="0.000546"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:54.691185" elapsed="0.007011"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.698755" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.698350" elapsed="0.000435"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.699224" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;109&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;109&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.698937" elapsed="0.000354"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.706918" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:54.706622" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:54.712266" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=232?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=232?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:54.712461" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=232?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:54.712560" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:54.707115" elapsed="0.005470"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.713000" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.712744" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.715273" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.713210" elapsed="0.002146"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:54.717173" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-05-25T01:53:54.715428" elapsed="0.001810"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.715408" elapsed="0.001854"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:54.717403" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:54.717629" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:54.717494" elapsed="0.000187"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:54.717478" elapsed="0.000226"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.717736" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:53:54.719366" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:54.719411" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 232 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:54.706299" elapsed="0.013135"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.721550" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:54.719978" elapsed="0.001616"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.719960" elapsed="0.001656"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.722173" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.721762" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.722710" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.722362" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:54.722784" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:54.722960" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:54.719641" elapsed="0.003343"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:54.723178" elapsed="0.000384"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:54.705737" elapsed="0.017890"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.731384" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:54.731029" elapsed="0.000382"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:54.738797" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:54.739394" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:54.739677" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:54.731545" elapsed="0.008160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.740139" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.739864" elapsed="0.000321"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.742890" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;902000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;411000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;364000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;871000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;867000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;212000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;375000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;883000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.740330" elapsed="0.003347"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.745508" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:54.743750" elapsed="0.001806"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.743730" elapsed="0.001848"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:54.769954" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:54.770002" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:54.745717" elapsed="0.024309"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:54.771837" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:54.770118" elapsed="0.001774"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.770098" elapsed="0.001818"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:54.771951" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:54.772161" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:54.772205" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 232 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:54.730656" elapsed="0.041572"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.774351" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:54.772769" elapsed="0.001626"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.772751" elapsed="0.001666"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.774959" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.774562" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.775526" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.775174" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:54.775601" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:54.775777" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:54.772440" elapsed="0.003362"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:54.775957" elapsed="0.000403"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:54.730029" elapsed="0.046393"/>
</kw>
<arg>f109.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:54.687909" elapsed="0.088570"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:54.681046" elapsed="0.095543"/>
</test>
<test id="s1-s3-s2-t38" name="Test Is Flow 110 Added" line="122">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:54.787835" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f110.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f110.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:54.787966" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:54.787699" elapsed="0.000295"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:54.788577" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4c3420&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:54.788162" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:54.789037" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:54.788757" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:54.789502" level="INFO">${flow_id} = 233</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:54.789231" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:54.789946" level="INFO">${flow_priority} = 110</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:54.789677" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:54.790810" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:54.790135" elapsed="0.000705"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.791357" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.790996" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.791923" level="INFO">${flow_id} = 233</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.791597" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.792462" level="INFO">${flow_priority} = 110</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.792133" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.792973" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.792654" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.793517" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.793196" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.794032" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4c3420&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.793714" elapsed="0.000374"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:54.787370" elapsed="0.006775"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.794672" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cooki...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.794295" elapsed="0.000407"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.795106" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;110&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;110&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;push-vlan-action&gt;
                        &lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;
                        &lt;vlan-id&gt;1234&lt;/vlan-id&gt;
                    &lt;/push-vlan-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.794852" elapsed="0.000344"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.802989" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:54.802690" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:54.808804" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=233?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=233?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:54.809002" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=233?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:54.809119" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:54.803162" elapsed="0.005984"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.809554" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.809304" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.811822" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.809739" elapsed="0.002134"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:54.813689" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-05-25T01:53:54.811942" elapsed="0.001842"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.811922" elapsed="0.001891"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:54.813956" elapsed="0.000023"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:54.814200" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:54.814049" elapsed="0.000203"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:54.814032" elapsed="0.000242"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.814306" elapsed="0.000015"/>
</return>
<msg time="2026-05-25T01:53:54.815940" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:54.815985" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 233 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:54.802375" elapsed="0.013634"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.818153" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:54.816559" elapsed="0.001639"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.816541" elapsed="0.001679"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.818755" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.818365" elapsed="0.000417"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.819349" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.818943" elapsed="0.000432"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:54.819425" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:54.819602" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:54.816231" elapsed="0.003396"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:54.819782" elapsed="0.000396"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:54.801808" elapsed="0.018434"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.827979" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:54.827684" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:54.838506" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:54.839059" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:54.839376" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:54.828151" elapsed="0.011251"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.839821" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.839561" elapsed="0.000305"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.844299" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;902000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;411000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;364000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;871000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;867000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;212000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;375000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;883000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.840008" elapsed="0.005074"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.846886" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:54.845157" elapsed="0.001777"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.845136" elapsed="0.001820"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:54.871122" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:54.871171" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:54.847108" elapsed="0.024088"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:54.872998" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:54.871296" elapsed="0.001758"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.871276" elapsed="0.001816"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:54.873127" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:54.873321" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:54.873365" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 233 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:54.827307" elapsed="0.046080"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.875541" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:54.873930" elapsed="0.001656"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.873911" elapsed="0.001697"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.876168" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.875753" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.876706" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.876357" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:54.876780" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:54.876955" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:54.873599" elapsed="0.003381"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:54.877153" elapsed="0.000383"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:54.826661" elapsed="0.050938"/>
</kw>
<arg>f110.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:54.784119" elapsed="0.093536"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:54.777026" elapsed="0.100738"/>
</test>
<test id="s1-s3-s2-t39" name="Test Is Flow 113 Added" line="124">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:54.888738" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f113.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f113.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:54.888870" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:54.888603" elapsed="0.000296"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:54.889502" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4da980&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:54.889079" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:54.889959" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:54.889682" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:54.890423" level="INFO">${flow_id} = 236</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:54.890153" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:54.890865" level="INFO">${flow_priority} = 113</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:54.890597" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:54.891818" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:54.891039" elapsed="0.000810"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.892355" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.892005" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.892923" level="INFO">${flow_id} = 236</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.892594" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.893464" level="INFO">${flow_priority} = 113</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.893133" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.893978" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.893658" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.894509" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.894189" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.895025" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4da980&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.894705" elapsed="0.000374"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:54.888276" elapsed="0.006861"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.895697" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cooki...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.895315" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.896135" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;113&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;113&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;push-mpls-action&gt;
                        &lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;
                    &lt;/push-mpls-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.895878" elapsed="0.000322"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.904018" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:54.903719" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:54.909915" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=236?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=236?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:54.910131" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=236?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:54.910232" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:54.904193" elapsed="0.006064"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.910669" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.910416" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.912971" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.910864" elapsed="0.002190"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:54.914916" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-05-25T01:53:54.913143" elapsed="0.001838"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.913122" elapsed="0.001884"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:54.915164" elapsed="0.000023"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:54.915406" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:54.915257" elapsed="0.000203"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:54.915240" elapsed="0.000243"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.915515" elapsed="0.000015"/>
</return>
<msg time="2026-05-25T01:53:54.917170" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:54.917215" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 236 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:54.903403" elapsed="0.013836"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.919427" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:54.917780" elapsed="0.001692"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.917762" elapsed="0.001733"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.920043" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.919641" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.920606" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.920252" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:54.920686" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:54.920864" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:54.917447" elapsed="0.003442"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:54.921047" elapsed="0.000404"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:54.902814" elapsed="0.018701"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.929415" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:54.929117" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:54.938692" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:54.939271" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:54.939571" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:54.929573" elapsed="0.010025"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.940009" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.939757" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.942760" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;902000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;411000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;364000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;871000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;867000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;212000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;375000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;883000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.940214" elapsed="0.003333"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.945381" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:54.943620" elapsed="0.001809"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.943600" elapsed="0.001851"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:54.971607" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:54.971655" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:54.945589" elapsed="0.026089"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:54.973461" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:54.971755" elapsed="0.001763"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.971736" elapsed="0.001806"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:54.973575" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:54.973874" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:54.973918" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 236 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:54.928725" elapsed="0.045216"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:54.976083" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:54.974498" elapsed="0.001632"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:54.974480" elapsed="0.001671"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.976694" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.976299" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.977258" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.976883" elapsed="0.000400"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:54.977334" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:54.977509" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:54.974169" elapsed="0.003364"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:54.977690" elapsed="0.000396"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:54.928115" elapsed="0.050036"/>
</kw>
<arg>f113.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:54.885011" elapsed="0.093196"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:54.878129" elapsed="0.100185"/>
</test>
<test id="s1-s3-s2-t40" name="Test Is Flow 201 Added" line="126">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:54.989114" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f201.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f201.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:54.989244" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:54.988966" elapsed="0.000307"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:54.989831" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5accb76b60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:54.989424" elapsed="0.000435"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:54.990313" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:54.990011" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:54.990762" level="INFO">${flow_id} = 324</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:54.990492" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:54.991224" level="INFO">${flow_priority} = 201</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:54.990938" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:54.992109" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:54.991411" elapsed="0.000730"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.992628" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.992300" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.993209" level="INFO">${flow_id} = 324</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.992866" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.993736" level="INFO">${flow_priority} = 201</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.993406" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.994258" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.993931" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.994786" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.994464" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.995320" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5accb76b60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:54.994983" elapsed="0.000408"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:54.988639" elapsed="0.006809"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.995977" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cook...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:54.995599" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:54.996413" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;201&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;201&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:54.996174" elapsed="0.000301"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.004392" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:55.004091" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:55.010251" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=324?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=324?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:55.010605" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=324?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:55.010785" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:55.004549" elapsed="0.006273"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.011255" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.010981" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.013507" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.011474" elapsed="0.002084"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:55.015370" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-05-25T01:53:55.013627" elapsed="0.001839"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.013607" elapsed="0.001885"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:55.015633" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:55.015858" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:55.015723" elapsed="0.000186"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:55.015707" elapsed="0.000225"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.015964" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:53:55.017589" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:55.017633" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 324 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:55.003713" elapsed="0.013942"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.019804" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:55.018207" elapsed="0.001642"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.018189" elapsed="0.001682"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.020432" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.020018" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.020972" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.020623" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:55.021048" elapsed="0.000043"/>
</return>
<msg time="2026-05-25T01:53:55.021243" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:55.017861" elapsed="0.003407"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:55.021424" elapsed="0.000379"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:55.003076" elapsed="0.018791"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.029600" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:55.029302" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:55.040728" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:55.041298" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:55.041584" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:55.029757" elapsed="0.011853"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.042026" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.041770" elapsed="0.000317"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.044815" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;902000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;411000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;364000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;871000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;867000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;212000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;375000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;883000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.042233" elapsed="0.003359"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.047418" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:55.045665" elapsed="0.001801"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.045645" elapsed="0.001844"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:55.072889" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:55.072937" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:55.047627" elapsed="0.025334"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:55.074904" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:55.073039" elapsed="0.001920"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.073020" elapsed="0.001964"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:55.075017" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:55.075226" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:55.075270" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 324 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:55.028909" elapsed="0.046384"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.077445" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:55.075864" elapsed="0.001625"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.075846" elapsed="0.001665"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.078055" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.077657" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.078612" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.078262" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:55.078687" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:55.078863" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:55.075534" elapsed="0.003354"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:55.079043" elapsed="0.000411"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:55.028300" elapsed="0.051217"/>
</kw>
<arg>f201.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:54.985379" elapsed="0.094194"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:54.978495" elapsed="0.101185"/>
</test>
<test id="s1-s3-s2-t41" name="Test Is Flow 202 Added" line="128">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:55.090505" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f202.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f202.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:55.090634" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:55.090370" elapsed="0.000293"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:55.091237" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc093ce0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:55.090813" elapsed="0.000452"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:55.091724" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:55.091417" elapsed="0.000334"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:55.092193" level="INFO">${flow_id} = 325</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:55.091901" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:55.092636" level="INFO">${flow_priority} = 202</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:55.092368" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:55.093505" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:55.092809" elapsed="0.000727"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.094018" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.093690" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.094591" level="INFO">${flow_id} = 325</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.094267" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.095129" level="INFO">${flow_priority} = 202</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.094786" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.095652" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.095324" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.096182" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.095849" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.096701" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc093ce0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.096381" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:55.090032" elapsed="0.006763"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.097338" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cook...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.096944" elapsed="0.000424"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.097755" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;202&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;202&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.097519" elapsed="0.000298"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.105619" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:55.105324" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:55.112052" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=325?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=325?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:55.112263" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=325?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:55.112360" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:55.105775" elapsed="0.006610"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.112867" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.112542" elapsed="0.000370"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.115121" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.113060" elapsed="0.002113"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:55.116999" elapsed="0.000027"/>
</return>
<status status="PASS" start="2026-05-25T01:53:55.115243" elapsed="0.001873"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.115223" elapsed="0.001920"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:55.117286" elapsed="0.000023"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:55.117512" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:55.117378" elapsed="0.000186"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:55.117361" elapsed="0.000226"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.117618" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:53:55.119241" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:55.119286" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 325 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:55.104994" elapsed="0.014314"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.121441" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:55.119863" elapsed="0.001623"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.119845" elapsed="0.001662"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.122047" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.121653" elapsed="0.000435"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.122599" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.122252" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:55.122674" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:55.122850" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:55.119531" elapsed="0.003344"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:55.123030" elapsed="0.000399"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:55.104444" elapsed="0.019077"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.131210" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:55.130897" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:55.139390" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:55.139979" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:55.140277" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:55.131367" elapsed="0.008937"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.140716" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.140465" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.143461" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;387000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;887000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;386000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;891000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;904000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;394000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;905000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;902000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;411000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;908000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;914000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;372000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;874000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;917000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;364000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;420000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;864000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;418000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;860000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;921000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;370000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;871000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;366000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;867000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;923000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;886000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;212000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;374000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;882000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;378000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;877000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;375000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;883000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;384000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;881000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;383000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.140911" elapsed="0.003349"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.146086" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:55.144332" elapsed="0.001805"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.144313" elapsed="0.001846"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:55.170087" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:55.170137" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:55.146300" elapsed="0.023861"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:55.171946" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:55.170241" elapsed="0.001761"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.170221" elapsed="0.001805"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:55.172059" elapsed="0.000044"/>
</return>
<msg time="2026-05-25T01:53:55.172273" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:55.172318" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 325 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:55.130520" elapsed="0.041822"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.174470" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:55.172890" elapsed="0.001626"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.172872" elapsed="0.001666"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.175103" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.174686" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.175675" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.175295" elapsed="0.000405"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:55.175751" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:55.175928" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:55.172556" elapsed="0.003397"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:55.176125" elapsed="0.000390"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:55.129899" elapsed="0.046680"/>
</kw>
<arg>f202.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:55.086760" elapsed="0.089876"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:55.079870" elapsed="0.096875"/>
</test>
<test id="s1-s3-s2-t42" name="Test Is Flow 203 Added" line="130">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:55.187558" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f203.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f203.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:55.187695" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:55.187406" elapsed="0.000318"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:55.188300" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1c6d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:55.187873" elapsed="0.000455"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:55.188756" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:55.188481" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:55.189221" level="INFO">${flow_id} = 326</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:55.188934" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:55.189665" level="INFO">${flow_priority} = 203</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:55.189397" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:55.190538" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:55.189839" elapsed="0.000730"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.191060" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.190724" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.191656" level="INFO">${flow_id} = 326</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.191308" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.192195" level="INFO">${flow_priority} = 203</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.191852" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.192704" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.192390" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.193241" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.192905" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.193757" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1c6d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.193437" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:55.187061" elapsed="0.006791"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.194392" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cook...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.194000" elapsed="0.000423"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.194808" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;203&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;203&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.194572" elapsed="0.000298"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.202678" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:55.202381" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:55.209053" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=326?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=326?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:55.209267" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=326?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:55.209366" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:55.202833" elapsed="0.006558"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.209799" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.209549" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.212042" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.209985" elapsed="0.002124"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:55.213902" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-05-25T01:53:55.212178" elapsed="0.001818"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.212159" elapsed="0.001864"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:55.214179" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:55.214404" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:55.214270" elapsed="0.000186"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:55.214254" elapsed="0.000224"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.214510" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:53:55.216138" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:55.216182" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 326 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:55.202050" elapsed="0.014155"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.218325" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:55.216745" elapsed="0.001625"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.216727" elapsed="0.001665"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.218933" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.218538" elapsed="0.000421"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.219485" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.219137" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:55.219585" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:53:55.219767" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:55.216413" elapsed="0.003379"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:55.219949" elapsed="0.000399"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:55.201497" elapsed="0.018914"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.228171" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:55.227852" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:55.238304" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:55.243671" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;920000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;933000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;934000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:55.243970" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:55.228329" elapsed="0.015669"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.244438" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.244181" elapsed="0.000303"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.247000" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;920000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;933000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;934000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;931000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;440000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;937000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;441000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;944000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;401000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;445000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;952000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;399000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;900000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;395000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;32&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;32&lt;/second&gt;&lt;nanosecond&gt;952000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;33&lt;/second&gt;&lt;nanosecond&gt;241000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;912000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.244629" elapsed="0.003165"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.249609" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:55.247868" elapsed="0.001790"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.247848" elapsed="0.001832"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:55.270816" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:55.270862" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:55.249819" elapsed="0.021067"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:55.272687" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:55.270963" elapsed="0.001781"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.270944" elapsed="0.001824"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:55.272801" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:55.272994" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:55.273038" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 326 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:55.227449" elapsed="0.045612"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.275202" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:55.273623" elapsed="0.001624"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.273605" elapsed="0.001664"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.275828" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.275414" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.276389" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.276018" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:55.276465" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:55.276644" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:55.273291" elapsed="0.003378"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:55.276825" elapsed="0.000399"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:55.226827" elapsed="0.050460"/>
</kw>
<arg>f203.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:55.183719" elapsed="0.093624"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:55.176916" elapsed="0.100533"/>
</test>
<test id="s1-s3-s2-t43" name="Test Is Flow 204 Added" line="132">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:55.288240" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f204.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f204.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:55.288378" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:55.288103" elapsed="0.000304"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:55.288977" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1e5c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:55.288558" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:55.289453" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:55.289174" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:55.289899" level="INFO">${flow_id} = 327</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:55.289630" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:55.290363" level="INFO">${flow_priority} = 204</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:55.290092" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:55.291234" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:55.290539" elapsed="0.000725"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.291760" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.291418" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.292344" level="INFO">${flow_id} = 327</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.292000" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.292863" level="INFO">${flow_priority} = 204</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.292537" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.293386" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.293055" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.293897" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.293580" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.294430" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1e5c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.294107" elapsed="0.000364"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:55.287762" elapsed="0.006764"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.295052" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cook...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.294675" elapsed="0.000422"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.295486" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;204&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;204&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.295249" elapsed="0.000299"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.303391" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:55.303092" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:55.310268" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=327?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=327?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:55.310458" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=327?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:55.310557" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:55.303547" elapsed="0.007035"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.310996" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.310740" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.313250" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.311201" elapsed="0.002100"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:55.315090" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-05-25T01:53:55.313369" elapsed="0.001847"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.313350" elapsed="0.001893"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:55.315385" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:55.315610" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:55.315476" elapsed="0.000199"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:55.315459" elapsed="0.000241"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.315732" elapsed="0.000015"/>
</return>
<msg time="2026-05-25T01:53:55.317351" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:55.317395" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 327 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:55.302764" elapsed="0.014654"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.319530" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:55.317954" elapsed="0.001621"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.317936" elapsed="0.001661"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.320184" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.319771" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.320718" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.320372" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:55.320793" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:55.320969" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:55.317626" elapsed="0.003368"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:55.321165" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:55.302210" elapsed="0.019400"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.329275" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:55.328964" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:55.339938" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:55.340491" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;920000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;933000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;934000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:55.340772" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:55.329430" elapsed="0.011372"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.341233" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.340962" elapsed="0.000317"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.343971" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;920000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;933000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;934000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;931000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;440000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;937000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;441000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;944000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;401000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;445000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;952000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;399000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;900000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;395000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;32&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;32&lt;/second&gt;&lt;nanosecond&gt;952000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;33&lt;/second&gt;&lt;nanosecond&gt;241000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;912000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.341422" elapsed="0.003328"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.346564" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:55.344822" elapsed="0.001790"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.344802" elapsed="0.001832"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:55.369204" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:55.369252" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:55.346772" elapsed="0.022504"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:55.371049" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:55.369355" elapsed="0.001764"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.369335" elapsed="0.001809"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:55.371177" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:55.371372" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:55.371416" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 327 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:55.328590" elapsed="0.042849"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.373595" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:55.372011" elapsed="0.001629"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.371992" elapsed="0.001670"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.374221" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.373808" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.374759" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.374411" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:55.374834" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:55.375010" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:55.371651" elapsed="0.003385"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:55.375209" elapsed="0.000382"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:55.327968" elapsed="0.047686"/>
</kw>
<arg>f204.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:55.284511" elapsed="0.091213"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:55.277693" elapsed="0.098138"/>
</test>
<test id="s1-s3-s2-t44" name="Test Is Flow 205 Added" line="134">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:55.386590" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f205.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f205.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:55.386718" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:55.386441" elapsed="0.000306"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:55.387336" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc093ec0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:55.386903" elapsed="0.000461"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:55.387828" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:55.387518" elapsed="0.000337"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:55.388295" level="INFO">${flow_id} = 328</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:55.388007" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:55.388738" level="INFO">${flow_priority} = 205</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:55.388471" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:55.389660" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:55.388912" elapsed="0.000778"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.390189" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.389844" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.390750" level="INFO">${flow_id} = 328</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.390425" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.391288" level="INFO">${flow_priority} = 205</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.390944" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.391808" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.391481" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.392343" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.392003" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.392858" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc093ec0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.392539" elapsed="0.000360"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:55.386114" elapsed="0.006840"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.393496" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.393118" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.394090" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;328&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;205&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;
    &lt;priority&gt;205&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.393676" elapsed="0.000484"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.401794" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:55.401501" elapsed="0.000320"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:55.407130" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=328?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=328?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:55.407323" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=328?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:55.407420" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:55.401950" elapsed="0.005495"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.407876" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.407603" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.410110" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.408064" elapsed="0.002098"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:55.412017" elapsed="0.000027"/>
</return>
<status status="PASS" start="2026-05-25T01:53:55.410263" elapsed="0.001833"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.410242" elapsed="0.001880"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:55.412264" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:55.412487" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:55.412354" elapsed="0.000183"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:55.412338" elapsed="0.000222"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.412592" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:53:55.414201" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:55.414246" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 328 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:55.401186" elapsed="0.013083"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.416390" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:55.414805" elapsed="0.001629"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.414787" elapsed="0.001669"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.416998" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.416600" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.417552" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.417202" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:55.417628" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:55.417804" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:55.414475" elapsed="0.003354"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:55.417983" elapsed="0.000399"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:55.400614" elapsed="0.017833"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.426176" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:55.425865" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:55.436320" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:55.436853" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;920000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;933000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;934000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:55.437155" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:55.426333" elapsed="0.010848"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.437590" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.437340" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.440356" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;920000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;933000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;934000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;931000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;440000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;937000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;441000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;944000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;401000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;445000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;952000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;399000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;900000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;395000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;32&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;32&lt;/second&gt;&lt;nanosecond&gt;952000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;33&lt;/second&gt;&lt;nanosecond&gt;241000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;912000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.437778" elapsed="0.003352"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.442944" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:55.441204" elapsed="0.001789"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.441183" elapsed="0.001832"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:55.466876" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:55.466922" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:55.443170" elapsed="0.023776"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:55.468733" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:55.467025" elapsed="0.001764"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.467005" elapsed="0.001808"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:55.468846" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:55.469040" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:55.469099" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 328 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:55.425493" elapsed="0.043631"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.471244" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:55.469664" elapsed="0.001624"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.469645" elapsed="0.001665"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.471886" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.471460" elapsed="0.000453"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.472444" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.472090" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:55.472519" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:55.472696" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:55.469335" elapsed="0.003386"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:55.472876" elapsed="0.000403"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:55.424873" elapsed="0.048469"/>
</kw>
<arg>f205.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:55.382875" elapsed="0.090524"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:55.376084" elapsed="0.097421"/>
</test>
<test id="s1-s3-s2-t45" name="Test Is Flow 206 Added" line="136">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:55.485122" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f206.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f206.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:55.485302" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:55.484965" elapsed="0.000366"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:55.485947" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7e660&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:55.485495" elapsed="0.000479"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:55.486427" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:55.486144" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:55.486878" level="INFO">${flow_id} = 329</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:55.486604" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:55.487337" level="INFO">${flow_priority} = 206</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:55.487053" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:55.488298" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:55.487512" elapsed="0.000816"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.488814" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.488484" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.489419" level="INFO">${flow_id} = 329</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.489088" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.489949" level="INFO">${flow_priority} = 206</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.489616" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.490473" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.490157" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.490988" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.490669" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.491675" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7e660&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.491200" elapsed="0.000518"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:55.484488" elapsed="0.007305"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.492356" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.491947" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.492784" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;329&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;206&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;
    &lt;priority&gt;206&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.492541" elapsed="0.000315"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.500452" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:55.500155" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:55.505544" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=329?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=329?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:55.505737" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=329?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:55.505835" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:55.500608" elapsed="0.005252"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.506292" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.506017" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.508534" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.506479" elapsed="0.002105"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:55.510433" elapsed="0.000027"/>
</return>
<status status="PASS" start="2026-05-25T01:53:55.508691" elapsed="0.001806"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.508670" elapsed="0.001851"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:55.510663" elapsed="0.000021"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:55.510887" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:55.510753" elapsed="0.000184"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:55.510736" elapsed="0.000224"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.510992" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:53:55.512628" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:55.512673" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 329 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:55.499826" elapsed="0.012869"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.514804" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:55.513248" elapsed="0.001601"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.513229" elapsed="0.001642"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.515426" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.515017" elapsed="0.000436"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.516008" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.515629" elapsed="0.000404"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:55.516099" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:53:55.516279" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:55.512902" elapsed="0.003402"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:55.516459" elapsed="0.000379"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:55.499263" elapsed="0.017638"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.524628" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:55.524332" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:55.561101" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:55.561637" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;920000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;933000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;934000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:55.561936" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:55.524783" elapsed="0.037180"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.562391" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.562138" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.565127" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;920000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;933000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;934000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;931000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;440000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;937000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;441000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;944000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;401000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;445000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;952000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;399000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;900000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;395000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;32&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;32&lt;/second&gt;&lt;nanosecond&gt;952000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;33&lt;/second&gt;&lt;nanosecond&gt;241000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;912000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.562578" elapsed="0.003315"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.567714" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:55.565965" elapsed="0.001797"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.565945" elapsed="0.001840"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:55.590896" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:55.590945" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:55.567958" elapsed="0.023011"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:55.592773" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:55.591049" elapsed="0.001781"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.591029" elapsed="0.001826"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:55.592888" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:55.593101" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:55.593147" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 329 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:55.523940" elapsed="0.069230"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.595297" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:55.593713" elapsed="0.001628"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.593695" elapsed="0.001668"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.595920" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.595510" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.596480" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.596127" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:55.596556" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:55.596732" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:55.593383" elapsed="0.003373"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:55.596911" elapsed="0.000398"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:55.523321" elapsed="0.074051"/>
</kw>
<arg>f206.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:55.480587" elapsed="0.116842"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:55.473745" elapsed="0.123793"/>
</test>
<test id="s1-s3-s2-t46" name="Test Is Flow 209 Added" line="138">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:55.608547" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f209.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f209.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:55.608679" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;co...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:55.608412" elapsed="0.000295"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:55.609296" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6a4d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:55.608864" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:55.609753" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:55.609476" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:55.610216" level="INFO">${flow_id} = 332</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:55.609931" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:55.610659" level="INFO">${flow_priority} = 209</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:55.610391" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:55.611554" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/co...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:55.610834" elapsed="0.000751"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.612103" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.611741" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.612660" level="INFO">${flow_id} = 332</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.612335" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.613200" level="INFO">${flow_priority} = 209</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.612859" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.613711" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;co...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.613396" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.614242" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/co...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.613908" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.614758" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6a4d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.614439" elapsed="0.000360"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:55.608062" elapsed="0.006792"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.615401" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;co...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.615006" elapsed="0.000425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.616034" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;209&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;209&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tunnel&gt;
                            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;
                        &lt;/tunnel&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.615582" elapsed="0.000535"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.623700" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:55.623404" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:55.632431" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=332?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=332?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:55.632793" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=332?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:55.632962" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:55.623856" elapsed="0.009137"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.633420" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.633169" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.635632" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.633606" elapsed="0.002077"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:55.637562" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-05-25T01:53:55.635783" elapsed="0.001843"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.635762" elapsed="0.001889"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:55.637791" elapsed="0.000026"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:55.638019" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:55.637886" elapsed="0.000198"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:55.637869" elapsed="0.000239"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.638141" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:53:55.639740" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:55.639785" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 332 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:55.623084" elapsed="0.016724"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.641954" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:55.640377" elapsed="0.001622"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.640360" elapsed="0.001661"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.642574" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.642181" elapsed="0.000420"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.643124" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.642761" elapsed="0.000389"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:55.643200" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:55.643376" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:55.640035" elapsed="0.003366"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:55.643554" elapsed="0.000414"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:55.622518" elapsed="0.021513"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.651772" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:55.651478" elapsed="0.000320"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:55.662581" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:55.663132" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;920000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;933000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;934000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:55.663415" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:55.651953" elapsed="0.011489"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.663858" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.663599" elapsed="0.000304"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.668236" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;920000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;933000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;934000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;931000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;440000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;937000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;441000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;944000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;401000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;445000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;952000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;399000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;900000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;395000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;32&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;32&lt;/second&gt;&lt;nanosecond&gt;952000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;33&lt;/second&gt;&lt;nanosecond&gt;241000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;912000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.664080" elapsed="0.004919"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.670810" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:55.669085" elapsed="0.001773"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.669051" elapsed="0.001829"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:55.694118" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:55.694167" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:55.671018" elapsed="0.023172"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:55.695974" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:55.694269" elapsed="0.001762"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.694249" elapsed="0.001805"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:55.696103" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:55.696297" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:55.696341" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 332 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:55.651099" elapsed="0.045265"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.698489" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:55.696906" elapsed="0.001628"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.696887" elapsed="0.001670"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.699121" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.698704" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.699663" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.699312" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:55.699738" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:55.699916" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:55.696575" elapsed="0.003366"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:55.700126" elapsed="0.000386"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:55.650479" elapsed="0.050096"/>
</kw>
<arg>f209.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:55.604691" elapsed="0.095941"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:55.597871" elapsed="0.102871"/>
</test>
<test id="s1-s3-s2-t47" name="Test Is Flow 214 Added" line="140">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:55.711556" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f214.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f214.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:55.711696" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:55.711422" elapsed="0.000302"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:55.712422" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe685e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:55.711874" elapsed="0.000577"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:55.712880" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:55.712603" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:55.713347" level="INFO">${flow_id} = 337</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:55.713056" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:55.713791" level="INFO">${flow_priority} = 214</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:55.713521" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:55.714625" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:55.713966" elapsed="0.000690"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.715156" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.714812" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.715717" level="INFO">${flow_id} = 337</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.715393" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.716274" level="INFO">${flow_priority} = 214</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.715916" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.716781" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.716468" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.717314" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.716979" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.717826" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe685e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.717509" elapsed="0.000358"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:55.711096" elapsed="0.006825"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.718461" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cooki...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.718083" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.718873" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;214&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;214&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
		    &lt;ip-match&gt;
        		&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
		    &lt;/ip-match&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
		&lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
	    &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.718638" elapsed="0.000295"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.726718" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:55.726422" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:55.732288" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=337?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=337?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:55.732478" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=337?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:55.732575" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:55.726873" elapsed="0.005728"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.733012" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.732758" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.735252" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.733222" elapsed="0.002082"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:55.737130" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-05-25T01:53:55.735373" elapsed="0.001823"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.735353" elapsed="0.001867"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:55.737391" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:55.737618" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:55.737483" elapsed="0.000186"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:55.737466" elapsed="0.000226"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.737724" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:53:55.739343" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:55.739388" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 337 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:55.726106" elapsed="0.013305"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.741537" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:55.739947" elapsed="0.001635"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.739929" elapsed="0.001675"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.742166" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.741750" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.742706" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.742356" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:55.742782" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:55.742958" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:55.739618" elapsed="0.003365"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:55.743155" elapsed="0.000383"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:55.725538" elapsed="0.018063"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.751319" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:55.751007" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:55.759697" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:55.760279" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;920000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;933000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;934000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:55.760559" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:55.751476" elapsed="0.009109"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.761002" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.760744" elapsed="0.000304"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.763734" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;920000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;933000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;934000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;931000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;440000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;937000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;441000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;944000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;401000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;445000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;952000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;399000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;900000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;395000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;32&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;32&lt;/second&gt;&lt;nanosecond&gt;952000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;33&lt;/second&gt;&lt;nanosecond&gt;241000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;912000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.761210" elapsed="0.003327"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.766362" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:55.764610" elapsed="0.001800"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.764589" elapsed="0.001843"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:55.790928" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:55.790977" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:55.766571" elapsed="0.024430"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:55.792815" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:55.791094" elapsed="0.001777"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.791060" elapsed="0.001836"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:55.792929" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:55.793141" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:55.793187" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 337 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:55.750630" elapsed="0.042580"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.795341" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:55.793759" elapsed="0.001628"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.793740" elapsed="0.001669"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.795960" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.795558" elapsed="0.000430"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.796537" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.796182" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:55.796614" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:55.796792" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:55.793425" elapsed="0.003393"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:55.796975" elapsed="0.000403"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:55.750009" elapsed="0.047432"/>
</kw>
<arg>f214.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:55.707825" elapsed="0.089674"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:55.700989" elapsed="0.096622"/>
</test>
<test id="s1-s3-s2-t48" name="Test Is Flow 218 Added" line="142">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:55.808267" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f218.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f218.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:55.808397" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:55.808130" elapsed="0.000295"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:55.808955" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc76660&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:55.808575" elapsed="0.000407"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:55.809429" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:55.809152" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:55.809874" level="INFO">${flow_id} = 341</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:55.809606" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:55.810333" level="INFO">${flow_priority} = 218</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:55.810048" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:55.811043" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:55.810507" elapsed="0.000580"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.811572" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.811244" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.812157" level="INFO">${flow_id} = 341</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.811802" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.812681" level="INFO">${flow_priority} = 218</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.812354" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.813203" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.812874" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.813719" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.813399" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.814259" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc76660&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:55.813921" elapsed="0.000380"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:55.807766" elapsed="0.006591"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.814885" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.814507" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.815321" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;go-to-table&gt;
                &lt;table_id&gt;3&lt;/table_id&gt;
            &lt;/go-to-table&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;341&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-mask&gt;0xfff0&lt;/tunnel-mask&gt;
            &lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
    &lt;cookie&gt;218&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;
    &lt;priority&gt;218&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.815081" elapsed="0.000297"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.823342" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:55.823030" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:55.878152" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=341?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=341?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:55.878349" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=341?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:55.878447" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:55.823498" elapsed="0.054975"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.878883" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.878631" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.881120" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.879084" elapsed="0.002088"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:55.882958" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-05-25T01:53:55.881242" elapsed="0.001781"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.881222" elapsed="0.001826"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:55.883225" elapsed="0.000023"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:55.883451" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:55.883317" elapsed="0.000220"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:55.883300" elapsed="0.000261"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.883595" elapsed="0.000015"/>
</return>
<msg time="2026-05-25T01:53:55.885249" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:55.885294" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 341 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:55.822712" elapsed="0.062605"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.887431" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:55.885854" elapsed="0.001622"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.885836" elapsed="0.001662"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.888037" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.887644" elapsed="0.000419"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.888618" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.888267" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:55.888694" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:55.888871" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:55.885525" elapsed="0.003371"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:55.889051" elapsed="0.000397"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:55.822162" elapsed="0.067349"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.897240" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:55.896930" elapsed="0.000336"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:55.906161" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:55.906695" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;920000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;933000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;934000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:55.906982" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:55.897395" elapsed="0.009614"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.907446" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.907191" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.910234" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;920000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;933000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;934000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;931000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;440000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;937000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;441000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;944000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;401000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;445000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;952000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;399000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;900000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;395000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;32&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;32&lt;/second&gt;&lt;nanosecond&gt;952000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;33&lt;/second&gt;&lt;nanosecond&gt;241000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;912000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:55.907635" elapsed="0.003355"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.912834" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:55.911062" elapsed="0.001820"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.911042" elapsed="0.001862"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:55.983049" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:55.983130" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:55.913041" elapsed="0.070115"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:55.985137" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:55.983288" elapsed="0.001910"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.983252" elapsed="0.001973"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:55.985263" elapsed="0.000041"/>
</return>
<msg time="2026-05-25T01:53:55.985484" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:55.985529" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 341 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:55.896557" elapsed="0.088995"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:55.987776" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:55.986183" elapsed="0.001643"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:55.986164" elapsed="0.001684"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.988507" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.988000" elapsed="0.000535"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:55.989050" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:55.988699" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:55.989143" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:55.989320" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:55.985804" elapsed="0.003541"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:55.989501" elapsed="0.000548"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:55.895918" elapsed="0.094210"/>
</kw>
<arg>f218.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:55.804560" elapsed="0.185627"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:55.797782" elapsed="0.192526"/>
</test>
<test id="s1-s3-s2-t49" name="Test Is Flow 219 Added" line="144">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:56.001338" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f219.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f219.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:56.001503" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;c...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:56.001196" elapsed="0.000336"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:56.002119" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe68270&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:56.001683" elapsed="0.000464"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:56.002586" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:56.002302" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:56.003036" level="INFO">${flow_id} = 342</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:56.002764" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:56.003501" level="INFO">${flow_priority} = 219</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:56.003229" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:56.004375" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:56.003676" elapsed="0.000730"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.004892" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:56.004561" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.005485" level="INFO">${flow_id} = 342</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:56.005160" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.006166" level="INFO">${flow_priority} = 219</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:56.005677" elapsed="0.000533"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.006679" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;c...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:56.006362" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.007207" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:56.006875" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.007723" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe68270&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:56.007403" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:56.000834" elapsed="0.006984"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.008413" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;c...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:56.007971" elapsed="0.000476"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.008842" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
		&lt;/clear-actions&gt;
	&lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;342&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;10&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;219&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;
    &lt;priority&gt;219&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:56.008602" elapsed="0.000300"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.016535" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:56.016204" elapsed="0.000358"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:56.022359" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=342?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=342?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:56.022589" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=342?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:56.022687" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:56.016693" elapsed="0.006019"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.023146" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:56.022876" elapsed="0.000315"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.025624" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:56.023333" elapsed="0.002363"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:56.028393" elapsed="0.000044"/>
</return>
<status status="PASS" start="2026-05-25T01:53:56.025792" elapsed="0.002699"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:56.025765" elapsed="0.002761"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:56.028767" elapsed="0.000034"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:56.029118" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:56.028902" elapsed="0.000291"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:56.028878" elapsed="0.000347"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:56.029270" elapsed="0.000021"/>
</return>
<msg time="2026-05-25T01:53:56.031519" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:56.031582" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 342 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:56.015873" elapsed="0.015742"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:56.034130" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:56.032436" elapsed="0.001741"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:56.032411" elapsed="0.001788"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.034745" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:56.034346" elapsed="0.000427"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.035313" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:56.034941" elapsed="0.000398"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:56.035389" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:56.035567" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:56.031912" elapsed="0.003679"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:56.035746" elapsed="0.000397"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:56.015325" elapsed="0.020881"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.043895" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:56.043599" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:56.053896" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:56.054681" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;920000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;933000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;934000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:56.055125" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:56.044052" elapsed="0.011112"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.055736" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:56.055386" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.059598" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;920000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;933000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;934000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;931000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;440000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;937000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;441000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;944000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;401000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;445000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;952000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;399000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;900000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;395000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;32&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;32&lt;/second&gt;&lt;nanosecond&gt;952000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;33&lt;/second&gt;&lt;nanosecond&gt;241000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;912000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:56.055997" elapsed="0.004692"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:56.063241" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:56.060790" elapsed="0.002517"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:56.060762" elapsed="0.002576"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:56.085539" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:56.085587" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:56.063532" elapsed="0.022079"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:56.087395" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:56.085691" elapsed="0.001759"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:56.085671" elapsed="0.001803"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:56.087508" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:56.087703" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:56.087747" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 342 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:56.043224" elapsed="0.044546"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:56.089930" elapsed="0.000191"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:56.088355" elapsed="0.001798"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:56.088336" elapsed="0.001839"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.090722" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:56.090323" elapsed="0.000427"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.091284" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:56.090914" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:56.091361" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:56.091539" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:56.087982" elapsed="0.003582"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:56.091721" elapsed="0.000401"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:56.042600" elapsed="0.049586"/>
</kw>
<arg>f219.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:55.997575" elapsed="0.094669"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:55.990634" elapsed="0.101735"/>
</test>
<test id="s1-s3-s2-t50" name="Test Is Flow 220 Added" line="146">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:56.103147" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f220.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f220.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:56.103279" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:56.102994" elapsed="0.000313"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:56.103854" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38b240&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:56.103458" elapsed="0.000424"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:56.104353" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:56.104033" elapsed="0.000347"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:56.104805" level="INFO">${flow_id} = 343</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:56.104532" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:56.105267" level="INFO">${flow_priority} = 220</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:56.104980" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:56.106018" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:56.105443" elapsed="0.000604"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.106548" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:56.106220" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.107591" level="INFO">${flow_id} = 343</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:56.107261" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.108135" level="INFO">${flow_priority} = 220</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:56.107788" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.108667" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:56.108349" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.109213" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:56.108866" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.109736" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38b240&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:56.109413" elapsed="0.000366"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:56.102668" elapsed="0.007166"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.110400" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:56.109985" elapsed="0.000446"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.110826" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;write-metadata&gt;
                &lt;metadata-mask&gt;12&lt;/metadata-mask&gt;
                &lt;metadata&gt;10&lt;/metadata&gt;
            &lt;/write-metadata&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;343&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;220&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;
    &lt;priority&gt;220&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:56.110583" elapsed="0.000301"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.118650" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:56.118356" elapsed="0.000320"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:56.124928" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=343?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=343?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:56.125147" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=343?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:53:56.125246" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:56.118805" elapsed="0.006466"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.125678" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:56.125429" elapsed="0.000293"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.127892" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:56.125865" elapsed="0.002078"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:53:56.130187" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-05-25T01:53:56.128012" elapsed="0.002268"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:56.127992" elapsed="0.002322"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:53:56.130510" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:56.130882" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:56.130693" elapsed="0.000261"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:53:56.130667" elapsed="0.000319"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:56.131030" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:53:56.133316" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:53:56.133379" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 343 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:56.118027" elapsed="0.015383"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:56.136586" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:56.134180" elapsed="0.002470"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:56.134155" elapsed="0.002525"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.137282" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:56.136869" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.137818" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:56.137470" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:56.137895" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:53:56.138085" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:56.133701" elapsed="0.004411"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:56.138269" elapsed="0.000379"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:56.117475" elapsed="0.021237"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.146435" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:53:56.146140" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:56.157445" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:56.157984" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;920000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;933000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;934000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:53:56.158290" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:56.146591" elapsed="0.011726"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.158727" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:56.158477" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.161760" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;1&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;416000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;918000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;422000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-queue-action&gt;&lt;queue-id&gt;1&lt;/queue-id&gt;&lt;/set-queue-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;415000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;920000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;432000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;933000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-dscp&gt;1&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;423000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;934000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;935000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;433000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;931000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;440000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;937000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;441000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;944000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;943000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;401000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;903000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;444000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;946000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;445000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;945000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;393000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;449000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;893000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-mpls-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;952000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;447000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;889000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;950000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;399000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;900000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;ip-match&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;395000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;32&lt;/second&gt;&lt;nanosecond&gt;451000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;896000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;32&lt;/second&gt;&lt;nanosecond&gt;952000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;33&lt;/second&gt;&lt;nanosecond&gt;241000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;403000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-vlan-action&gt;&lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;&lt;/push-vlan-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;911000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;407000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;set-field&gt;&lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;&lt;/set-field&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;906000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;push-mpls-action&gt;&lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;&lt;/push-mpls-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;404000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;912000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;413000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;910000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;412000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:56.158921" elapsed="0.003926"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:53:56.165410" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:56.162948" elapsed="0.002528"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:56.162920" elapsed="0.002587"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:53:56.190425" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:53:56.190474" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:53:56.165700" elapsed="0.024798"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:53:56.192277" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:53:56.190576" elapsed="0.001756"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:56.190557" elapsed="0.001800"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:53:56.192413" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:53:56.192608" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:53:56.192652" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 343 and 1</doc>
<status status="PASS" start="2026-05-25T01:53:56.145749" elapsed="0.046926"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:53:56.194819" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:53:56.193236" elapsed="0.001629"/>
</branch>
<status status="PASS" start="2026-05-25T01:53:56.193218" elapsed="0.001669"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.195451" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:56.195034" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.195999" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:53:56.195642" elapsed="0.000383"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:53:56.196092" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:53:56.196273" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:53:56.192887" elapsed="0.003411"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:53:56.196467" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:53:56.145142" elapsed="0.051773"/>
</kw>
<arg>f220.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:53:56.099418" elapsed="0.097553"/>
</kw>
<status status="PASS" start="2026-05-25T01:53:56.092617" elapsed="0.104481"/>
</test>
<test id="s1-s3-s2-t51" name="Test Update Flows Group 0" line="148">
<for flavor="IN">
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.198458" level="INFO">f1.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:56.198206" elapsed="0.000298"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:56.202139" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f1.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f1.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:56.202274" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:56.201987" elapsed="0.000316"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:56.202842" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38b3d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:56.202455" elapsed="0.000414"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:56.203317" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:56.203022" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:56.203763" level="INFO">${flow_id} = 124</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:56.203494" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:56.204227" level="INFO">${flow_priority} = 1</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:56.203940" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:56.204992" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:56.204417" elapsed="0.000605"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.205510" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:56.205193" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.206053" level="INFO">${flow_id} = 124</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:56.205743" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.206577" level="INFO">${flow_priority} = 1</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:56.206263" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.207082" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:56.206768" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.207586" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:56.207281" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.208102" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38b3d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:56.207782" elapsed="0.000363"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:56.201514" elapsed="0.006686"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.209516" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;124&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;1&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf1&lt;/flow-name&gt;
    &lt;priority&gt;1&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:56.209269" elapsed="0.000303"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.210133" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;124&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;1&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf1&lt;/flow-name&gt;
    &lt;priority&gt;1&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:56.209714" elapsed="0.000477"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:56.210609" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc38bb50&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:56.210338" elapsed="0.000298"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:56.211050" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:56.210783" elapsed="0.000330"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:56.211618" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc38bdd0&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:56.211260" elapsed="0.000386"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:56.212160" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc38b380&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:56.211795" elapsed="0.000392"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:56.212334" elapsed="0.000278"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:56.212762" elapsed="0.000256"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:56.213185" elapsed="0.000239"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:56.213570" elapsed="0.000235"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:56.213951" elapsed="0.000253"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:56.214349" elapsed="0.000232"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:56.214761" elapsed="0.000350"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:56.215259" elapsed="0.000325"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:56.215730" elapsed="0.000326"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:56.216529" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc091530&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:56.216226" elapsed="0.000330"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:56.216704" elapsed="0.000246"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:56.217527" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;1&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf1&lt;/flow-name&gt;
    &lt;priority&gt;1&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;1&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf1&lt;/flow-name&gt;
    &lt;priority&gt;1&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:56.217112" elapsed="0.000486"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:56.218213" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
              ...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:56.217747" elapsed="0.000497"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:56.771719" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1712', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;1&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf1&lt;/flow-name&gt;
    &lt;priority&gt;1&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;1&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf1&lt;/flow-name&gt;
    &lt;priority&gt;1&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:56.771882" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:56.772140" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:56.218377" elapsed="0.553825"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.777052" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:56.772570" elapsed="0.004610"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5acc38b3d0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:56.208864" elapsed="0.568447"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:56.208350" elapsed="0.569158"/>
</kw>
<var name="${flowfile}">f1.xml</var>
<status status="PASS" start="2026-05-25T01:53:56.198038" elapsed="0.579553"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.778692" level="INFO">f2.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:56.778129" elapsed="0.000661"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:56.783919" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f2.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f2.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:56.784046" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:56.783784" elapsed="0.000306"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:56.784635" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc092d90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:56.784246" elapsed="0.000417"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:56.785135" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:56.784819" elapsed="0.000342"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:56.785587" level="INFO">${flow_id} = 125</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:56.785316" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:56.786175" level="INFO">${flow_priority} = 2</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:56.785765" elapsed="0.000436"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:56.786930" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:56.786351" elapsed="0.000610"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.787450" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:56.787132" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.787957" level="INFO">${flow_id} = 125</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:56.787646" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.788475" level="INFO">${flow_priority} = 2</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:56.788164" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.788990" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:56.788667" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.789510" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:56.789202" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.790013" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc092d90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:56.789705" elapsed="0.000349"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:56.783448" elapsed="0.006678"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.791416" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;125&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;
    &lt;/match&gt;
    &lt;cookie&gt;2&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf2&lt;/flow-name&gt;
    &lt;priority&gt;2&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:56.791169" elapsed="0.000304"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:56.791854" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;125&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;
    &lt;/match&gt;
    &lt;cookie&gt;2&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf2&lt;/flow-name&gt;
    &lt;priority&gt;2&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:56.791614" elapsed="0.000330"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:56.792378" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc090130&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:56.792107" elapsed="0.000298"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:56.792800" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:56.792548" elapsed="0.000298"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:56.793382" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc092ca0&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:56.793007" elapsed="0.000402"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:56.793911" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc0936f0&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:56.793558" elapsed="0.000379"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:56.794099" elapsed="0.000263"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:56.794511" elapsed="0.000256"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:56.794922" elapsed="0.000255"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:56.795325" elapsed="0.000236"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:56.795707" elapsed="0.000235"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:56.796102" elapsed="0.000235"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:56.796483" elapsed="0.000323"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:56.796978" elapsed="0.000343"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:56.797467" elapsed="0.000326"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:56.798370" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5ace4e6390&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:56.797949" elapsed="0.000449"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:56.798548" elapsed="0.000247"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:56.799378" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;
    &lt;/match&gt;
    &lt;cookie&gt;2&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf2&lt;/flow-name&gt;
    &lt;priority&gt;2&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;
    &lt;/match&gt;
    &lt;cookie&gt;2&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf2&lt;/flow-name&gt;
    &lt;priority&gt;2&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:56.798942" elapsed="0.000508"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:56.800049" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
              ...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:56.799595" elapsed="0.000500"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:57.272594" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1788', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;
    &lt;/match&gt;
    &lt;cookie&gt;2&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf2&lt;/flow-name&gt;
    &lt;priority&gt;2&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;
    &lt;/match&gt;
    &lt;cookie&gt;2&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf2&lt;/flow-name&gt;
    &lt;priority&gt;2&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:57.272792" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:57.272952" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:56.800227" elapsed="0.472753"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:57.275474" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:57.273264" elapsed="0.002255"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5acc092d90&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:56.790766" elapsed="0.484821"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:56.790277" elapsed="0.485369"/>
</kw>
<var name="${flowfile}">f2.xml</var>
<status status="PASS" start="2026-05-25T01:53:56.777812" elapsed="0.497877"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:57.276226" level="INFO">f3.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:57.275951" elapsed="0.000320"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:57.282270" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f3.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f3.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:57.282457" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:57.282044" elapsed="0.000444"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:57.283272" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4e4b30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:57.282695" elapsed="0.000622"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:57.283917" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:57.283539" elapsed="0.000406"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:57.284585" level="INFO">${flow_id} = 126</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:57.284193" elapsed="0.000423"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:57.285185" level="INFO">${flow_priority} = 3</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:57.284796" elapsed="0.000420"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:57.286229" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:57.285416" elapsed="0.000852"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:57.286902" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:57.286484" elapsed="0.000471"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:57.287574" level="INFO">${flow_id} = 126</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:57.287177" elapsed="0.000451"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:57.288254" level="INFO">${flow_priority} = 3</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:57.287828" elapsed="0.000480"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:57.288907" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:57.288508" elapsed="0.000457"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:57.289625" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:57.289184" elapsed="0.000502"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:57.290322" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4e4b30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:57.289896" elapsed="0.000479"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:57.281225" elapsed="0.009223"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:57.292015" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;126&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:00:01&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;3&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf3&lt;/flow-name&gt;
    &lt;priority&gt;3&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:57.291735" elapsed="0.000420"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:57.292582" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;126&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:00:01&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;3&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf3&lt;/flow-name&gt;
    &lt;priority&gt;3&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:57.292316" elapsed="0.000324"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:57.293092" level="INFO">${xml} = &lt;Element 'input' at 0x7f5accbaad40&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:57.292789" elapsed="0.000332"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:57.293566" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:57.293270" elapsed="0.000344"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:57.294331" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc4b9990&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:57.293761" elapsed="0.000598"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:57.294868" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc4ba930&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:57.294511" elapsed="0.000386"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:57.295045" elapsed="0.000300"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:57.295500" elapsed="0.000260"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:57.295912" elapsed="0.000256"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:57.296317" elapsed="0.000274"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:57.296764" elapsed="0.000243"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:57.297173" elapsed="0.000269"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:57.297591" elapsed="0.000332"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:57.298085" elapsed="0.000326"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:57.298556" elapsed="0.000329"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:57.299321" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc4d91c0&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:57.299038" elapsed="0.000310"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:57.299497" elapsed="0.000245"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:57.300323" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:00:01&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;3&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf3&lt;/flow-name&gt;
    &lt;priority&gt;3&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:00:01&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;3&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf3&lt;/flow-name&gt;
    &lt;priority&gt;3&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:57.299888" elapsed="0.000541"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:57.301083" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
              ...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:57.300596" elapsed="0.000520"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:57.774407" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1740', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:00:01&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;3&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf3&lt;/flow-name&gt;
    &lt;priority&gt;3&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:00:01&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;3&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf3&lt;/flow-name&gt;
    &lt;priority&gt;3&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:57.774618" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:57.774903" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:57.301251" elapsed="0.473722"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:57.780281" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:57.775498" elapsed="0.004883"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5ace4e4b30&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:57.291289" elapsed="0.489233"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:57.290650" elapsed="0.490000"/>
</kw>
<var name="${flowfile}">f3.xml</var>
<status status="PASS" start="2026-05-25T01:53:57.275817" elapsed="0.504919"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:57.781949" level="INFO">f4.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:57.781305" elapsed="0.000791"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:57.787376" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f4.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f4.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:57.787610" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:57.787027" elapsed="0.000626"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:57.788486" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc43ba10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:57.787873" elapsed="0.000653"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:57.789158" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:57.788743" elapsed="0.000453"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:57.789831" level="INFO">${flow_id} = 127</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:57.789411" elapsed="0.000456"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:57.790482" level="INFO">${flow_priority} = 4</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:57.790099" elapsed="0.000420"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:57.791585" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:57.790727" elapsed="0.000889"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:57.792183" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:57.791834" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:57.792696" level="INFO">${flow_id} = 127</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:57.792384" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:57.793235" level="INFO">${flow_priority} = 4</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:57.792892" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:57.793751" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:57.793431" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:57.794294" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:57.793960" elapsed="0.002150"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:57.796643" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc43ba10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:57.796299" elapsed="0.000391"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:57.786496" elapsed="0.010253"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:57.799569" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;127&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;4&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf4&lt;/flow-name&gt;
    &lt;priority&gt;4&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:57.799292" elapsed="0.000351"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:57.800122" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;127&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;4&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf4&lt;/flow-name&gt;
    &lt;priority&gt;4&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:57.799803" elapsed="0.000383"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:57.800713" level="INFO">${xml} = &lt;Element 'input' at 0x7f5ace4c2570&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:57.800349" elapsed="0.000392"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:57.803464" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:57.803175" elapsed="0.000338"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:57.804035" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5ace4c0180&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:57.803661" elapsed="0.000401"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:57.804629" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5ace4f5170&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:57.804251" elapsed="0.000405"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:57.804803" elapsed="0.000294"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:57.805250" elapsed="0.000265"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:57.805667" elapsed="0.000290"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:57.806193" elapsed="0.000284"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:57.806630" elapsed="0.000292"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:57.807100" elapsed="0.000310"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:57.807576" elapsed="0.000386"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:57.808132" elapsed="0.000348"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:57.808628" elapsed="0.000336"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:57.809405" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfe6b920&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:57.809135" elapsed="0.000297"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:57.809582" elapsed="0.000277"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:57.812296" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;4&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf4&lt;/flow-name&gt;
    &lt;priority&gt;4&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;4&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf4&lt;/flow-name&gt;
    &lt;priority&gt;4&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:57.810019" elapsed="0.002382"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:57.813145" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
              ...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:57.812601" elapsed="0.000585"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:58.273913" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2078', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;4&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf4&lt;/flow-name&gt;
    &lt;priority&gt;4&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;4&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf4&lt;/flow-name&gt;
    &lt;priority&gt;4&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:58.274258" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:58.274530" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:57.813357" elapsed="0.461232"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:58.279603" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:58.275006" elapsed="0.004694"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5acc43ba10&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:57.798845" elapsed="0.480990"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:57.796927" elapsed="0.483034"/>
</kw>
<var name="${flowfile}">f4.xml</var>
<status status="PASS" start="2026-05-25T01:53:57.780982" elapsed="0.499129"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:58.281328" level="INFO">f5.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:58.280697" elapsed="0.000743"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:58.285845" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f5.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f5.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:58.286008" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:58.285702" elapsed="0.000335"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:58.286661" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4dafc0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:58.286221" elapsed="0.000470"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:58.287141" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:58.286844" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:58.287588" level="INFO">${flow_id} = 128</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:58.287319" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:58.288031" level="INFO">${flow_priority} = 5</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:58.287763" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:58.288902" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:58.288223" elapsed="0.000709"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:58.289437" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:58.289110" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:58.289941" level="INFO">${flow_id} = 128</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:58.289633" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:58.290487" level="INFO">${flow_priority} = 5</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:58.290172" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:58.291012" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:58.290681" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:58.291566" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:58.291225" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:58.292198" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4dafc0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:58.291776" elapsed="0.000480"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:58.285348" elapsed="0.006981"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:58.293800" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;128&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;5&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;5&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:58.293552" elapsed="0.000343"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:58.294319" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;128&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;5&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;5&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:58.294039" elapsed="0.000340"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:58.294796" level="INFO">${xml} = &lt;Element 'input' at 0x7f5accbab740&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:58.294524" elapsed="0.000300"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:58.295248" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:58.294968" elapsed="0.000326"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:58.295822" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5accba9670&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:58.295439" elapsed="0.000415"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:58.296647" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc4d9b70&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:58.296013" elapsed="0.000667"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:58.296834" elapsed="0.000291"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:58.297278" elapsed="0.000258"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:58.297687" elapsed="0.000264"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:58.298117" elapsed="0.000287"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:58.298554" elapsed="0.000238"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:58.298973" elapsed="0.000263"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:58.299386" elapsed="0.000346"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:58.299879" elapsed="0.000357"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:58.300383" elapsed="0.000379"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:58.301206" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5ace531210&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:58.300918" elapsed="0.000315"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:58.301382" elapsed="0.000246"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:58.302291" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;5&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;5&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;5&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;5&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:58.301776" elapsed="0.000631"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:58.303045" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
              ...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:58.302556" elapsed="0.000536"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:58.775741" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2298', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;5&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;5&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;5&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;5&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:58.775945" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:58.776227" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:58.303225" elapsed="0.473064"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:58.781224" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:58.776662" elapsed="0.004663"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5acc4dafc0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:58.293158" elapsed="0.488299"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:58.292542" elapsed="0.489034"/>
</kw>
<var name="${flowfile}">f5.xml</var>
<status status="PASS" start="2026-05-25T01:53:58.280378" elapsed="0.501280"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:58.782783" level="INFO">f6.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:58.782201" elapsed="0.000681"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:58.788601" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f6.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f6.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:58.788746" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:58.788459" elapsed="0.000317"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:58.789352" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc092520&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:58.788928" elapsed="0.000452"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:58.789814" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:58.789534" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:58.790284" level="INFO">${flow_id} = 129</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:58.789994" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:58.790748" level="INFO">${flow_priority} = 6</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:58.790463" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:58.791752" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:58.790964" elapsed="0.000819"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:58.792284" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:58.791941" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:58.792790" level="INFO">${flow_id} = 129</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:58.792482" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:58.793316" level="INFO">${flow_priority} = 6</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:58.792984" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:58.793808" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:58.793509" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:58.794327" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:58.794004" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:58.794859" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc092520&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:58.794524" elapsed="0.000376"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:58.788113" elapsed="0.006842"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:58.796262" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;129&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;6&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;6&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:58.795999" elapsed="0.000323"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:58.796705" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;129&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;6&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;6&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:58.796464" elapsed="0.000298"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:58.797186" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc092bb0&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:58.796905" elapsed="0.000309"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:58.797609" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:58.797357" elapsed="0.000298"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:58.798183" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc093c40&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:58.797799" elapsed="0.000411"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:58.798733" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc090ae0&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:58.798362" elapsed="0.000398"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:58.798943" elapsed="0.000281"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:58.799375" elapsed="0.000255"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:58.799782" elapsed="0.000236"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:58.800180" elapsed="0.000236"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:58.800561" elapsed="0.000235"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:58.800941" elapsed="0.000249"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:58.801336" elapsed="0.000335"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:58.801818" elapsed="0.000349"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:58.802314" elapsed="0.000354"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:58.803104" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc38af20&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:58.802821" elapsed="0.000312"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:58.803282" elapsed="0.000244"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:58.804237" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;6&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;6&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;6&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;6&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:58.803672" elapsed="0.000642"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:58.804933" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
              ...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:58.804460" elapsed="0.000504"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:59.276484" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2218', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;6&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;6&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;6&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;6&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:59.276758" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:59.276997" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:58.805108" elapsed="0.471948"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:59.282020" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:59.277489" elapsed="0.004660"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5acc092520&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:58.795604" elapsed="0.486680"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:58.795119" elapsed="0.487288"/>
</kw>
<var name="${flowfile}">f6.xml</var>
<status status="PASS" start="2026-05-25T01:53:58.781881" elapsed="0.500613"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:59.283623" level="INFO">f7.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:59.283031" elapsed="0.000693"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:59.289476" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f7.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f7.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:59.289624" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:59.289335" elapsed="0.000318"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:59.290249" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3888b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:59.289805" elapsed="0.000474"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:59.290709" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:59.290431" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:59.291194" level="INFO">${flow_id} = 130</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:59.290889" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:59.291636" level="INFO">${flow_priority} = 7</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:59.291370" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:59.292563" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:59.291811" elapsed="0.000782"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:59.293093" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:59.292755" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:59.293597" level="INFO">${flow_id} = 130</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:59.293291" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:59.294121" level="INFO">${flow_priority} = 7</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:59.293789" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:59.294612" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:59.294312" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:59.295193" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:59.294807" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:59.295696" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3888b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:59.295390" elapsed="0.000347"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:59.288976" elapsed="0.006814"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:59.297095" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;130&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;15&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;7&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf7&lt;/flow-name&gt;
    &lt;priority&gt;7&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:59.296835" elapsed="0.000361"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:59.297587" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;130&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;15&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;7&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf7&lt;/flow-name&gt;
    &lt;priority&gt;7&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:59.297341" elapsed="0.000307"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:59.298061" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc35b0b0&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:59.297793" elapsed="0.000311"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:59.298660" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:59.298250" elapsed="0.000459"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:59.299267" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc38ae80&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:59.298855" elapsed="0.000440"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:59.299814" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc38a660&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:59.299445" elapsed="0.000395"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:59.299986" elapsed="0.000282"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:59.300417" elapsed="0.000257"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:59.300825" elapsed="0.000255"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:59.301228" elapsed="0.000235"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:59.301610" elapsed="0.000235"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:59.302106" elapsed="0.000242"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:59.302493" elapsed="0.000351"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:59.303017" elapsed="0.000367"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:59.303530" elapsed="0.000333"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:59.304298" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc4e7650&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:59.304014" elapsed="0.000311"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:59.304472" elapsed="0.000242"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:59.305353" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;15&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;7&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf7&lt;/flow-name&gt;
    &lt;priority&gt;7&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;15&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;7&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf7&lt;/flow-name&gt;
    &lt;priority&gt;7&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:59.304858" elapsed="0.000611"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:59.306144" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
              ...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:59.305617" elapsed="0.000559"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:53:59.777595" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2588', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;15&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;7&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf7&lt;/flow-name&gt;
    &lt;priority&gt;7&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;15&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;7&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf7&lt;/flow-name&gt;
    &lt;priority&gt;7&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:53:59.777839" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:53:59.778151" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:59.306308" elapsed="0.471911"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:59.782492" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:59.778714" elapsed="0.003841"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5acc3888b0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:59.296447" elapsed="0.486199"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:59.295939" elapsed="0.486787"/>
</kw>
<var name="${flowfile}">f7.xml</var>
<status status="PASS" start="2026-05-25T01:53:59.282723" elapsed="0.500057"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:59.783528" level="INFO">f8.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:59.783151" elapsed="0.000440"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:53:59.788299" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f8.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f8.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:53:59.788471" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:53:59.788153" elapsed="0.000347"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:59.789132" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e6070&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:59.788651" elapsed="0.000509"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:59.789596" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:59.789314" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:59.790043" level="INFO">${flow_id} = 131</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:59.789773" elapsed="0.000362"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:53:59.790566" level="INFO">${flow_priority} = 8</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:53:59.790292" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:53:59.791543" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:53:59.790742" elapsed="0.000831"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:59.792079" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:59.791735" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:59.792585" level="INFO">${flow_id} = 131</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:59.792278" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:59.793107" level="INFO">${flow_priority} = 8</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:59.792779" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:59.793600" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:59.793301" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:59.794114" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:59.793793" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:53:59.794615" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e6070&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:53:59.794311" elapsed="0.000345"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:53:59.787745" elapsed="0.006966"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:59.796032" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;131&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:00&lt;/address&gt;
                &lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;8&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf8&lt;/flow-name&gt;
    &lt;priority&gt;8&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:59.795787" elapsed="0.000325"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:53:59.796496" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;131&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:00&lt;/address&gt;
                &lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;8&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf8&lt;/flow-name&gt;
    &lt;priority&gt;8&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:53:59.796255" elapsed="0.000304"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:59.796971" level="INFO">${xml} = &lt;Element 'input' at 0x7f5abfc1e750&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:59.796703" elapsed="0.000324"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:59.797462" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:59.797192" elapsed="0.000315"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:59.798194" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5abfc1f2e0&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:59.797654" elapsed="0.000568"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:53:59.798752" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5abfc1f010&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:53:59.798372" elapsed="0.000407"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:59.798928" elapsed="0.000281"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:53:59.799374" elapsed="0.000259"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:59.799786" elapsed="0.000235"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:59.800185" elapsed="0.000235"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:59.800568" elapsed="0.000234"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:59.800948" elapsed="0.000249"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:59.801343" elapsed="0.000358"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:59.801847" elapsed="0.000378"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:59.802372" elapsed="0.000330"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:53:59.803134" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abff7d440&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:53:59.802853" elapsed="0.000307"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:53:59.803308" elapsed="0.000271"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:53:59.804247" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:00&lt;/address&gt;
                &lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;8&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf8&lt;/flow-name&gt;
    &lt;priority&gt;8&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:00&lt;/address&gt;
                &lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;8&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf8&lt;/flow-name&gt;
    &lt;priority&gt;8&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:59.803725" elapsed="0.000607"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:53:59.805001" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
              ...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:53:59.804478" elapsed="0.000581"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:00.279027" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2896', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:00&lt;/address&gt;
                &lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;8&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf8&lt;/flow-name&gt;
    &lt;priority&gt;8&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:00&lt;/address&gt;
                &lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;8&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf8&lt;/flow-name&gt;
    &lt;priority&gt;8&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:00.279343" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:00.279620" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:53:59.805207" elapsed="0.474480"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:00.285230" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:00.280226" elapsed="0.005112"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5acc4e6070&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:53:59.795394" elapsed="0.490093"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:53:59.794861" elapsed="0.490759"/>
</kw>
<var name="${flowfile}">f8.xml</var>
<status status="PASS" start="2026-05-25T01:53:59.782945" elapsed="0.502769"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:00.286922" level="INFO">f9.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:00.286321" elapsed="0.000708"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:00.291577" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f9.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f9.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:00.291764" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:00.291433" elapsed="0.000360"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:00.292414" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7f740&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:00.291948" elapsed="0.000495"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:00.292880" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:00.292598" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:00.293349" level="INFO">${flow_id} = 132</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:00.293060" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:00.294026" level="INFO">${flow_priority} = 9</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:00.293588" elapsed="0.000465"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:00.294983" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:00.294223" elapsed="0.000790"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:00.295519" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:00.295189" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:00.296037" level="INFO">${flow_id} = 132</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:00.295714" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:00.296558" level="INFO">${flow_priority} = 9</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:00.296247" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:00.297053" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:00.296749" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:00.297571" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:00.297263" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:00.298084" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7f740&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:00.297765" elapsed="0.000362"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:00.291064" elapsed="0.007119"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:00.299497" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;132&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;9&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf9&lt;/flow-name&gt;
    &lt;priority&gt;9&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:00.299249" elapsed="0.000313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:00.299983" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;132&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;9&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf9&lt;/flow-name&gt;
    &lt;priority&gt;9&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:00.299704" elapsed="0.000341"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:00.300489" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc3073d0&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:00.300216" elapsed="0.000300"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:00.300979" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:00.300661" elapsed="0.000365"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:00.301578" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc307c90&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:00.301190" elapsed="0.000415"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:00.302152" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc307060&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:00.301753" elapsed="0.000426"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:00.302325" elapsed="0.000264"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:00.302738" elapsed="0.000260"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:00.303165" elapsed="0.000240"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:00.303552" elapsed="0.000392"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:00.304108" elapsed="0.000240"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:00.304494" elapsed="0.000233"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:00.304874" elapsed="0.000503"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:00.305525" elapsed="0.000359"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:00.306032" elapsed="0.000347"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:00.306799" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfc77560&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:00.306532" elapsed="0.000294"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:00.306974" elapsed="0.000261"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:00.307907" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;9&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf9&lt;/flow-name&gt;
    &lt;priority&gt;9&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;9&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf9&lt;/flow-name&gt;
    &lt;priority&gt;9&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:00.307382" elapsed="0.000610"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:00.308679" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
              ...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:00.308155" elapsed="0.000555"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:00.779651" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2808', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;9&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf9&lt;/flow-name&gt;
    &lt;priority&gt;9&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;9&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf9&lt;/flow-name&gt;
    &lt;priority&gt;9&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:00.779881" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:00.780218" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:00.308873" elapsed="0.471412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:00.785759" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:00.780750" elapsed="0.005117"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5abff7f740&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:00.298835" elapsed="0.487182"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:00.298333" elapsed="0.487853"/>
</kw>
<var name="${flowfile}">f9.xml</var>
<status status="PASS" start="2026-05-25T01:54:00.285974" elapsed="0.500305"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:00.787513" level="INFO">f10.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:00.786868" elapsed="0.000754"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:00.791836" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f10.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f10.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:00.792021" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:00.791689" elapsed="0.000361"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:00.792697" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc76930&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:00.792236" elapsed="0.000490"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:00.793186" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:00.792886" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:00.793636" level="INFO">${flow_id} = 133</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:00.793366" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:00.794093" level="INFO">${flow_priority} = 10</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:00.793811" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:00.795140" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:00.794335" elapsed="0.000837"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:00.795673" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:00.795335" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:00.796207" level="INFO">${flow_id} = 133</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:00.795870" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:00.796716" level="INFO">${flow_priority} = 10</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:00.796403" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:00.797229" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:00.796911" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:00.797932" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:00.797428" elapsed="0.000550"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:00.798459" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc76930&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:00.798148" elapsed="0.000353"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:00.791324" elapsed="0.007236"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:00.799901" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;133&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;10&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf10&lt;/flow-name&gt;
    &lt;priority&gt;10&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:00.799652" elapsed="0.000313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:00.800402" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;133&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;10&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf10&lt;/flow-name&gt;
    &lt;priority&gt;10&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:00.800124" elapsed="0.000340"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:00.800895" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc3ee700&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:00.800612" elapsed="0.000311"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:00.801368" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:00.801086" elapsed="0.000328"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:00.801990" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc3ed760&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:00.801601" elapsed="0.000417"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:00.802562" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc3ef650&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:00.802183" elapsed="0.000406"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:00.802737" elapsed="0.000266"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:00.803170" elapsed="0.000258"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:00.803582" elapsed="0.000238"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:00.803967" elapsed="0.000265"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:00.804382" elapsed="0.000238"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:00.804765" elapsed="0.000239"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:00.805168" elapsed="0.000366"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:00.805682" elapsed="0.000357"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:00.806204" elapsed="0.000330"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:00.806954" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfcbfb50&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:00.806688" elapsed="0.000292"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:00.807145" elapsed="0.000247"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:00.808181" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;10&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf10&lt;/flow-name&gt;
    &lt;priority&gt;10&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;10&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf10&lt;/flow-name&gt;
    &lt;priority&gt;10&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:00.807538" elapsed="0.000729"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:00.808938" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
              ...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:00.808415" elapsed="0.000553"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:01.280390" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2816', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;10&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf10&lt;/flow-name&gt;
    &lt;priority&gt;10&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;10&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf10&lt;/flow-name&gt;
    &lt;priority&gt;10&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:01.280782" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:01.281105" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:00.809120" elapsed="0.472073"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:01.286728" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:01.281774" elapsed="0.005056"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5abfc76930&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:00.799246" elapsed="0.487724"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:00.798711" elapsed="0.488430"/>
</kw>
<var name="${flowfile}">f10.xml</var>
<status status="PASS" start="2026-05-25T01:54:00.786538" elapsed="0.500706"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:01.288595" level="INFO">f11.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:01.287796" elapsed="0.000909"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:01.292384" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f11.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f11.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:01.292573" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:01.292228" elapsed="0.000377"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:01.293256" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcbf470&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:01.292762" elapsed="0.000525"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:01.293740" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:01.293447" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:01.294252" level="INFO">${flow_id} = 134</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:01.293930" elapsed="0.000349"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:01.294716" level="INFO">${flow_priority} = 11</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:01.294435" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:01.295716" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:01.294897" elapsed="0.000851"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:01.296299" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:01.295914" elapsed="0.000432"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:01.296870" level="INFO">${flow_id} = 134</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:01.296505" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:01.297429" level="INFO">${flow_priority} = 11</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:01.297091" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:01.297939" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:01.297628" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:01.298492" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:01.298167" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:01.299014" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcbf470&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:01.298695" elapsed="0.000362"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:01.291796" elapsed="0.007345"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:01.300552" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;134&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;1&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;27&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv4-match&gt;
            &lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;
            &lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;
        &lt;/icmpv4-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;11&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf11&lt;/flow-name&gt;
    &lt;priority&gt;11&lt;/priority&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:01.300256" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:01.301103" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;134&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;1&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;27&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv4-match&gt;
            &lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;
            &lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;
        &lt;/icmpv4-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;11&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf11&lt;/flow-name&gt;
    &lt;priority&gt;11&lt;/priority&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:01.300833" elapsed="0.000346"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:01.301792" level="INFO">${xml} = &lt;Element 'input' at 0x7f5abfcbc4f0&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:01.301332" elapsed="0.000488"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:01.302280" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:01.301971" elapsed="0.000358"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:01.302880" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5abfcbfd30&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:01.302478" elapsed="0.000433"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:01.303480" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5abfcbd490&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:01.303063" elapsed="0.000444"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:01.303657" elapsed="0.000272"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:01.304097" elapsed="0.000279"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:01.304566" elapsed="0.000250"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:01.304965" elapsed="0.000271"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:01.305390" elapsed="0.000243"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:01.305783" elapsed="0.000242"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:01.306202" elapsed="0.000372"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:01.306725" elapsed="0.000384"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:01.307267" elapsed="0.000340"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:01.308038" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5ace4f6020&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:01.307763" elapsed="0.000303"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:01.308253" elapsed="0.000262"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:01.309237" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;1&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;27&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv4-match&gt;
            &lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;
            &lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;
        &lt;/icmpv4-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;11&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf11&lt;/flow-name&gt;
    &lt;priority&gt;11&lt;/priority&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;1&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;27&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv4-match&gt;
            &lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;
            &lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;
        &lt;/icmpv4-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;11&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf11&lt;/flow-name&gt;
    &lt;priority&gt;11&lt;/priority&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:01.308687" elapsed="0.000672"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:01.310047" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
              ...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:01.309511" elapsed="0.000586"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:01.781800" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2798', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;1&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;27&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv4-match&gt;
            &lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;
            &lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;
        &lt;/icmpv4-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;11&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf11&lt;/flow-name&gt;
    &lt;priority&gt;11&lt;/priority&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;1&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;27&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv4-match&gt;
            &lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;
            &lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;
        &lt;/icmpv4-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;11&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf11&lt;/flow-name&gt;
    &lt;priority&gt;11&lt;/priority&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:01.782044" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:01.782361" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:01.310246" elapsed="0.472177"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:01.790056" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:01.782888" elapsed="0.007229"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5abfcbf470&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:01.299818" elapsed="0.490366"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:01.299305" elapsed="0.490935"/>
</kw>
<var name="${flowfile}">f11.xml</var>
<status status="PASS" start="2026-05-25T01:54:01.287496" elapsed="0.502781"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:01.790783" level="INFO">f14.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:01.790529" elapsed="0.000299"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:01.794346" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f14.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f14.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:01.794515" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:01.794200" elapsed="0.000345"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:01.795167" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcbf2e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:01.794699" elapsed="0.000497"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:01.795638" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:01.795352" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:01.796160" level="INFO">${flow_id} = 137</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:01.795867" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:01.796611" level="INFO">${flow_priority} = 14</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:01.796339" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:01.797587" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:01.796787" elapsed="0.000832"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:01.798129" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:01.797784" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:01.798642" level="INFO">${flow_id} = 137</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:01.798331" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:01.799173" level="INFO">${flow_priority} = 14</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:01.798838" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:01.799674" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:01.799370" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:01.800202" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:01.799871" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:01.800719" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcbf2e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:01.800402" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:01.793830" elapsed="0.006987"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:01.802240" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;137&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x806&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;arp-op&gt;1&lt;/arp-op&gt;
        &lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;
        &lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;
        &lt;arp-source-hardware-address&gt;
            &lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;
        &lt;/arp-source-hardware-address&gt;
        &lt;arp-target-hardware-address&gt;
            &lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;
        &lt;/arp-target-hardware-address&gt;
    &lt;/match&gt;
    &lt;cookie&gt;14&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf14&lt;/flow-name&gt;
    &lt;priority&gt;14&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:01.801970" elapsed="0.000337"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:01.802694" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;137&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x806&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;arp-op&gt;1&lt;/arp-op&gt;
        &lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;
        &lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;
        &lt;arp-source-hardware-address&gt;
            &lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;
        &lt;/arp-source-hardware-address&gt;
        &lt;arp-target-hardware-address&gt;
            &lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;
        &lt;/arp-target-hardware-address&gt;
    &lt;/match&gt;
    &lt;cookie&gt;14&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf14&lt;/flow-name&gt;
    &lt;priority&gt;14&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:01.802450" elapsed="0.000335"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:01.803224" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc3ed760&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:01.802931" elapsed="0.000320"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:01.803659" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:01.803395" elapsed="0.000310"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:01.804385" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc3ef970&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:01.803848" elapsed="0.000565"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:01.804948" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc3ecd10&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:01.804562" elapsed="0.000416"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:01.805140" elapsed="0.000267"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:01.805558" elapsed="0.000257"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:01.805965" elapsed="0.000254"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:01.806366" elapsed="0.000234"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:01.806746" elapsed="0.000234"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:01.807141" elapsed="0.000234"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:01.807521" elapsed="0.000359"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:01.808025" elapsed="0.000364"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:01.808535" elapsed="0.000325"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:01.809327" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfc75760&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:01.809043" elapsed="0.000311"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:01.809502" elapsed="0.000244"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:01.810392" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x806&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;arp-op&gt;1&lt;/arp-op&gt;
        &lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;
        &lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;
        &lt;arp-source-hardware-address&gt;
            &lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;
        &lt;/arp-source-hardware-address&gt;
        &lt;arp-target-hardware-address&gt;
            &lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;
        &lt;/arp-target-hardware-address&gt;
    &lt;/match&gt;
    &lt;cookie&gt;14&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf14&lt;/flow-name&gt;
    &lt;priority&gt;14&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x806&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;arp-op&gt;1&lt;/arp-op&gt;
        &lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;
        &lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;
        &lt;arp-source-hardware-address&gt;
            &lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;
        &lt;/arp-source-hardware-address&gt;
        &lt;arp-target-hardware-address&gt;
            &lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;
        &lt;/arp-target-hardware-address&gt;
    &lt;/match&gt;
    &lt;cookie&gt;14&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf14&lt;/flow-name&gt;
    &lt;priority&gt;14&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:01.809891" elapsed="0.000617"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:01.811187" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
              ...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:01.810655" elapsed="0.000563"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:02.283230" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '3082', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x806&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;arp-op&gt;1&lt;/arp-op&gt;
        &lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;
        &lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;
        &lt;arp-source-hardware-address&gt;
            &lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;
        &lt;/arp-source-hardware-address&gt;
        &lt;arp-target-hardware-address&gt;
            &lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;
        &lt;/arp-target-hardware-address&gt;
    &lt;/match&gt;
    &lt;cookie&gt;14&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf14&lt;/flow-name&gt;
    &lt;priority&gt;14&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x806&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;arp-op&gt;1&lt;/arp-op&gt;
        &lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;
        &lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;
        &lt;arp-source-hardware-address&gt;
            &lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;
        &lt;/arp-source-hardware-address&gt;
        &lt;arp-target-hardware-address&gt;
            &lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;
        &lt;/arp-target-hardware-address&gt;
    &lt;/match&gt;
    &lt;cookie&gt;14&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf14&lt;/flow-name&gt;
    &lt;priority&gt;14&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:02.283479" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:02.283740" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:01.811346" elapsed="0.472455"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:02.288933" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:02.284296" elapsed="0.004738"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5abfcbf2e0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:01.801577" elapsed="0.487632"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:01.801047" elapsed="0.488309"/>
</kw>
<var name="${flowfile}">f14.xml</var>
<status status="PASS" start="2026-05-25T01:54:01.790396" elapsed="0.499047"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:02.290580" level="INFO">f15.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:02.289980" elapsed="0.000702"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:02.295937" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f15.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f15.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:02.296124" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:02.295794" elapsed="0.000360"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:02.296751" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc759e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:02.296311" elapsed="0.000469"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:02.297459" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:02.296994" elapsed="0.000492"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:02.297917" level="INFO">${flow_id} = 138</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:02.297642" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:02.298387" level="INFO">${flow_priority} = 15</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:02.298113" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:02.299443" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:02.298566" elapsed="0.000909"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:02.299965" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:02.299638" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:02.300492" level="INFO">${flow_id} = 138</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:02.300177" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:02.300995" level="INFO">${flow_priority} = 15</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:02.300684" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:02.301560" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:02.301202" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:02.302063" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:02.301757" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:02.302582" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc759e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:02.302276" elapsed="0.000347"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:02.295440" elapsed="0.007238"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:02.303976" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;138&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;15&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf15&lt;/flow-name&gt;
    &lt;priority&gt;15&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:02.303733" elapsed="0.000304"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:02.304439" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;138&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;15&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf15&lt;/flow-name&gt;
    &lt;priority&gt;15&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:02.304196" elapsed="0.000302"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:02.304910" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc3045e0&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:02.304642" elapsed="0.000295"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:02.305414" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:02.305131" elapsed="0.000330"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:02.305984" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc304220&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:02.305609" elapsed="0.000402"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:02.306545" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc3068e0&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:02.306176" elapsed="0.000396"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:02.306719" elapsed="0.000271"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:02.307156" elapsed="0.000261"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:02.307570" elapsed="0.000239"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:02.307957" elapsed="0.000255"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:02.308361" elapsed="0.000241"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:02.308748" elapsed="0.000235"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:02.309146" elapsed="0.000386"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:02.309680" elapsed="0.000487"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:02.310318" elapsed="0.000332"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:02.311087" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc307830&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:02.310804" elapsed="0.000312"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:02.311266" elapsed="0.000248"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:02.312141" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;15&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf15&lt;/flow-name&gt;
    &lt;priority&gt;15&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;15&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf15&lt;/flow-name&gt;
    &lt;priority&gt;15&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:02.311661" elapsed="0.000559"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:02.312857" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
              ...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:02.312366" elapsed="0.000522"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:02.783538" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2382', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;15&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf15&lt;/flow-name&gt;
    &lt;priority&gt;15&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;15&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf15&lt;/flow-name&gt;
    &lt;priority&gt;15&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:02.783909" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:02.784234" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:02.313016" elapsed="0.471283"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:02.788135" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:02.784747" elapsed="0.003450"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5abfc759e0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:02.303344" elapsed="0.484944"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:02.302827" elapsed="0.485539"/>
</kw>
<var name="${flowfile}">f15.xml</var>
<status status="PASS" start="2026-05-25T01:54:02.289683" elapsed="0.498738"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:02.789140" level="INFO">f16.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:02.788765" elapsed="0.000437"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:02.794056" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f16.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f16.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:02.794236" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:02.793908" elapsed="0.000357"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:02.794859" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7cf90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:02.794421" elapsed="0.000466"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:02.795347" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:02.795044" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:02.795801" level="INFO">${flow_id} = 139</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:02.795528" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:02.796275" level="INFO">${flow_priority} = 16</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:02.795985" elapsed="0.000316"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:02.797307" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:02.796453" elapsed="0.000885"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:02.797844" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:02.797500" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:02.798366" level="INFO">${flow_id} = 139</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:02.798040" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:02.798871" level="INFO">${flow_priority} = 16</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:02.798560" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:02.799381" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:02.799064" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:02.799882" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:02.799576" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:02.800407" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7cf90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:02.800098" elapsed="0.000350"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:02.793381" elapsed="0.007122"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:02.802024" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    &lt;priority&gt;16&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:02.801565" elapsed="0.000570"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:02.802530" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    &lt;priority&gt;16&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:02.802282" elapsed="0.000308"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:02.803008" level="INFO">${xml} = &lt;Element 'input' at 0x7f5abff7d120&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:02.802736" elapsed="0.000299"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:02.803467" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:02.803200" elapsed="0.000314"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:02.804027" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5abff7c5e0&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:02.803659" elapsed="0.000396"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:02.804584" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5abfc1cae0&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:02.804220" elapsed="0.000390"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:02.804759" elapsed="0.000272"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:02.805198" elapsed="0.000256"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:02.805607" elapsed="0.000269"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:02.806024" elapsed="0.000253"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:02.806426" elapsed="0.000236"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:02.806808" elapsed="0.000244"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:02.807221" elapsed="0.000351"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:02.807718" elapsed="0.000364"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:02.808230" elapsed="0.000328"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:02.808979" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfc77560&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:02.808713" elapsed="0.000294"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:02.809173" elapsed="0.000247"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:02.810078" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    &lt;priority&gt;16&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    &lt;priority&gt;16&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:02.809568" elapsed="0.000628"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:02.810841" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    &lt;priority&gt;16&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:02.810348" elapsed="0.000524"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:03.284375" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2390', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    &lt;priority&gt;16&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    &lt;priority&gt;16&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:03.284608" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:03.284885" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:02.811003" elapsed="0.473943"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:03.290449" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:03.285464" elapsed="0.005085"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5abff7cf90&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:02.801172" elapsed="0.489519"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:02.800655" elapsed="0.490162"/>
</kw>
<var name="${flowfile}">f16.xml</var>
<status status="PASS" start="2026-05-25T01:54:02.788583" elapsed="0.502321"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:03.292042" level="INFO">f17.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:03.291471" elapsed="0.000706"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:03.297239" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f17.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f17.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:03.297407" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:03.297093" elapsed="0.000343"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:03.298026" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e67a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:03.297591" elapsed="0.000488"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:03.298530" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:03.298244" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:03.298982" level="INFO">${flow_id} = 140</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:03.298710" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:03.299515" level="INFO">${flow_priority} = 17</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:03.299176" elapsed="0.000365"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:03.300388" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:03.299695" elapsed="0.000724"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:03.300912" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:03.300582" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:03.301449" level="INFO">${flow_id} = 140</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:03.301128" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:03.301960" level="INFO">${flow_priority} = 17</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:03.301645" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:03.302502" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:03.302196" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:03.303009" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:03.302701" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:03.303547" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e67a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:03.303225" elapsed="0.000377"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:03.296716" elapsed="0.006956"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:03.305060" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    &lt;priority&gt;17&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;protocol-match-fields&gt;
            &lt;mpls-label&gt;567&lt;/mpls-label&gt;
            &lt;mpls-tc&gt;3&lt;/mpls-tc&gt;
            &lt;mpls-bos&gt;1&lt;/mpls-bos&gt;
        &lt;/protocol-match-fields&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:03.304810" elapsed="0.000329"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:03.305525" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    &lt;priority&gt;17&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;protocol-match-fields&gt;
            &lt;mpls-label&gt;567&lt;/mpls-label&gt;
            &lt;mpls-tc&gt;3&lt;/mpls-tc&gt;
            &lt;mpls-bos&gt;1&lt;/mpls-bos&gt;
        &lt;/protocol-match-fields&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:03.305282" elapsed="0.000302"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:03.306018" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc4e4d60&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:03.305729" elapsed="0.000356"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:03.306517" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:03.306243" elapsed="0.000322"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:03.307159" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc4e4f90&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:03.306712" elapsed="0.000482"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:03.307895" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc4e6980&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:03.307348" elapsed="0.000576"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:03.308090" elapsed="0.000271"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:03.308513" elapsed="0.000257"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:03.308921" elapsed="0.000255"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:03.309324" elapsed="0.000234"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:03.309704" elapsed="0.000235"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:03.310137" elapsed="0.000239"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:03.310524" elapsed="0.000345"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:03.311016" elapsed="0.000358"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:03.311522" elapsed="0.000327"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:03.312286" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc35b6f0&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:03.312001" elapsed="0.000312"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:03.312462" elapsed="0.000243"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:03.313329" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    &lt;priority&gt;17&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;protocol-match-fields&gt;
            &lt;mpls-label&gt;567&lt;/mpls-label&gt;
            &lt;mpls-tc&gt;3&lt;/mpls-tc&gt;
            &lt;mpls-bos&gt;1&lt;/mpls-bos&gt;
        &lt;/protocol-match-fields&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    &lt;priority&gt;17&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;protocol-match-fields&gt;
            &lt;mpls-label&gt;567&lt;/mpls-label&gt;
            &lt;mpls-tc&gt;3&lt;/mpls-tc&gt;
            &lt;mpls-bos&gt;1&lt;/mpls-bos&gt;
        &lt;/protocol-match-fields&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:03.312851" elapsed="0.000556"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:03.314032" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    &lt;priority&gt;17&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:03.313552" elapsed="0.000535"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:03.785294" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2308', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    &lt;priority&gt;17&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;protocol-match-fields&gt;
            &lt;mpls-label&gt;567&lt;/mpls-label&gt;
            &lt;mpls-tc&gt;3&lt;/mpls-tc&gt;
            &lt;mpls-bos&gt;1&lt;/mpls-bos&gt;
        &lt;/protocol-match-fields&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    &lt;priority&gt;17&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;protocol-match-fields&gt;
            &lt;mpls-label&gt;567&lt;/mpls-label&gt;
            &lt;mpls-tc&gt;3&lt;/mpls-tc&gt;
            &lt;mpls-bos&gt;1&lt;/mpls-bos&gt;
        &lt;/protocol-match-fields&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:03.785631" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:03.785896" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:03.314225" elapsed="0.471735"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:03.791183" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:03.786496" elapsed="0.004789"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5acc4e67a0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:03.304371" elapsed="0.487053"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:03.303852" elapsed="0.487695"/>
</kw>
<var name="${flowfile}">f17.xml</var>
<status status="PASS" start="2026-05-25T01:54:03.291177" elapsed="0.500455"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:03.792768" level="INFO">f18.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:03.792197" elapsed="0.000680"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:03.797668" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f18.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f18.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:03.797836" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:03.797522" elapsed="0.000343"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:03.798509" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc389d50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:03.798019" elapsed="0.000519"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:03.798986" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:03.798696" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:03.799459" level="INFO">${flow_id} = 141</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:03.799185" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:03.799911" level="INFO">${flow_priority} = 18</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:03.799638" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:03.800884" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:03.800105" elapsed="0.000810"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:03.801427" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:03.801095" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:03.801937" level="INFO">${flow_id} = 141</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:03.801627" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:03.802524" level="INFO">${flow_priority} = 18</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:03.802160" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:03.803051" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:03.802723" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:03.803595" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:03.803271" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:03.804159" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc389d50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:03.803797" elapsed="0.000406"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:03.797162" elapsed="0.007107"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:03.805661" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;18&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;18&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:03.805414" elapsed="0.000353"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:03.806232" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;18&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;18&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:03.805927" elapsed="0.000364"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:03.806782" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc38bfb0&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:03.806459" elapsed="0.000351"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:03.807340" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:03.806981" elapsed="0.000409"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:03.807911" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc388900&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:03.807543" elapsed="0.000397"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:03.808471" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc38bb50&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:03.808109" elapsed="0.000390"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:03.808648" elapsed="0.000270"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:03.809085" elapsed="0.000266"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:03.809504" elapsed="0.000242"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:03.809893" elapsed="0.000256"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:03.810298" elapsed="0.000279"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:03.810736" elapsed="0.000239"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:03.811141" elapsed="0.000340"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:03.811629" elapsed="0.000329"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:03.812122" elapsed="0.000338"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:03.812890" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc4ba980&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:03.812617" elapsed="0.000300"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:03.813084" elapsed="0.000252"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:03.813913" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;18&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;18&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;18&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;18&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:03.813485" elapsed="0.000532"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:03.814690" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;18&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/t...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:03.814184" elapsed="0.000538"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:04.285314" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1818', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;18&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;18&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;18&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;18&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:04.285429" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:04.285570" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:03.814857" elapsed="0.470742"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:04.288005" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:04.285852" elapsed="0.002199"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5acc389d50&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:03.805007" elapsed="0.483127"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:03.804452" elapsed="0.483742"/>
</kw>
<var name="${flowfile}">f18.xml</var>
<status status="PASS" start="2026-05-25T01:54:03.791875" elapsed="0.496360"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:04.288749" level="INFO">f19.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:04.288495" elapsed="0.000298"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:04.292289" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f19.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f19.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:04.292456" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:04.292142" elapsed="0.000343"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:04.293082" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4e6a20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:04.292642" elapsed="0.000470"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:04.293552" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:04.293270" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:04.294002" level="INFO">${flow_id} = 142</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:04.293731" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:04.294469" level="INFO">${flow_priority} = 19</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:04.294196" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:04.295284" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:04.294645" elapsed="0.000720"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:04.295865" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:04.295533" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:04.296397" level="INFO">${flow_id} = 142</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:04.296080" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:04.296903" level="INFO">${flow_priority} = 19</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:04.296591" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:04.297416" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:04.297112" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:04.297924" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:04.297618" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:04.298446" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4e6a20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:04.298137" elapsed="0.000351"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:04.291767" elapsed="0.006775"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:04.299871" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;19&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;19&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:04.299622" elapsed="0.000307"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:04.300330" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;19&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;19&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:04.300084" elapsed="0.000301"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:04.300801" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc0931f0&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:04.300530" elapsed="0.000299"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:04.301259" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:04.300974" elapsed="0.000332"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:04.301805" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc092700&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:04.301450" elapsed="0.000382"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:04.302337" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc090900&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:04.301980" elapsed="0.000384"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:04.302510" elapsed="0.000263"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:04.302954" elapsed="0.000446"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:04.303555" elapsed="0.000240"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:04.303943" elapsed="0.000257"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:04.304349" elapsed="0.000235"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:04.304764" elapsed="0.000236"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:04.305165" elapsed="0.000332"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:04.305645" elapsed="0.000316"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:04.306121" elapsed="0.000331"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:04.306885" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc093f10&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:04.306605" elapsed="0.000308"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:04.307061" elapsed="0.000262"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:04.307870" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;19&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;19&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;19&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;19&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:04.307471" elapsed="0.000472"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:04.308543" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;19&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/t...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:04.308106" elapsed="0.000468"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:04.786518" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1587', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;19&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;19&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;19&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;19&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:04.786717" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:04.786975" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:04.308705" elapsed="0.478331"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:04.792132" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:04.787538" elapsed="0.004695"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5ace4e6a20&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:04.299228" elapsed="0.493143"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:04.298693" elapsed="0.493909"/>
</kw>
<var name="${flowfile}">f19.xml</var>
<status status="PASS" start="2026-05-25T01:54:04.288358" elapsed="0.504332"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:04.793817" level="INFO">f20.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:04.793250" elapsed="0.000666"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:04.798604" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f20.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f20.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:04.798764" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:04.798462" elapsed="0.000333"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:04.799396" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc092d90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:04.798949" elapsed="0.000476"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:04.799866" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:04.799582" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:04.800337" level="INFO">${flow_id} = 143</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:04.800047" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:04.800790" level="INFO">${flow_priority} = 20</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:04.800519" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:04.801567" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:04.800970" elapsed="0.000627"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:04.802113" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:04.801759" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:04.802617" level="INFO">${flow_id} = 143</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:04.802310" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:04.803135" level="INFO">${flow_priority} = 20</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:04.802810" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:04.803814" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:04.803340" elapsed="0.000520"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:04.804343" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:04.804014" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:04.804849" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc092d90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:04.804541" elapsed="0.000349"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:04.798108" elapsed="0.006836"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:04.806256" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;20&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;20&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xf0ff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:04.805993" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:04.806694" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;20&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;20&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xf0ff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:04.806453" elapsed="0.000331"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:04.807244" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc093c90&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:04.806932" elapsed="0.000339"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:04.807686" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:04.807420" elapsed="0.000313"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:04.808254" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc0933d0&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:04.807878" elapsed="0.000403"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:04.808771" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc4da930&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:04.808429" elapsed="0.000369"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:04.808944" elapsed="0.000280"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:04.809374" elapsed="0.000256"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:04.809782" elapsed="0.000236"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:04.810182" elapsed="0.000235"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:04.810564" elapsed="0.000234"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:04.810945" elapsed="0.000260"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:04.811352" elapsed="0.000326"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:04.811823" elapsed="0.000331"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:04.812301" elapsed="0.000328"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:04.813047" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfa14fe0&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:04.812781" elapsed="0.000307"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:04.813239" elapsed="0.000245"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:04.814034" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;20&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;20&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xf0ff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;20&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;20&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xf0ff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:04.813631" elapsed="0.000489"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:04.814705" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;20&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/t...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:04.814268" elapsed="0.000467"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:05.287776" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1633', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;20&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;20&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xf0ff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;20&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;20&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xf0ff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:05.288116" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:05.288386" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:04.814867" elapsed="0.473580"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:05.293821" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:05.288895" elapsed="0.005025"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5acc092d90&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:04.805603" elapsed="0.488452"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:04.805114" elapsed="0.489100"/>
</kw>
<var name="${flowfile}">f20.xml</var>
<status status="PASS" start="2026-05-25T01:54:04.792926" elapsed="0.501373"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:05.295475" level="INFO">f21.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:05.294833" elapsed="0.000794"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:05.299376" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:05.299558" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:05.299230" elapsed="0.000358"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:05.300205" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfa17e70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:05.299743" elapsed="0.000491"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:05.300669" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:05.300388" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:05.301128" level="INFO">${flow_id} = 144</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:05.300844" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:05.301576" level="INFO">${flow_priority} = 21</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:05.301306" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:05.302487" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:05.301752" elapsed="0.000766"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:05.303011" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:05.302681" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:05.303568" level="INFO">${flow_id} = 144</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:05.303227" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:05.304094" level="INFO">${flow_priority} = 21</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:05.303764" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:05.304594" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:05.304291" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:05.305116" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:05.304791" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:05.305625" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfa17e70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:05.305317" elapsed="0.000350"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:05.298854" elapsed="0.006868"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:05.307027" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:05.306775" elapsed="0.000364"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:05.307542" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:05.307284" elapsed="0.000319"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:05.308019" level="INFO">${xml} = &lt;Element 'input' at 0x7f5abfa15d00&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:05.307750" elapsed="0.000296"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:05.308484" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:05.308210" elapsed="0.000320"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:05.309053" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5abfa155d0&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:05.308676" elapsed="0.000419"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:05.311046" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc4d8c20&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:05.309246" elapsed="0.001842"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:05.311239" elapsed="0.000269"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:05.311685" elapsed="0.000261"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:05.312114" elapsed="0.000240"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:05.312503" elapsed="0.000235"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:05.312885" elapsed="0.000251"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:05.313283" elapsed="0.000233"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:05.313662" elapsed="0.000349"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:05.314172" elapsed="0.000346"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:05.314665" elapsed="0.000330"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:05.315433" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc091b70&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:05.315165" elapsed="0.000295"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:05.315620" elapsed="0.000252"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:05.316507" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:05.316019" elapsed="0.000606"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:05.317293" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/t...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:05.316773" elapsed="0.000551"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:05.788741" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2488', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:05.788967" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:05.789288" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:05.317455" elapsed="0.471895"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:05.794481" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:05.789808" elapsed="0.004772"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5abfa17e70&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:05.306383" elapsed="0.488337"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:05.305874" elapsed="0.488970"/>
</kw>
<var name="${flowfile}">f21.xml</var>
<status status="PASS" start="2026-05-25T01:54:05.294543" elapsed="0.500387"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:05.796163" level="INFO">f22.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:05.795494" elapsed="0.000773"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:05.800249" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f22.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f22.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:05.800413" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:05.800102" elapsed="0.000340"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:05.801035" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc0936a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:05.800594" elapsed="0.000469"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:05.801520" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:05.801236" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:05.801973" level="INFO">${flow_id} = 145</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:05.801700" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:05.802508" level="INFO">${flow_priority} = 22</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:05.802231" elapsed="0.000303"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:05.803600" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:05.802689" elapsed="0.000942"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:05.804195" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:05.803796" elapsed="0.000444"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:05.804711" level="INFO">${flow_id} = 145</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:05.804398" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:05.805245" level="INFO">${flow_priority} = 22</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:05.804908" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:05.805745" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:05.805440" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:05.806271" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:05.805944" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:05.806782" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc0936a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:05.806472" elapsed="0.000352"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:05.799695" elapsed="0.007185"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:05.808250" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;22&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;22&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:05.807969" elapsed="0.000343"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:05.808697" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;22&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;22&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:05.808455" elapsed="0.000303"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:05.809190" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc092ed0&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:05.808903" elapsed="0.000315"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:05.809629" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:05.809365" elapsed="0.000310"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:05.810254" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc0911c0&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:05.809855" elapsed="0.000427"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:05.810805" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc093e20&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:05.810431" elapsed="0.000401"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:05.810980" elapsed="0.000292"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:05.811422" elapsed="0.000255"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:05.811828" elapsed="0.000295"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:05.812272" elapsed="0.000236"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:05.812656" elapsed="0.000239"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:05.813042" elapsed="0.000248"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:05.813439" elapsed="0.000349"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:05.813935" elapsed="0.000362"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:05.814444" elapsed="0.000329"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:05.815212" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5ace4eb600&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:05.814925" elapsed="0.000313"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:05.815388" elapsed="0.000350"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:05.816417" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;22&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;22&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;22&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;22&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:05.815899" elapsed="0.000599"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:05.817165" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;22&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/t...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:05.816645" elapsed="0.000551"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:06.289850" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2484', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;22&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;22&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;22&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;22&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:06.290215" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:06.290481" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:05.817326" elapsed="0.473216"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:06.295698" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:06.290990" elapsed="0.004810"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5acc0936a0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:05.807542" elapsed="0.488396"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:05.807031" elapsed="0.489034"/>
</kw>
<var name="${flowfile}">f22.xml</var>
<status status="PASS" start="2026-05-25T01:54:05.795200" elapsed="0.500987"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:06.297355" level="INFO">f23.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:06.296746" elapsed="0.000712"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:06.302889" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f23.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f23.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:06.303048" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:06.302744" elapsed="0.000348"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:06.303701" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38ba60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:06.303248" elapsed="0.000481"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:06.304190" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:06.303885" elapsed="0.000331"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:06.304667" level="INFO">${flow_id} = 146</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:06.304390" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:06.305135" level="INFO">${flow_priority} = 23</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:06.304846" elapsed="0.000316"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:06.306079" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:06.305316" elapsed="0.000797"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:06.306606" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:06.306276" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:06.307129" level="INFO">${flow_id} = 146</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:06.306803" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:06.307641" level="INFO">${flow_priority} = 23</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:06.307326" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:06.308154" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:06.307836" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:06.308724" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:06.308404" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:06.309249" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38ba60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:06.308922" elapsed="0.000369"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:06.302385" elapsed="0.006962"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:06.310659" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;23&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;23&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:06.310408" elapsed="0.000360"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:06.311180" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;23&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;23&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:06.310915" elapsed="0.000327"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:06.311664" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc38ba10&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:06.311391" elapsed="0.000301"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:06.312316" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:06.311841" elapsed="0.000529"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:06.312914" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc3880e0&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:06.312521" elapsed="0.000421"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:06.313496" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc38bdd0&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:06.313115" elapsed="0.000408"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:06.313675" elapsed="0.000267"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:06.314110" elapsed="0.000260"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:06.314524" elapsed="0.000239"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:06.314912" elapsed="0.000252"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:06.315314" elapsed="0.000238"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:06.315699" elapsed="0.000233"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:06.316095" elapsed="0.000390"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:06.316640" elapsed="0.000350"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:06.317154" elapsed="0.000330"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:06.317902" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc4e5490&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:06.317638" elapsed="0.000291"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:06.318094" elapsed="0.000248"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:06.318981" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;23&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;23&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;23&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;23&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:06.318488" elapsed="0.000622"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:06.319777" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;23&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/t...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:06.319260" elapsed="0.000547"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:06.790570" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2654', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;23&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;23&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;23&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;23&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:06.790790" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:06.791040" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:06.319938" elapsed="0.471194"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:06.796517" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:06.791575" elapsed="0.005075"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5acc38ba60&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:06.309991" elapsed="0.486803"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:06.309499" elapsed="0.487424"/>
</kw>
<var name="${flowfile}">f23.xml</var>
<status status="PASS" start="2026-05-25T01:54:06.296451" elapsed="0.500559"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:06.798188" level="INFO">f24.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:06.797579" elapsed="0.000714"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:06.803303" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f24.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f24.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:06.803467" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:06.803157" elapsed="0.000340"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:06.804063" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e54e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:06.803649" elapsed="0.000459"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:06.804546" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:06.804264" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:06.805104" level="INFO">${flow_id} = 147</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:06.804798" elapsed="0.000333"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:06.805580" level="INFO">${flow_priority} = 24</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:06.805286" elapsed="0.000320"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:06.806384" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:06.805759" elapsed="0.000656"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:06.806901" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:06.806577" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:06.807426" level="INFO">${flow_id} = 147</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:06.807116" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:06.807926" level="INFO">${flow_priority} = 24</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:06.807617" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:06.808437" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:06.808136" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:06.808949" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:06.808643" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:06.809467" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e54e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:06.809158" elapsed="0.000350"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:06.802786" elapsed="0.006777"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:06.810867" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;24&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;24&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                        &lt;output-action&gt;
                        &lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:06.810620" elapsed="0.000304"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:06.811322" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;24&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;24&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                        &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:06.811079" elapsed="0.000297"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:06.811789" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc4e5a30&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:06.811521" elapsed="0.000296"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:06.812242" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:06.811961" elapsed="0.000328"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:06.812812" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5ace952890&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:06.812435" elapsed="0.000404"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:06.813349" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5abfc1c770&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:06.812988" elapsed="0.000388"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:06.813524" elapsed="0.000262"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:06.813969" elapsed="0.000415"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:06.814538" elapsed="0.000241"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:06.814927" elapsed="0.000258"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:06.815335" elapsed="0.000237"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:06.815720" elapsed="0.000234"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:06.816116" elapsed="0.000326"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:06.816604" elapsed="0.000319"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:06.817083" elapsed="0.000330"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:06.817833" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc4e7b50&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:06.817567" elapsed="0.000293"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:06.818008" elapsed="0.000262"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:06.818809" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;24&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;24&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                        &lt;output-action&gt;
                        &lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;24&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;24&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                        &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:06.818417" elapsed="0.000460"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:06.819467" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;24&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/t...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:06.819021" elapsed="0.000477"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:07.290003" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1535', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;24&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;24&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                        &lt;output-action&gt;
                        &lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;24&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;24&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                        &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:07.290141" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:07.290293" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:06.819628" elapsed="0.470764"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:07.292804" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:07.290653" elapsed="0.002197"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5acc4e54e0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:06.810228" elapsed="0.482689"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:06.809714" elapsed="0.483286"/>
</kw>
<var name="${flowfile}">f24.xml</var>
<status status="PASS" start="2026-05-25T01:54:06.797283" elapsed="0.495758"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:07.293566" level="INFO">f25.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:07.293311" elapsed="0.000300"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:07.297142" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f25.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f25.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:07.297309" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:07.296973" elapsed="0.000365"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:07.297951" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1f380&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:07.297492" elapsed="0.000487"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:07.298436" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:07.298150" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:07.298884" level="INFO">${flow_id} = 148</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:07.298614" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:07.299349" level="INFO">${flow_priority} = 25</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:07.299062" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:07.300475" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:07.299527" elapsed="0.000980"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:07.301011" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:07.300669" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:07.301542" level="INFO">${flow_id} = 148</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:07.301227" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:07.302051" level="INFO">${flow_priority} = 25</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:07.301737" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:07.302569" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:07.302262" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:07.303095" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:07.302767" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:07.303604" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1f380&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:07.303296" elapsed="0.000350"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:07.296576" elapsed="0.007126"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:07.305036" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;25&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;25&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:07.304758" elapsed="0.000401"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:07.305554" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;25&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;25&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:07.305307" elapsed="0.000309"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:07.306031" level="INFO">${xml} = &lt;Element 'input' at 0x7f5abfc1cf90&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:07.305763" elapsed="0.000295"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:07.306490" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:07.306223" elapsed="0.000314"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:07.307097" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5abfc1de40&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:07.306685" elapsed="0.000441"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:07.307665" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5abff7f9c0&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:07.307280" elapsed="0.000413"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:07.307842" elapsed="0.000285"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:07.308281" elapsed="0.000260"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:07.308694" elapsed="0.000254"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:07.309120" elapsed="0.000249"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:07.309519" elapsed="0.000239"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:07.309906" elapsed="0.000253"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:07.310307" elapsed="0.000363"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:07.310819" elapsed="0.000375"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:07.311345" elapsed="0.000332"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:07.312221" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc307290&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:07.311830" elapsed="0.000419"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:07.312401" elapsed="0.000249"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:07.313343" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;25&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;25&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;25&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;25&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:07.312799" elapsed="0.000666"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:07.314157" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;25&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/t...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:07.313613" elapsed="0.000576"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:07.791878" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2704', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;25&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;25&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;25&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;25&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:07.792152" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:07.792411" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:07.314323" elapsed="0.478149"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:07.797577" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:07.792913" elapsed="0.004763"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5abfc1f380&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:07.304364" elapsed="0.493451"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:07.303852" elapsed="0.494088"/>
</kw>
<var name="${flowfile}">f25.xml</var>
<status status="PASS" start="2026-05-25T01:54:07.293175" elapsed="0.504852"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:07.799395" level="INFO">f31.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:07.798586" elapsed="0.000913"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:07.804386" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f31.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f31.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:07.804553" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:07.804239" elapsed="0.000343"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:07.805179" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc305850&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:07.804735" elapsed="0.000472"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:07.805679" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:07.805392" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:07.806215" level="INFO">${flow_id} = 154</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:07.805917" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:07.806672" level="INFO">${flow_priority} = 31</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:07.806395" elapsed="0.000303"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:07.807541" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:07.806856" elapsed="0.000716"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:07.808064" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:07.807734" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:07.808587" level="INFO">${flow_id} = 154</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:07.808276" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:07.809109" level="INFO">${flow_priority} = 31</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:07.808781" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:07.809646" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:07.809319" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:07.810164" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:07.809842" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:07.810670" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc305850&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:07.810363" elapsed="0.000348"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:07.803861" elapsed="0.006907"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:07.812093" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;154&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;31&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf31&lt;/flow-name&gt;
    &lt;priority&gt;31&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:07.811831" elapsed="0.000323"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:07.812541" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;154&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;31&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf31&lt;/flow-name&gt;
    &lt;priority&gt;31&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:07.812297" elapsed="0.000302"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:07.813021" level="INFO">${xml} = &lt;Element 'input' at 0x7f5abfc77c90&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:07.812744" elapsed="0.000304"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:07.813704" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:07.813211" elapsed="0.000542"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:07.814463" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5abfc75580&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:07.813901" elapsed="0.000590"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:07.815049" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5abfc77c40&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:07.814640" elapsed="0.000453"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:07.815242" elapsed="0.000266"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:07.815657" elapsed="0.000257"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:07.816078" elapsed="0.000241"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:07.816465" elapsed="0.000234"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:07.816846" elapsed="0.000251"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:07.817245" elapsed="0.000248"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:07.817640" elapsed="0.000334"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:07.818135" elapsed="0.000327"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:07.818607" elapsed="0.000325"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:07.819370" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc3eed90&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:07.819104" elapsed="0.000293"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:07.819545" elapsed="0.000241"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:07.820387" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;31&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf31&lt;/flow-name&gt;
    &lt;priority&gt;31&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;31&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf31&lt;/flow-name&gt;
    &lt;priority&gt;31&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:07.819930" elapsed="0.000530"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:07.821083" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
              ...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:07.820604" elapsed="0.000511"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:08.292798" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1962', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;31&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf31&lt;/flow-name&gt;
    &lt;priority&gt;31&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;31&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf31&lt;/flow-name&gt;
    &lt;priority&gt;31&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:08.293148" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:08.293417" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:07.821245" elapsed="0.472233"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:08.298559" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:08.293951" elapsed="0.004709"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5acc305850&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:07.811438" elapsed="0.487362"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:07.810919" elapsed="0.488007"/>
</kw>
<var name="${flowfile}">f31.xml</var>
<status status="PASS" start="2026-05-25T01:54:07.798296" elapsed="0.500719"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:08.300179" level="INFO">f36.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:08.299580" elapsed="0.000703"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:08.304779" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f36.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f36.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:08.304944" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:08.304634" elapsed="0.000340"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:08.305576" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ef600&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:08.305147" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:08.306060" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:08.305772" elapsed="0.000331"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:08.306542" level="INFO">${flow_id} = 159</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:08.306266" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:08.306988" level="INFO">${flow_priority} = 36</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:08.306719" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:08.307985" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:08.307180" elapsed="0.000835"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:08.308526" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:08.308194" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:08.309031" level="INFO">${flow_id} = 159</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:08.308722" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:08.309556" level="INFO">${flow_priority} = 36</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:08.309241" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:08.310095" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:08.309776" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:08.310602" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:08.310294" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:08.311125" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3ef600&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:08.310798" elapsed="0.000369"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:08.304277" elapsed="0.006945"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:08.312523" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;ip-match&gt;
                            &lt;ip-dscp&gt;1&lt;/ip-dscp&gt;
                        &lt;/ip-match&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;159&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;36&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf36&lt;/flow-name&gt;
    &lt;priority&gt;36&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:08.312277" elapsed="0.000344"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:08.313011" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;159&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;36&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf36&lt;/flow-name&gt;
    &lt;priority&gt;36&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:08.312766" elapsed="0.000316"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:08.313503" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc3ee890&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:08.313232" elapsed="0.000298"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:08.313961" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:08.313690" elapsed="0.000318"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:08.314533" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc3ecc20&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:08.314170" elapsed="0.000391"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:08.315053" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc3ed0d0&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:08.314708" elapsed="0.000388"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:08.315245" elapsed="0.000266"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:08.315661" elapsed="0.000255"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:08.316084" elapsed="0.000241"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:08.316472" elapsed="0.000233"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:08.316854" elapsed="0.000256"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:08.317258" elapsed="0.000234"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:08.317661" elapsed="0.000346"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:08.318170" elapsed="0.000324"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:08.318640" elapsed="0.000326"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:08.319401" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfcbf510&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:08.319134" elapsed="0.000294"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:08.319578" elapsed="0.000246"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:08.320524" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;ip-match&gt;
                            &lt;ip-dscp&gt;1&lt;/ip-dscp&gt;
                        &lt;/ip-match&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;36&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf36&lt;/flow-name&gt;
    &lt;priority&gt;36&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;36&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf36&lt;/flow-name&gt;
    &lt;priority&gt;36&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:08.319970" elapsed="0.000658"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:08.321254" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
              ...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:08.320777" elapsed="0.000508"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:08.793701" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1868', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;ip-match&gt;
                            &lt;ip-dscp&gt;1&lt;/ip-dscp&gt;
                        &lt;/ip-match&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;36&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf36&lt;/flow-name&gt;
    &lt;priority&gt;36&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;36&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf36&lt;/flow-name&gt;
    &lt;priority&gt;36&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:08.793908" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:08.794233" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:08.321418" elapsed="0.472878"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:08.799357" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:08.794751" elapsed="0.004709"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5acc3ef600&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:08.311864" elapsed="0.487738"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:08.311373" elapsed="0.488355"/>
</kw>
<var name="${flowfile}">f36.xml</var>
<status status="PASS" start="2026-05-25T01:54:08.299288" elapsed="0.500527"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:08.800950" level="INFO">f38.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:08.800381" elapsed="0.000672"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:08.805694" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f38.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f38.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:08.805858" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:08.805550" elapsed="0.000337"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:08.806506" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfa14e50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:08.806054" elapsed="0.000482"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:08.806976" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:08.806693" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:08.807444" level="INFO">${flow_id} = 161</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:08.807171" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:08.807894" level="INFO">${flow_priority} = 38</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:08.807622" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:08.808728" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:08.808084" elapsed="0.000730"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:08.809332" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:08.808980" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:08.809843" level="INFO">${flow_id} = 161</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:08.809532" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:08.810404" level="INFO">${flow_priority} = 38</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:08.810085" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:08.810903" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:08.810600" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:08.811427" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:08.811116" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:08.811934" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfa14e50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:08.811625" elapsed="0.000351"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:08.805194" elapsed="0.006840"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:08.813357" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-queue-action&gt;
                        &lt;queue-id&gt;1&lt;/queue-id&gt;
                    &lt;/set-queue-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;161&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;38&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf38&lt;/flow-name&gt;
    &lt;priority&gt;38&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:08.813107" elapsed="0.000310"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:08.813801" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;161&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;38&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf38&lt;/flow-name&gt;
    &lt;priority&gt;38&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:08.813559" elapsed="0.000300"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:08.814316" level="INFO">${xml} = &lt;Element 'input' at 0x7f5abfa16200&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:08.814023" elapsed="0.000321"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:08.814753" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:08.814490" elapsed="0.000309"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:08.815483" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5abfa17bf0&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:08.814944" elapsed="0.000567"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:08.816017" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5abfa176f0&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:08.815662" elapsed="0.000383"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:08.816208" elapsed="0.000266"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:08.816623" elapsed="0.000255"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:08.817028" elapsed="0.000254"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:08.817458" elapsed="0.000236"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:08.817842" elapsed="0.000282"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:08.818273" elapsed="0.000238"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:08.818657" elapsed="0.000335"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:08.819154" elapsed="0.000327"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:08.819627" elapsed="0.000326"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:08.820390" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc3bd170&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:08.820123" elapsed="0.000293"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:08.820565" elapsed="0.000244"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:08.821410" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-queue-action&gt;
                        &lt;queue-id&gt;1&lt;/queue-id&gt;
                    &lt;/set-queue-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;38&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf38&lt;/flow-name&gt;
    &lt;priority&gt;38&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;38&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf38&lt;/flow-name&gt;
    &lt;priority&gt;38&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:08.820958" elapsed="0.000528"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:08.822123" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
      ...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:08.821630" elapsed="0.000523"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:09.294500" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1973', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-queue-action&gt;
                        &lt;queue-id&gt;1&lt;/queue-id&gt;
                    &lt;/set-queue-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;38&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf38&lt;/flow-name&gt;
    &lt;priority&gt;38&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;38&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf38&lt;/flow-name&gt;
    &lt;priority&gt;38&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:09.294760" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:09.294997" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:08.822283" elapsed="0.472775"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:09.300017" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:09.295498" elapsed="0.004646"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5abfa14e50&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:08.812698" elapsed="0.487581"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:08.812207" elapsed="0.488192"/>
</kw>
<var name="${flowfile}">f38.xml</var>
<status status="PASS" start="2026-05-25T01:54:08.800054" elapsed="0.500430"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:09.301588" level="INFO">f43.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:09.301000" elapsed="0.000689"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:09.306009" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f43.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f43.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:09.306175" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:09.305710" elapsed="0.000496"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:09.306798" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3bd8a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:09.306373" elapsed="0.000453"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:09.307281" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:09.306981" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:09.307734" level="INFO">${flow_id} = 166</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:09.307462" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:09.308210" level="INFO">${flow_priority} = 43</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:09.307912" elapsed="0.000325"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:09.310602" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:09.308388" elapsed="0.002245"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:09.311147" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:09.310797" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:09.311659" level="INFO">${flow_id} = 166</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:09.311347" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:09.312182" level="INFO">${flow_priority} = 43</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:09.311852" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:09.312684" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:09.312376" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:09.313214" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:09.312881" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:09.313730" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3bd8a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:09.313414" elapsed="0.000358"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:09.305362" elapsed="0.008467"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:09.315172" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;166&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;43&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf43&lt;/flow-name&gt;
    &lt;priority&gt;43&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:09.314893" elapsed="0.000377"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:09.315661" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;166&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;43&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf43&lt;/flow-name&gt;
    &lt;priority&gt;43&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:09.315415" elapsed="0.000305"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:09.316160" level="INFO">${xml} = &lt;Element 'input' at 0x7f5abfa15170&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:09.315867" elapsed="0.000320"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:09.316597" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:09.316333" elapsed="0.000313"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:09.317176" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5abfa141d0&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:09.316790" elapsed="0.000414"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:09.317713" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5abfa16de0&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:09.317354" elapsed="0.000386"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:09.317885" elapsed="0.000276"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:09.318334" elapsed="0.000260"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:09.318745" elapsed="0.000238"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:09.319150" elapsed="0.000235"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:09.319532" elapsed="0.000233"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:09.319910" elapsed="0.000247"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:09.320302" elapsed="0.000344"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:09.320791" elapsed="0.000353"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:09.321290" elapsed="0.000326"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:09.322029" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfcbf290&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:09.321766" elapsed="0.000290"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:09.322220" elapsed="0.000256"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:09.323205" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;43&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf43&lt;/flow-name&gt;
    &lt;priority&gt;43&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;43&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf43&lt;/flow-name&gt;
    &lt;priority&gt;43&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:09.322621" elapsed="0.000693"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:09.323953" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
              ...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:09.323463" elapsed="0.000521"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:09.795904" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2178', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;43&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf43&lt;/flow-name&gt;
    &lt;priority&gt;43&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;43&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf43&lt;/flow-name&gt;
    &lt;priority&gt;43&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:09.796167" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:09.796459" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:09.324129" elapsed="0.472389"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:09.801651" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:09.796969" elapsed="0.004785"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5acc3bd8a0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:09.314503" elapsed="0.487389"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:09.313979" elapsed="0.488038"/>
</kw>
<var name="${flowfile}">f43.xml</var>
<status status="PASS" start="2026-05-25T01:54:09.300715" elapsed="0.501416"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:09.803282" level="INFO">f45.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:09.802688" elapsed="0.000692"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:09.808969" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f45.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f45.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:09.809157" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:09.808821" elapsed="0.000365"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:09.809774" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3eeac0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:09.809341" elapsed="0.000461"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:09.810260" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:09.809958" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:09.810728" level="INFO">${flow_id} = 168</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:09.810438" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:09.811255" level="INFO">${flow_priority} = 45</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:09.810904" elapsed="0.000377"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:09.812153" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:09.811490" elapsed="0.000694"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:09.812679" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:09.812346" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:09.813206" level="INFO">${flow_id} = 168</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:09.812877" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:09.813720" level="INFO">${flow_priority} = 45</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:09.813404" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:09.814237" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:09.813915" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:09.814773" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:09.814434" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:09.815301" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3eeac0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:09.814973" elapsed="0.000369"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:09.808452" elapsed="0.006948"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:09.816728" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;168&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;1180719718&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xfff0ffff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
    &lt;cookie&gt;45&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf45&lt;/flow-name&gt;
    &lt;priority&gt;45&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:09.816480" elapsed="0.000306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:09.817190" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;168&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;1180719718&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xfff0ffff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
    &lt;cookie&gt;45&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf45&lt;/flow-name&gt;
    &lt;priority&gt;45&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:09.816928" elapsed="0.000320"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:09.817666" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc3ed710&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:09.817393" elapsed="0.000300"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:09.818121" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:09.817839" elapsed="0.000330"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:09.818689" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc3ed120&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:09.818313" elapsed="0.000412"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:09.819420" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc3ecf90&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:09.818873" elapsed="0.000574"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:09.819594" elapsed="0.000269"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:09.820013" elapsed="0.000277"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:09.820521" elapsed="0.000241"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:09.820908" elapsed="0.000252"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:09.821307" elapsed="0.000236"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:09.821690" elapsed="0.000231"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:09.822084" elapsed="0.000332"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:09.822564" elapsed="0.000361"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:09.823088" elapsed="0.000333"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:09.823840" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfc76f70&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:09.823574" elapsed="0.000292"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:09.824014" elapsed="0.000261"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:09.824857" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;1180719718&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xfff0ffff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
    &lt;cookie&gt;45&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf45&lt;/flow-name&gt;
    &lt;priority&gt;45&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;1180719718&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xfff0ffff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
    &lt;cookie&gt;45&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf45&lt;/flow-name&gt;
    &lt;priority&gt;45&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:09.824423" elapsed="0.000506"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:09.825555" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
      ...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:09.825089" elapsed="0.000497"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:10.295789" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1854', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;1180719718&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xfff0ffff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
    &lt;cookie&gt;45&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf45&lt;/flow-name&gt;
    &lt;priority&gt;45&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;1180719718&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xfff0ffff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
    &lt;cookie&gt;45&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf45&lt;/flow-name&gt;
    &lt;priority&gt;45&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:10.296170" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:10.296476" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:09.825721" elapsed="0.470819"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:10.301398" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:10.297044" elapsed="0.004421"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5acc3eeac0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:09.816078" elapsed="0.485487"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:09.815553" elapsed="0.486098"/>
</kw>
<var name="${flowfile}">f45.xml</var>
<status status="PASS" start="2026-05-25T01:54:09.802378" elapsed="0.499331"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:10.302483" level="INFO">f101.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:10.302104" elapsed="0.000445"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:10.307780" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f101.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f101.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:10.308006" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:10.307568" elapsed="0.000467"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:10.308670" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc76070&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:10.308209" elapsed="0.000490"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:10.309153" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:10.308854" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:10.309608" level="INFO">${flow_id} = 224</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:10.309336" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:10.310056" level="INFO">${flow_priority} = 101</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:10.309787" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:10.311242" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:10.310251" elapsed="0.001023"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:10.311778" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:10.311440" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:10.312302" level="INFO">${flow_id} = 224</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:10.311974" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:10.312810" level="INFO">${flow_priority} = 101</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:10.312496" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:10.313319" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:10.313000" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:10.313819" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:10.313515" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:10.314339" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc76070&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:10.314014" elapsed="0.000367"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:10.307020" elapsed="0.007418"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:10.315827" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;101&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;101&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:10.315575" elapsed="0.000384"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:10.316366" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;101&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;101&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:10.316120" elapsed="0.000306"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:10.316855" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc306610&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:10.316573" elapsed="0.000310"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:10.317319" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:10.317030" elapsed="0.000336"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:10.317905" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc3053f0&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:10.317511" elapsed="0.000422"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:10.318479" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc304220&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:10.318099" elapsed="0.000407"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:10.318653" elapsed="0.000267"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:10.319102" elapsed="0.000260"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:10.319516" elapsed="0.000238"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:10.319902" elapsed="0.000252"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:10.320303" elapsed="0.000237"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:10.320685" elapsed="0.000234"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:10.321080" elapsed="0.000366"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:10.321592" elapsed="0.000346"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:10.322104" elapsed="0.000454"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:10.322981" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abff7d2b0&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:10.322713" elapsed="0.000325"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:10.323206" elapsed="0.000250"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:10.324132" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;101&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;101&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;101&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;101&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:10.323603" elapsed="0.000661"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:10.324930" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;101&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:10.324414" elapsed="0.000547"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:10.797875" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2657', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;101&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;101&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;101&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;101&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:10.798129" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:10.798397" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:10.325118" elapsed="0.473339"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:10.803609" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:10.798907" elapsed="0.004801"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5abfc76070&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:10.315165" elapsed="0.488683"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:10.314593" elapsed="0.489380"/>
</kw>
<var name="${flowfile}">f101.xml</var>
<status status="PASS" start="2026-05-25T01:54:10.301880" elapsed="0.502184"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:10.805221" level="INFO">f102.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:10.804632" elapsed="0.000688"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:10.810604" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f102.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f102.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:10.810785" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:10.810456" elapsed="0.000358"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:10.811474" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace9522a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:10.810972" elapsed="0.000530"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:10.811940" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:10.811658" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:10.812474" level="INFO">${flow_id} = 225</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:10.812135" elapsed="0.000365"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:10.812926" level="INFO">${flow_priority} = 102</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:10.812652" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:10.813930" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:10.813118" elapsed="0.000843"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:10.814483" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:10.814148" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:10.814987" level="INFO">${flow_id} = 225</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:10.814681" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:10.815552" level="INFO">${flow_priority} = 102</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:10.815198" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:10.816048" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:10.815748" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:10.816571" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:10.816265" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:10.817096" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace9522a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:10.816770" elapsed="0.000369"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:10.810082" elapsed="0.007116"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:10.818556" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;102&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;102&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:10.818308" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:10.819234" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;102&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;102&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:10.818763" elapsed="0.000534"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:10.819787" level="INFO">${xml} = &lt;Element 'input' at 0x7f5abfc1c090&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:10.819501" elapsed="0.000314"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:10.820259" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:10.819963" elapsed="0.000343"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:10.820848" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5abfc1db20&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:10.820455" elapsed="0.000421"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:10.821421" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5abfc1c6d0&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:10.821026" elapsed="0.000423"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:10.821597" elapsed="0.000275"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:10.822023" elapsed="0.000274"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:10.822449" elapsed="0.000238"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:10.822834" elapsed="0.000250"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:10.823237" elapsed="0.000272"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:10.823669" elapsed="0.000233"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:10.824049" elapsed="0.000388"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:10.824585" elapsed="0.000356"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:10.825103" elapsed="0.000334"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:10.825858" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc4e7560&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:10.825591" elapsed="0.000294"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:10.826040" elapsed="0.000265"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:10.826970" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;102&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;102&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;102&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;102&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:10.826453" elapsed="0.000606"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:10.827813" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;102&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:10.827264" elapsed="0.000581"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:11.298912" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2911', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;102&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;102&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;102&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;102&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:11.299207" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:11.299478" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:10.827983" elapsed="0.471560"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:11.305135" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:11.300056" elapsed="0.005183"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5ace9522a0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:10.817884" elapsed="0.487496"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:10.817354" elapsed="0.488151"/>
</kw>
<var name="${flowfile}">f102.xml</var>
<status status="PASS" start="2026-05-25T01:54:10.804337" elapsed="0.501255"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:11.306739" level="INFO">f103.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:11.306161" elapsed="0.000680"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:11.311013" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f103.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f103.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:11.311195" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:11.310868" elapsed="0.000357"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:11.311863" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e4400&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:11.311379" elapsed="0.000513"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:11.312354" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:11.312050" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:11.312870" level="INFO">${flow_id} = 226</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:11.312592" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:11.313343" level="INFO">${flow_priority} = 103</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:11.313050" elapsed="0.000319"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:11.314303" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:11.313522" elapsed="0.000812"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:11.314836" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:11.314503" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:11.315360" level="INFO">${flow_id} = 226</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:11.315032" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:11.315911" level="INFO">${flow_priority} = 103</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:11.315555" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:11.316426" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:11.316122" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:11.316932" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:11.316623" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:11.317456" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e4400&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:11.317144" elapsed="0.000354"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:11.310511" elapsed="0.007044"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:11.318853" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;103&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;103&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;1&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:11.318603" elapsed="0.000315"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:11.319348" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;103&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;103&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:11.319060" elapsed="0.000353"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:11.319911" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc35b6f0&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:11.319596" elapsed="0.000343"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:11.320382" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:11.320109" elapsed="0.000322"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:11.321240" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc358f40&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:11.320630" elapsed="0.000638"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:11.321817" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc359300&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:11.321427" elapsed="0.000418"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:11.321997" elapsed="0.000295"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:11.322447" elapsed="0.000269"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:11.322874" elapsed="0.000264"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:11.323290" elapsed="0.000245"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:11.323720" elapsed="0.000265"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:11.324151" elapsed="0.000243"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:11.324543" elapsed="0.000370"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:11.325079" elapsed="0.000362"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:11.325592" elapsed="0.000335"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:11.326371" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc4e7f10&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:11.326097" elapsed="0.000301"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:11.326550" elapsed="0.000248"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:11.327472" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;103&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;103&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;1&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;103&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;103&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:11.326945" elapsed="0.000612"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:11.328336" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;103&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:11.327774" elapsed="0.000593"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:11.799138" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2905', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;103&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;103&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;1&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;103&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;103&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:11.799371" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:11.799662" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:11.328500" elapsed="0.471243"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:11.805222" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:11.800291" elapsed="0.005049"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5acc4e4400&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:11.318212" elapsed="0.487303"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:11.317706" elapsed="0.487978"/>
</kw>
<var name="${flowfile}">f103.xml</var>
<status status="PASS" start="2026-05-25T01:54:11.305834" elapsed="0.499970"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:11.807036" level="INFO">f104.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:11.806455" elapsed="0.000737"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:11.811742" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f104.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f104.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:11.811914" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:11.811597" elapsed="0.000348"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:11.812585" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe68f40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:11.812133" elapsed="0.000481"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:11.813056" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:11.812771" elapsed="0.000380"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:11.813588" level="INFO">${flow_id} = 227</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:11.813310" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:11.814250" level="INFO">${flow_priority} = 104</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:11.813768" elapsed="0.000509"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:11.815186" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:11.814431" elapsed="0.000786"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:11.815708" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:11.815378" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:11.816263" level="INFO">${flow_id} = 227</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:11.815903" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:11.816776" level="INFO">${flow_priority} = 104</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:11.816461" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:11.817288" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:11.816969" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:11.817794" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:11.817486" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:11.818320" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe68f40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:11.817992" elapsed="0.000371"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:11.811235" elapsed="0.007184"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:11.819726" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;104&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;104&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:11.819478" elapsed="0.000313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:11.820222" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;104&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;104&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:11.819933" elapsed="0.000351"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:11.820739" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc0901d0&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:11.820430" elapsed="0.000336"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:11.821197" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:11.820914" elapsed="0.000331"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:11.821783" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc090270&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:11.821392" elapsed="0.000419"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:11.822359" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc0932e0&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:11.821963" elapsed="0.000423"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:11.822536" elapsed="0.000264"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:11.822951" elapsed="0.000275"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:11.823379" elapsed="0.000239"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:11.823766" elapsed="0.000250"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:11.824179" elapsed="0.000237"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:11.824561" elapsed="0.000232"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:11.824938" elapsed="0.000500"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:11.825587" elapsed="0.000346"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:11.826095" elapsed="0.000332"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:11.826845" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc3bce50&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:11.826579" elapsed="0.000292"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:11.827020" elapsed="0.000262"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:11.827912" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;104&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;104&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;104&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;104&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:11.827428" elapsed="0.000593"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:11.828691" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;104&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:11.828183" elapsed="0.000568"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:12.301371" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2657', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;104&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;104&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;104&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;104&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:12.301592" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:12.301846" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:11.828884" elapsed="0.473020"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:12.306998" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:12.302377" elapsed="0.004748"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5abfe68f40&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:11.819063" elapsed="0.488203"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:11.818571" elapsed="0.488819"/>
</kw>
<var name="${flowfile}">f104.xml</var>
<status status="PASS" start="2026-05-25T01:54:11.806132" elapsed="0.501344"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:12.308603" level="INFO">f105.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:12.308000" elapsed="0.000701"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:12.314582" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f105.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f105.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:12.314750" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:12.314440" elapsed="0.000339"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:12.315398" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3bd4e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:12.314931" elapsed="0.000496"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:12.315866" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:12.315583" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:12.316346" level="INFO">${flow_id} = 228</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:12.316046" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:12.316804" level="INFO">${flow_priority} = 105</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:12.316531" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:12.317799" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:12.317036" elapsed="0.000795"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:12.318344" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:12.317994" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:12.318855" level="INFO">${flow_id} = 228</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:12.318544" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:12.319383" level="INFO">${flow_priority} = 105</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:12.319052" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:12.319882" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:12.319580" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:12.320435" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:12.320096" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:12.320946" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3bd4e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:12.320636" elapsed="0.000351"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:12.314081" elapsed="0.006965"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:12.322558" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;105&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;105&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:12.322308" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:12.323008" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;105&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;105&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:12.322766" elapsed="0.000317"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:12.323501" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc3bd3a0&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:12.323231" elapsed="0.000297"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:12.323936" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:12.323675" elapsed="0.000307"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:12.324551" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc3bcb80&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:12.324143" elapsed="0.000464"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:12.325148" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc3bf3d0&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:12.324762" elapsed="0.000414"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:12.325325" elapsed="0.000265"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:12.325742" elapsed="0.000258"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:12.326168" elapsed="0.000242"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:12.326557" elapsed="0.000238"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:12.326945" elapsed="0.000259"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:12.327351" elapsed="0.000236"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:12.327735" elapsed="0.000370"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:12.328255" elapsed="0.000381"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:12.328784" elapsed="0.000346"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:12.329554" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc305760&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:12.329285" elapsed="0.000297"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:12.329733" elapsed="0.000244"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:12.330623" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;105&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;105&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;105&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;105&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:12.330140" elapsed="0.000565"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:12.331380" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;105&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:12.330853" elapsed="0.000558"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:12.801675" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2668', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;105&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;105&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;105&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;105&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:12.802030" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:12.802342" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:12.331543" elapsed="0.470864"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:12.808015" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:12.802873" elapsed="0.005277"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5acc3bd4e0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:12.321894" elapsed="0.486402"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:12.321219" elapsed="0.487207"/>
</kw>
<var name="${flowfile}">f105.xml</var>
<status status="PASS" start="2026-05-25T01:54:12.307715" elapsed="0.500799"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:12.809428" level="INFO">f106.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:12.809163" elapsed="0.000311"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:12.813023" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f106.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f106.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:12.813209" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:12.812864" elapsed="0.000375"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:12.813864" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3f65c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:12.813393" elapsed="0.000500"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:12.814370" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:12.814062" elapsed="0.000335"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:12.814839" level="INFO">${flow_id} = 229</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:12.814556" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:12.815322" level="INFO">${flow_priority} = 106</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:12.815018" elapsed="0.000331"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:12.816315" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:12.815525" elapsed="0.000822"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:12.816892" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:12.816512" elapsed="0.000425"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:12.817442" level="INFO">${flow_id} = 229</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:12.817121" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:12.817955" level="INFO">${flow_priority} = 106</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:12.817640" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:12.818487" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:12.818170" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:12.819005" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:12.818695" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:12.819538" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3f65c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:12.819226" elapsed="0.000354"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:12.812458" elapsed="0.007177"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:12.820994" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;106&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;106&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:12.820732" elapsed="0.000385"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:12.821525" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;106&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;106&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:12.821265" elapsed="0.000321"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:12.822019" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc3f7ab0&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:12.821734" elapsed="0.000316"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:12.822505" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:12.822223" elapsed="0.000329"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:12.824781" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc3f7b50&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:12.822698" elapsed="0.002113"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:12.825373" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc3f6750&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:12.824968" elapsed="0.000434"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:12.825552" elapsed="0.000275"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:12.825984" elapsed="0.000282"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:12.826419" elapsed="0.000242"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:12.826813" elapsed="0.000243"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:12.827224" elapsed="0.000241"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:12.827613" elapsed="0.000237"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:12.827997" elapsed="0.000378"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:12.828524" elapsed="0.000391"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:12.829080" elapsed="0.000341"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:12.829852" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc3f4b80&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:12.829581" elapsed="0.000297"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:12.830028" elapsed="0.000274"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:12.830936" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;106&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;106&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;106&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;106&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:12.830450" elapsed="0.000600"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:12.831736" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;106&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:12.831216" elapsed="0.000551"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:13.312317" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2679', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;106&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;106&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;106&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;106&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:13.312558" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:13.312852" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:12.831898" elapsed="0.481016"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:13.318210" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:13.313459" elapsed="0.004855"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5acc3f65c0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:12.820305" elapsed="0.498154"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:12.819786" elapsed="0.498822"/>
</kw>
<var name="${flowfile}">f106.xml</var>
<status status="PASS" start="2026-05-25T01:54:12.808859" elapsed="0.509839"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:13.320131" level="INFO">f107.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:13.319279" elapsed="0.000964"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:13.324875" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f107.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f107.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:13.325062" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:13.324725" elapsed="0.000385"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:13.325755" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3bf970&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:13.325267" elapsed="0.000517"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:13.326249" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:13.325943" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:13.326779" level="INFO">${flow_id} = 230</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:13.326485" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:13.327260" level="INFO">${flow_priority} = 107</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:13.326963" elapsed="0.000324"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:13.328436" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:13.327441" elapsed="0.001028"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:13.329012" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:13.328633" elapsed="0.000425"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:13.329567" level="INFO">${flow_id} = 230</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:13.329245" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:13.330133" level="INFO">${flow_priority} = 107</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:13.329786" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:13.330647" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:13.330335" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:13.331195" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:13.330859" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:13.331726" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3bf970&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:13.331402" elapsed="0.000367"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:13.324356" elapsed="0.007485"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:13.333311" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;107&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;107&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:13.333038" elapsed="0.000341"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:13.333772" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;107&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;107&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:13.333523" elapsed="0.000320"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:13.334335" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc3bcae0&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:13.334033" elapsed="0.000330"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:13.334782" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:13.334510" elapsed="0.000321"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:13.335410" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc3bd3f0&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:13.334986" elapsed="0.000459"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:13.336003" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc3bea70&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:13.335600" elapsed="0.000431"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:13.336196" elapsed="0.000289"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:13.336651" elapsed="0.000275"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:13.337120" elapsed="0.000245"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:13.337514" elapsed="0.000240"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:13.337909" elapsed="0.000261"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:13.338318" elapsed="0.000241"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:13.338709" elapsed="0.000392"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:13.339253" elapsed="0.000476"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:13.339884" elapsed="0.000372"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:13.340692" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5ace4e66b0&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:13.340415" elapsed="0.000305"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:13.340870" elapsed="0.000318"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:13.341868" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;107&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;107&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;107&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;107&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:13.341342" elapsed="0.000652"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:13.342712" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;107&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:13.342170" elapsed="0.000574"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:13.802672" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2997', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;107&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;107&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;107&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;107&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:13.802966" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:13.803288" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:13.342892" elapsed="0.460460"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:13.810238" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:13.805193" elapsed="0.005095"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5acc3bf970&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:13.332570" elapsed="0.477795"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:13.331997" elapsed="0.478435"/>
</kw>
<var name="${flowfile}">f107.xml</var>
<status status="PASS" start="2026-05-25T01:54:13.318944" elapsed="0.491529"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:13.811009" level="INFO">f108.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:13.810753" elapsed="0.000301"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:13.814636" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f108.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f108.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:13.814855" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:13.814487" elapsed="0.000398"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:13.815551" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4ea480&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:13.815041" elapsed="0.000544"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:13.816143" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:13.815821" elapsed="0.000356"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:13.816626" level="INFO">${flow_id} = 231</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:13.816346" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:13.817172" level="INFO">${flow_priority} = 108</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:13.816817" elapsed="0.000382"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:13.818231" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:13.817377" elapsed="0.000887"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:13.818800" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:13.818436" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:13.819359" level="INFO">${flow_id} = 231</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:13.819008" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:13.819879" level="INFO">${flow_priority} = 108</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:13.819561" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:13.820411" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:13.820098" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:13.820933" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:13.820612" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:13.821515" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4ea480&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:13.821152" elapsed="0.000415"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:13.814095" elapsed="0.007531"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:13.823162" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;108&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;108&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:13.822890" elapsed="0.000340"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:13.823622" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;108&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;108&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:13.823376" elapsed="0.000341"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:13.824167" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc38acf0&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:13.823868" elapsed="0.000327"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:13.824619" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:13.824342" elapsed="0.000336"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:13.825251" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc38a070&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:13.824833" elapsed="0.000466"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:13.825906" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc4ad760&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:13.825466" elapsed="0.000469"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:13.826105" elapsed="0.000282"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:13.826542" elapsed="0.000261"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:13.826956" elapsed="0.000258"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:13.827362" elapsed="0.000259"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:13.827772" elapsed="0.000240"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:13.828176" elapsed="0.000258"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:13.828606" elapsed="0.000378"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:13.829151" elapsed="0.000418"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:13.829722" elapsed="0.000398"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:13.830559" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc4e42c0&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:13.830282" elapsed="0.000305"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:13.830738" elapsed="0.000250"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:13.831678" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;108&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;108&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;108&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;108&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:13.831155" elapsed="0.000668"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:13.832556" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;108&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:13.831986" elapsed="0.000603"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:14.303647" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '3004', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;108&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;108&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;108&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;108&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:14.303881" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:14.304171" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:13.832724" elapsed="0.471513"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:14.309817" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:14.304691" elapsed="0.005228"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5ace4ea480&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:13.822305" elapsed="0.487754"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:13.821782" elapsed="0.488387"/>
</kw>
<var name="${flowfile}">f108.xml</var>
<status status="PASS" start="2026-05-25T01:54:13.810617" elapsed="0.499607"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:14.310919" level="INFO">f109.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:14.310567" elapsed="0.000414"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:14.316307" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f109.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f109.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:14.316537" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:14.316103" elapsed="0.000475"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:14.317438" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e64d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:14.316790" elapsed="0.000687"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:14.318208" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:14.317818" elapsed="0.000417"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:14.318665" level="INFO">${flow_id} = 232</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:14.318390" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:14.319132" level="INFO">${flow_priority} = 109</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:14.318844" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:14.320166" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:14.319311" elapsed="0.000887"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:14.320687" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:14.320361" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:14.321210" level="INFO">${flow_id} = 232</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:14.320883" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:14.321749" level="INFO">${flow_priority} = 109</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:14.321409" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:14.322271" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:14.321947" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:14.322792" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:14.322471" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:14.323320" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e64d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:14.322991" elapsed="0.000371"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:14.315588" elapsed="0.007830"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:14.324733" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;109&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;109&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:14.324480" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:14.325207" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;109&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;109&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:14.324942" elapsed="0.000365"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:14.325797" level="INFO">${xml} = &lt;Element 'input' at 0x7f5abfc1e890&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:14.325457" elapsed="0.000368"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:14.326274" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:14.325981" elapsed="0.000341"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:14.327039" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5abfc1ce50&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:14.326471" elapsed="0.000615"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:14.327629" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5abfc1dcb0&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:14.327244" elapsed="0.000413"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:14.327806" elapsed="0.000283"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:14.328243" elapsed="0.000262"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:14.328659" elapsed="0.000250"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:14.329058" elapsed="0.000256"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:14.329463" elapsed="0.000280"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:14.329894" elapsed="0.000262"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:14.330307" elapsed="0.000372"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:14.330828" elapsed="0.000376"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:14.331354" elapsed="0.000333"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:14.332127" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc4da8e0&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:14.331840" elapsed="0.000315"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:14.332305" elapsed="0.000247"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:14.333229" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;109&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;109&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;109&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;109&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:14.332701" elapsed="0.000647"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:14.334097" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;109&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:14.333498" elapsed="0.000634"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:14.804446" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '3000', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;109&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;109&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;109&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;109&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:14.804674" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:14.804928" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:14.334265" elapsed="0.470724"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:14.810118" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:14.805460" elapsed="0.004763"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5acc4e64d0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:14.324063" elapsed="0.486303"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:14.323569" elapsed="0.486922"/>
</kw>
<var name="${flowfile}">f109.xml</var>
<status status="PASS" start="2026-05-25T01:54:14.310383" elapsed="0.500195"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:14.811775" level="INFO">f110.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:14.811202" elapsed="0.000675"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:14.817148" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f110.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f110.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:14.817337" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:14.816985" elapsed="0.000382"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:14.818000" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7c680&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:14.817522" elapsed="0.000507"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:14.818546" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:14.818254" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:14.819003" level="INFO">${flow_id} = 233</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:14.818727" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:14.819660" level="INFO">${flow_priority} = 110</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:14.819204" elapsed="0.000483"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:14.820564" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:14.819841" elapsed="0.000754"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:14.821102" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:14.820757" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:14.821612" level="INFO">${flow_id} = 233</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:14.821302" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:14.822236" level="INFO">${flow_priority} = 110</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:14.821807" elapsed="0.000474"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:14.822819" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:14.822461" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:14.823359" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:14.823023" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:14.823871" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7c680&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:14.823560" elapsed="0.000354"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:14.816622" elapsed="0.007349"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:14.825372" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;110&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;110&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;push-vlan-action&gt;
                        &lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;
                        &lt;vlan-id&gt;1234&lt;/vlan-id&gt;
                    &lt;/push-vlan-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:14.825121" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:14.825833" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;110&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;110&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:14.825587" elapsed="0.000326"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:14.826361" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc304db0&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:14.826085" elapsed="0.000303"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:14.826842" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:14.826573" elapsed="0.000317"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:14.827433" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc3049f0&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:14.827036" elapsed="0.000425"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:14.827976" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc306ca0&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:14.827611" elapsed="0.000392"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:14.828166" elapsed="0.000269"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:14.828586" elapsed="0.000257"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:14.828994" elapsed="0.000261"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:14.829404" elapsed="0.000237"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:14.829788" elapsed="0.000295"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:14.830237" elapsed="0.000236"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:14.830621" elapsed="0.000349"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:14.831135" elapsed="0.000476"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:14.831761" elapsed="0.000351"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:14.832544" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc091ee0&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:14.832269" elapsed="0.000302"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:14.832720" elapsed="0.000251"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:14.833604" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;110&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;110&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;push-vlan-action&gt;
                        &lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;
                        &lt;vlan-id&gt;1234&lt;/vlan-id&gt;
                    &lt;/push-vlan-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;110&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;110&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:14.833136" elapsed="0.000547"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:14.834369" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;110&lt;/cookie&gt;
    &lt;tab...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:14.833830" elapsed="0.000571"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:15.305507" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2435', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;110&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;110&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;push-vlan-action&gt;
                        &lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;
                        &lt;vlan-id&gt;1234&lt;/vlan-id&gt;
                    &lt;/push-vlan-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;110&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;110&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:15.305832" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:15.306124" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:14.834532" elapsed="0.471697"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:15.311293" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:15.306683" elapsed="0.004712"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5abff7c680&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:14.824709" elapsed="0.486825"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:14.824150" elapsed="0.487509"/>
</kw>
<var name="${flowfile}">f110.xml</var>
<status status="PASS" start="2026-05-25T01:54:14.810865" elapsed="0.500881"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:15.312896" level="INFO">f113.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:15.312324" elapsed="0.000674"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:15.317697" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f113.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f113.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:15.317860" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:15.317551" elapsed="0.000338"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:15.318536" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc75710&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:15.318042" elapsed="0.000524"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:15.319006" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:15.318722" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:15.319474" level="INFO">${flow_id} = 236</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:15.319202" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:15.319923" level="INFO">${flow_priority} = 113</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:15.319651" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:15.320888" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:15.320115" elapsed="0.000804"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:15.321426" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:15.321096" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:15.321931" level="INFO">${flow_id} = 236</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:15.321622" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:15.322489" level="INFO">${flow_priority} = 113</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:15.322139" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:15.322987" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:15.322683" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:15.323530" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:15.323210" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:15.324037" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc75710&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:15.323728" elapsed="0.000366"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:15.317176" elapsed="0.006975"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:15.325640" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;113&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;113&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;push-mpls-action&gt;
                        &lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;
                    &lt;/push-mpls-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:15.325392" elapsed="0.000354"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:15.326158" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;113&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;113&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:15.325893" elapsed="0.000342"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:15.326661" level="INFO">${xml} = &lt;Element 'input' at 0x7f5abfc75da0&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:15.326388" elapsed="0.000301"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:15.327116" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:15.326834" elapsed="0.000329"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:15.327696" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5abfc77fb0&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:15.327310" elapsed="0.000414"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:15.328263" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5abfcbc0e0&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:15.327872" elapsed="0.000418"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:15.328438" elapsed="0.000265"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:15.328852" elapsed="0.000272"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:15.329275" elapsed="0.000238"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:15.329660" elapsed="0.000233"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:15.330041" elapsed="0.000278"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:15.330466" elapsed="0.000233"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:15.330845" elapsed="0.000377"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:15.331369" elapsed="0.000349"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:15.331862" elapsed="0.000343"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:15.332619" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc3ed3f0&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:15.332356" elapsed="0.000290"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:15.332793" elapsed="0.000246"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:15.333720" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;113&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;113&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;push-mpls-action&gt;
                        &lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;
                    &lt;/push-mpls-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;113&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;113&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:15.333219" elapsed="0.000618"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:15.334543" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;113&lt;/cookie&gt;
    &lt;tab...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:15.333986" elapsed="0.000589"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:15.806466" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2953', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;113&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;113&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;push-mpls-action&gt;
                        &lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;
                    &lt;/push-mpls-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;113&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;113&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:15.806723" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:15.806985" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:15.334706" elapsed="0.472340"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:15.812132" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:15.807555" elapsed="0.004643"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5abfc75710&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:15.324980" elapsed="0.487309"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:15.324303" elapsed="0.488066"/>
</kw>
<var name="${flowfile}">f113.xml</var>
<status status="PASS" start="2026-05-25T01:54:15.311990" elapsed="0.500434"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:15.813148" level="INFO">f201.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:15.812774" elapsed="0.000436"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:15.818148" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f201.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f201.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:15.818368" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:15.817931" elapsed="0.000478"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:15.819239" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfa16f20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:15.818661" elapsed="0.000606"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:15.819759" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:15.819422" elapsed="0.000363"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:15.820229" level="INFO">${flow_id} = 324</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:15.819940" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:15.820680" level="INFO">${flow_priority} = 201</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:15.820407" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:15.821602" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:15.820858" elapsed="0.000776"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:15.822140" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:15.821796" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:15.822671" level="INFO">${flow_id} = 324</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:15.822340" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:15.823220" level="INFO">${flow_priority} = 201</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:15.822884" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:15.823721" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:15.823417" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:15.824264" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:15.823917" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:15.824775" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfa16f20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:15.824465" elapsed="0.000352"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:15.817443" elapsed="0.007431"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:15.826201" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;201&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;201&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:15.825936" elapsed="0.000327"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:15.826694" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;201&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;201&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:15.826405" elapsed="0.000349"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:15.827184" level="INFO">${xml} = &lt;Element 'input' at 0x7f5abfa17100&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:15.826898" elapsed="0.000342"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:15.827676" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:15.827391" elapsed="0.000332"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:15.828263" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5abfa14d60&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:15.827868" elapsed="0.000422"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:15.828953" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5abfa17a60&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:15.828439" elapsed="0.000542"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:15.829146" elapsed="0.000267"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:15.829573" elapsed="0.000263"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:15.829989" elapsed="0.000268"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:15.830407" elapsed="0.000292"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:15.830855" elapsed="0.000253"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:15.831254" elapsed="0.000233"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:15.831632" elapsed="0.000348"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:15.832141" elapsed="0.000340"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:15.832626" elapsed="0.000326"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:15.833391" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc3efb50&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:15.833118" elapsed="0.000300"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:15.833565" elapsed="0.000247"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:15.834449" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;201&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;201&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;201&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;201&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:15.833957" elapsed="0.000599"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:15.835249" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;201&lt;/cookie&gt;
    &lt;ta...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:15.834721" elapsed="0.000560"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:16.307594" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2534', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;201&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;201&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;201&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;201&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:16.307815" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:16.308104" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:15.835443" elapsed="0.472726"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:16.312472" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:16.308620" elapsed="0.003914"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5abfa16f20&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:15.825545" elapsed="0.487079"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:15.825027" elapsed="0.487678"/>
</kw>
<var name="${flowfile}">f201.xml</var>
<status status="PASS" start="2026-05-25T01:54:15.812592" elapsed="0.500168"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:16.313481" level="INFO">f202.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:16.313124" elapsed="0.000421"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:16.318440" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f202.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f202.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:16.318661" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:16.318239" elapsed="0.000464"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:16.319559" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3c7060&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:16.318931" elapsed="0.000668"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:16.320237" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:16.319815" elapsed="0.000459"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:16.320865" level="INFO">${flow_id} = 325</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:16.320488" elapsed="0.000414"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:16.321513" level="INFO">${flow_priority} = 202</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:16.321133" elapsed="0.000416"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:16.323027" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:16.321759" elapsed="0.001386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:16.323665" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:16.323331" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:16.324187" level="INFO">${flow_id} = 325</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:16.323862" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:16.324694" level="INFO">${flow_priority} = 202</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:16.324382" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:16.325200" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:16.324886" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:16.325702" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:16.325397" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:16.326225" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3c7060&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:16.325898" elapsed="0.000369"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:16.317722" elapsed="0.008600"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:16.327640" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;202&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;202&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:16.327381" elapsed="0.000360"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:16.328236" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;202&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;202&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:16.327936" elapsed="0.000361"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:16.328715" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc1d4400&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:16.328444" elapsed="0.000298"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:16.329172" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:16.328886" elapsed="0.000333"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:16.329770" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc1d4540&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:16.329363" elapsed="0.000436"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:16.330336" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc1d4d60&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:16.329947" elapsed="0.000417"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:16.330510" elapsed="0.000266"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:16.331011" elapsed="0.000281"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:16.331442" elapsed="0.000238"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:16.331825" elapsed="0.000234"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:16.332227" elapsed="0.000252"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:16.332627" elapsed="0.000232"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:16.333007" elapsed="0.000379"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:16.333535" elapsed="0.001807"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:16.335501" elapsed="0.000350"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:16.336296" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc3c7240&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:16.336008" elapsed="0.000316"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:16.336475" elapsed="0.000245"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:16.337356" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;202&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;202&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;202&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;202&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:16.336867" elapsed="0.000571"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:16.338096" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;202&lt;/cookie&gt;
    &lt;ta...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:16.337583" elapsed="0.000548"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:16.808029" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2544', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;202&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;202&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;202&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;202&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:16.808430" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:16.808745" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:16.338261" elapsed="0.470565"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:16.813483" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:16.809316" elapsed="0.004231"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5acc3c7060&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:16.326976" elapsed="0.486661"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:16.326473" elapsed="0.487242"/>
</kw>
<var name="${flowfile}">f202.xml</var>
<status status="PASS" start="2026-05-25T01:54:16.312919" elapsed="0.500852"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:16.814539" level="INFO">f203.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:16.814149" elapsed="0.000453"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:16.819576" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f203.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f203.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:16.819788" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:16.819374" elapsed="0.000456"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:16.820607" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3c5990&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:16.820048" elapsed="0.000597"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:16.821114" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:16.820806" elapsed="0.000336"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:16.821579" level="INFO">${flow_id} = 326</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:16.821299" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:16.822058" level="INFO">${flow_priority} = 203</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:16.821777" elapsed="0.000325"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:16.822980" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:16.822258" elapsed="0.000753"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:16.823549" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:16.823211" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:16.824085" level="INFO">${flow_id} = 326</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:16.823749" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:16.824624" level="INFO">${flow_priority} = 203</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:16.824293" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:16.825162" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:16.824833" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:16.825678" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:16.825365" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:16.826210" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3c5990&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:16.825879" elapsed="0.000374"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:16.818819" elapsed="0.007491"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:16.827667" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;203&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;203&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:16.827413" elapsed="0.000355"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:16.828187" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;203&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;203&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:16.827917" elapsed="0.000332"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:16.828691" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc3c5350&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:16.828400" elapsed="0.000319"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:16.829157" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:16.828870" elapsed="0.000338"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:16.829936" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc3c5a80&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:16.829358" elapsed="0.000607"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:16.830512" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc3c5030&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:16.830135" elapsed="0.000405"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:16.830693" elapsed="0.000274"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:16.831158" elapsed="0.000272"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:16.831586" elapsed="0.000246"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:16.831982" elapsed="0.000259"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:16.832393" elapsed="0.000249"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:16.832797" elapsed="0.000244"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:16.833207" elapsed="0.000357"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:16.833712" elapsed="0.000351"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:16.834227" elapsed="0.000336"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:16.834985" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc3efa60&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:16.834716" elapsed="0.000302"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:16.835213" elapsed="0.000251"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:16.836128" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;203&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;203&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;203&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;203&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:16.835613" elapsed="0.000631"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:16.836915" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;203&lt;/cookie&gt;
    &lt;ta...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:16.836394" elapsed="0.000553"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:17.309397" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2536', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;203&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;203&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;203&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;203&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:17.309632" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:17.309894" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:16.837105" elapsed="0.472851"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:17.315294" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:17.310457" elapsed="0.004969"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5acc3c5990&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:16.826967" elapsed="0.488631"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:16.826463" elapsed="0.489274"/>
</kw>
<var name="${flowfile}">f203.xml</var>
<status status="PASS" start="2026-05-25T01:54:16.813932" elapsed="0.501896"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:17.317007" level="INFO">f204.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:17.316400" elapsed="0.000780"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:17.322504" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f204.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f204.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:17.322685" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:17.322344" elapsed="0.000375"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:17.323431" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcbc3b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:17.322921" elapsed="0.000541"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:17.323936" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:17.323623" elapsed="0.000340"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:17.324418" level="INFO">${flow_id} = 327</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:17.324138" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:17.324959" level="INFO">${flow_priority} = 204</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:17.324658" elapsed="0.000328"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:17.326054" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:17.325164" elapsed="0.000940"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:17.326604" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:17.326270" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:17.327146" level="INFO">${flow_id} = 327</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:17.326804" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:17.327687" level="INFO">${flow_priority} = 204</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:17.327349" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:17.328260" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:17.327896" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:17.328785" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:17.328466" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:17.329332" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfcbc3b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:17.328996" elapsed="0.000378"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:17.321925" elapsed="0.007508"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:17.330770" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;204&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;204&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:17.330515" elapsed="0.000320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:17.331265" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;204&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;204&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:17.330994" elapsed="0.000334"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:17.331783" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc3ef100&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:17.331501" elapsed="0.000310"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:17.332272" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:17.331979" elapsed="0.000341"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:17.332901" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc3ec0e0&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:17.332505" elapsed="0.000431"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:17.333491" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc3eec50&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:17.333109" elapsed="0.000411"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:17.333670" elapsed="0.000276"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:17.334119" elapsed="0.000268"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:17.334542" elapsed="0.000243"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:17.334937" elapsed="0.000294"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:17.335387" elapsed="0.000262"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:17.335799" elapsed="0.000262"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:17.336269" elapsed="0.000364"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:17.336822" elapsed="0.000518"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:17.337496" elapsed="0.000345"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:17.338347" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfc74bd0&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:17.338031" elapsed="0.000344"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:17.338529" elapsed="0.000248"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:17.339468" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;204&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;204&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;204&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;204&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:17.338926" elapsed="0.000625"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:17.340236" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;204&lt;/cookie&gt;
    &lt;ta...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:17.339699" elapsed="0.000568"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:17.809902" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2546', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;204&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;204&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;204&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;204&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:17.810281" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:17.810543" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:17.340399" elapsed="0.470205"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:17.815879" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:17.811044" elapsed="0.004941"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5abfcbc3b0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:17.330115" elapsed="0.486057"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:17.329586" elapsed="0.486699"/>
</kw>
<var name="${flowfile}">f204.xml</var>
<status status="PASS" start="2026-05-25T01:54:17.316102" elapsed="0.500239"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:17.817099" level="INFO">f205.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:17.816717" elapsed="0.000448"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:17.822006" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f205.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f205.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:17.822236" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:17.821807" elapsed="0.000470"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:17.823127" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc305c10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:17.822491" elapsed="0.000679"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:17.823880" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:17.823387" elapsed="0.000536"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:17.824524" level="INFO">${flow_id} = 328</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:17.824195" elapsed="0.000356"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:17.824991" level="INFO">${flow_priority} = 205</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:17.824712" elapsed="0.000305"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:17.825995" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:17.825184" elapsed="0.000842"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:17.826535" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:17.826209" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:17.827036" level="INFO">${flow_id} = 328</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:17.826730" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:17.827556" level="INFO">${flow_priority} = 205</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:17.827244" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:17.828083" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:17.827766" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:17.828587" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:17.828281" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:17.829114" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc305c10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:17.828792" elapsed="0.000365"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:17.821319" elapsed="0.007893"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:17.830698" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;328&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;205&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;
    &lt;priority&gt;205&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:17.830450" elapsed="0.000353"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:17.831213" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;328&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;205&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;
    &lt;priority&gt;205&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:17.830948" elapsed="0.000328"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:17.831757" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc304950&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:17.831422" elapsed="0.000380"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:17.832340" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:17.831999" elapsed="0.000398"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:17.832949" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc305c60&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:17.832551" elapsed="0.000426"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:17.833538" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc306bb0&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:17.833147" elapsed="0.000420"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:17.833717" elapsed="0.000267"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:17.834179" elapsed="0.000368"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:17.834709" elapsed="0.000259"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:17.835145" elapsed="0.000272"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:17.835573" elapsed="0.000278"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:17.836003" elapsed="0.000265"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:17.836417" elapsed="0.000367"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:17.836932" elapsed="0.000374"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:17.837452" elapsed="0.000330"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:17.838235" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfc1ef20&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:17.837945" elapsed="0.000318"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:17.838415" elapsed="0.000247"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:17.839345" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;205&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;
    &lt;priority&gt;205&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;205&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;
    &lt;priority&gt;205&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:17.838809" elapsed="0.000666"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:17.840237" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
              ...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:17.839629" elapsed="0.000640"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:18.310850" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2946', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;205&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;
    &lt;priority&gt;205&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;205&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;
    &lt;priority&gt;205&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:18.311122" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:18.311395" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:17.840402" elapsed="0.471054"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:18.316996" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:18.311915" elapsed="0.005212"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5acc305c10&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:17.829861" elapsed="0.487367"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:17.829361" elapsed="0.487948"/>
</kw>
<var name="${flowfile}">f205.xml</var>
<status status="PASS" start="2026-05-25T01:54:17.816503" elapsed="0.500862"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:18.318065" level="INFO">f206.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:18.317711" elapsed="0.000443"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:18.322993" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f206.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f206.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:18.323230" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:18.322795" elapsed="0.000476"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:18.324149" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1d7b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:18.323483" elapsed="0.000708"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:18.324873" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:18.324409" elapsed="0.000501"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:18.325498" level="INFO">${flow_id} = 329</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:18.325159" elapsed="0.000365"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:18.325945" level="INFO">${flow_priority} = 206</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:18.325674" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:18.326918" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:18.326136" elapsed="0.000813"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:18.327454" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:18.327126" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:18.327955" level="INFO">${flow_id} = 329</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:18.327650" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:18.328493" level="INFO">${flow_priority} = 206</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:18.328174" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:18.328984" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:18.328686" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:18.329502" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:18.329194" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:18.330005" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1d7b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:18.329699" elapsed="0.000348"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:18.322304" elapsed="0.007814"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:18.331413" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;329&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;206&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;
    &lt;priority&gt;206&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:18.331164" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:18.331863" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;329&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;206&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;
    &lt;priority&gt;206&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:18.331619" elapsed="0.000336"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:18.332416" level="INFO">${xml} = &lt;Element 'input' at 0x7f5abfc1fe70&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:18.332141" elapsed="0.000303"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:18.332858" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:18.332591" elapsed="0.000313"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:18.333595" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5abfc1c360&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:18.333049" elapsed="0.000574"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:18.334172" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5abfc1cea0&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:18.333773" elapsed="0.000427"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:18.334347" elapsed="0.000269"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:18.334768" elapsed="0.000256"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:18.335192" elapsed="0.000239"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:18.335578" elapsed="0.000235"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:18.335962" elapsed="0.000265"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:18.336374" elapsed="0.000233"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:18.336753" elapsed="0.000380"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:18.337281" elapsed="0.000353"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:18.337781" elapsed="0.000345"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:18.338548" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc4e7ce0&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:18.338280" elapsed="0.000295"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:18.338722" elapsed="0.000244"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:18.339642" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;206&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;
    &lt;priority&gt;206&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;206&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;
    &lt;priority&gt;206&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:18.339129" elapsed="0.000628"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:18.340480" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
              ...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:18.339903" elapsed="0.000607"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:18.812116" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2952', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;206&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;
    &lt;priority&gt;206&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;206&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;
    &lt;priority&gt;206&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:18.812371" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:18.812622" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:18.340641" elapsed="0.472042"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:18.817631" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:18.813145" elapsed="0.004549"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5abfc1d7b0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:18.330761" elapsed="0.487021"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:18.330269" elapsed="0.487593"/>
</kw>
<var name="${flowfile}">f206.xml</var>
<status status="PASS" start="2026-05-25T01:54:18.317528" elapsed="0.500388"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:18.818631" level="INFO">f209.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:18.818279" elapsed="0.000416"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:18.823946" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f209.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f209.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:18.824190" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;co...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:18.823700" elapsed="0.000534"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:18.825149" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e6de0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:18.824499" elapsed="0.000694"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:18.825726" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:18.825391" elapsed="0.000362"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:18.826201" level="INFO">${flow_id} = 332</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:18.825907" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:18.826821" level="INFO">${flow_priority} = 209</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:18.826382" elapsed="0.000466"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:18.827758" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/co...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:18.827001" elapsed="0.000788"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:18.828294" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:18.827950" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:18.828829" level="INFO">${flow_id} = 332</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:18.828517" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:18.829359" level="INFO">${flow_priority} = 209</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:18.829024" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:18.829877" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;co...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:18.829575" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:18.830399" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/co...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:18.830087" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:18.830908" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e6de0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:18.830599" elapsed="0.000351"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:18.822889" elapsed="0.008116"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:18.832339" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;209&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;209&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tunnel&gt;
                            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;
                        &lt;/tunnel&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:18.832053" elapsed="0.000352"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:18.832787" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;209&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;209&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:18.832546" elapsed="0.000302"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:18.833359" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc358d60&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:18.833080" elapsed="0.000306"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:18.833798" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:18.833532" elapsed="0.000312"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:18.834399" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc35aac0&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:18.833991" elapsed="0.000436"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:18.834954" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc35b650&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:18.834578" elapsed="0.000403"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:18.835143" elapsed="0.000268"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:18.835561" elapsed="0.000257"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:18.835970" elapsed="0.000258"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:18.836387" elapsed="0.000236"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:18.836770" elapsed="0.000235"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:18.837167" elapsed="0.000284"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:18.837602" elapsed="0.000508"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:18.838267" elapsed="0.000351"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:18.838766" elapsed="0.000349"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:18.839539" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc090d10&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:18.839271" elapsed="0.000295"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:18.839716" elapsed="0.000244"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:18.840639" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;209&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;209&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tunnel&gt;
                            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;
                        &lt;/tunnel&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;209&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;209&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:18.840122" elapsed="0.000600"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:18.841398" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;209&lt;/cookie&gt;
    &lt;...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:18.840868" elapsed="0.000589"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:19.313210" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2665', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;209&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;209&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tunnel&gt;
                            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;
                        &lt;/tunnel&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;209&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;209&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:19.313433" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:19.313689" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:18.841591" elapsed="0.472157"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:19.318319" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:19.314253" elapsed="0.004131"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5acc4e6de0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:18.831664" elapsed="0.486820"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:18.831174" elapsed="0.487395"/>
</kw>
<var name="${flowfile}">f209.xml</var>
<status status="PASS" start="2026-05-25T01:54:18.818095" elapsed="0.500533"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:19.319385" level="INFO">f214.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:19.318990" elapsed="0.000460"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:19.324612" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f214.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f214.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:19.324838" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:19.324391" elapsed="0.000489"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:19.325816" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc093e20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:19.325174" elapsed="0.000686"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:19.326528" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:19.326110" elapsed="0.000457"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:19.327215" level="INFO">${flow_id} = 337</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:19.326792" elapsed="0.000462"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:19.327877" level="INFO">${flow_priority} = 214</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:19.327480" elapsed="0.000435"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:19.329478" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:19.328248" elapsed="0.001273"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:19.330107" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:19.329743" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:19.330618" level="INFO">${flow_id} = 337</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:19.330311" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:19.331135" level="INFO">${flow_priority} = 214</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:19.330811" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:19.331630" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:19.331329" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:19.332147" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:19.331826" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:19.332671" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc093e20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:19.332347" elapsed="0.000366"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:19.323854" elapsed="0.008915"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:19.334265" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;214&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;214&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
		    &lt;ip-match&gt;
        		&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
		    &lt;/ip-match&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
		&lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
	    &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:19.333999" elapsed="0.000328"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:19.334711" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;214&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;214&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
		&lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
	    &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:19.334468" elapsed="0.000300"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:19.335200" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc091530&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:19.334912" elapsed="0.000316"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:19.335647" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:19.335376" elapsed="0.000318"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:19.336229" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc093b50&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:19.335840" elapsed="0.000416"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:19.336799" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc091bc0&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:19.336404" elapsed="0.000423"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:19.336974" elapsed="0.000326"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:19.337452" elapsed="0.000255"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:19.337858" elapsed="0.000252"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:19.338258" elapsed="0.000235"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:19.338645" elapsed="0.000235"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:19.339026" elapsed="0.000255"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:19.339428" elapsed="0.000345"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:19.339919" elapsed="0.000353"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:19.340419" elapsed="0.000348"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:19.341204" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc4e7790&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:19.340920" elapsed="0.000312"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:19.341381" elapsed="0.000246"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:19.342255" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;214&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;214&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
		    &lt;ip-match&gt;
        		&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
		    &lt;/ip-match&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
		&lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
	    &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;214&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;214&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
		&lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
	    &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:19.341773" elapsed="0.000560"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:19.342963" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;214&lt;/cookie&gt;
    &lt;tab...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:19.342479" elapsed="0.000514"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:19.813885" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2136', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;214&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;214&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
		    &lt;ip-match&gt;
        		&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
		    &lt;/ip-match&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
		&lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
	    &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;214&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;214&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
		&lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
	    &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:19.814237" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:19.814503" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:19.343138" elapsed="0.471428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:19.819044" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:19.814999" elapsed="0.004133"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5acc093e20&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:19.333604" elapsed="0.485623"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:19.332920" elapsed="0.486391"/>
</kw>
<var name="${flowfile}">f214.xml</var>
<status status="PASS" start="2026-05-25T01:54:19.318798" elapsed="0.500573"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:19.820121" level="INFO">f218.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:19.819728" elapsed="0.000460"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:19.825392" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f218.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f218.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:19.825552" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:19.825224" elapsed="0.000358"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:19.826168" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3bf1a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:19.825734" elapsed="0.000469"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:19.826659" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:19.826376" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:19.827127" level="INFO">${flow_id} = 341</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:19.826839" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:19.827579" level="INFO">${flow_priority} = 218</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:19.827306" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:19.828355" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:19.827755" elapsed="0.000630"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:19.828874" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:19.828550" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:19.829417" level="INFO">${flow_id} = 341</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:19.829104" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:19.829920" level="INFO">${flow_priority} = 218</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:19.829609" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:19.830434" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:19.830127" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:19.830930" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:19.830628" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:19.831452" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3bf1a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:19.831140" elapsed="0.000353"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:19.824646" elapsed="0.006901"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:19.832847" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;go-to-table&gt;
                &lt;table_id&gt;3&lt;/table_id&gt;
            &lt;/go-to-table&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;341&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-mask&gt;0xfff0&lt;/tunnel-mask&gt;
            &lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
    &lt;cookie&gt;218&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;
    &lt;priority&gt;218&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:19.832600" elapsed="0.000368"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:19.833378" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;go-to-table&gt;
                &lt;table_id&gt;3&lt;/table_id&gt;
            &lt;/go-to-table&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;341&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-mask&gt;0xfff0&lt;/tunnel-mask&gt;
            &lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
    &lt;cookie&gt;218&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;
    &lt;priority&gt;218&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:19.833130" elapsed="0.000304"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:19.833848" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc3bdf80&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:19.833580" elapsed="0.000295"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:19.834309" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:19.834021" elapsed="0.000334"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:19.834852" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc1d6ca0&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:19.834501" elapsed="0.000378"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:19.835393" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc1d7880&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:19.835028" elapsed="0.000393"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:19.835568" elapsed="0.000262"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:19.835981" elapsed="0.000413"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:19.836549" elapsed="0.000242"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:19.836955" elapsed="0.000253"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:19.837356" elapsed="0.000234"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:19.837734" elapsed="0.000231"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:19.838126" elapsed="0.000328"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:19.838599" elapsed="0.000316"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:19.839060" elapsed="0.000346"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:19.839823" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc3ecd60&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:19.839558" elapsed="0.000292"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:19.839997" elapsed="0.000263"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:19.840814" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;go-to-table&gt;
                &lt;table_id&gt;3&lt;/table_id&gt;
            &lt;/go-to-table&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-mask&gt;0xfff0&lt;/tunnel-mask&gt;
            &lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
    &lt;cookie&gt;218&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;
    &lt;priority&gt;218&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;go-to-table&gt;
                &lt;table_id&gt;3&lt;/table_id&gt;
            &lt;/go-to-table&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-mask&gt;0xfff0&lt;/tunnel-mask&gt;
            &lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
    &lt;cookie&gt;218&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;
    &lt;priority&gt;218&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:19.840406" elapsed="0.000477"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:19.841518" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;go-to-table&gt;
        ...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:19.841057" elapsed="0.000552"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:20.314996" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1597', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;go-to-table&gt;
                &lt;table_id&gt;3&lt;/table_id&gt;
            &lt;/go-to-table&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-mask&gt;0xfff0&lt;/tunnel-mask&gt;
            &lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
    &lt;cookie&gt;218&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;
    &lt;priority&gt;218&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;go-to-table&gt;
                &lt;table_id&gt;3&lt;/table_id&gt;
            &lt;/go-to-table&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-mask&gt;0xfff0&lt;/tunnel-mask&gt;
            &lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
    &lt;cookie&gt;218&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;
    &lt;priority&gt;218&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:20.315221" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:20.315460" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:19.841742" elapsed="0.473779"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:20.320538" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:20.315927" elapsed="0.004714"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5acc3bf1a0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:19.832208" elapsed="0.488570"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:19.831698" elapsed="0.489203"/>
</kw>
<var name="${flowfile}">f218.xml</var>
<status status="PASS" start="2026-05-25T01:54:19.819536" elapsed="0.501452"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:20.322160" level="INFO">f219.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:20.321568" elapsed="0.000696"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:20.327985" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f219.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f219.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:20.328156" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;c...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:20.327840" elapsed="0.000347"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:20.328762" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc26c900&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:20.328340" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:20.329261" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:20.328945" elapsed="0.000342"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:20.329711" level="INFO">${flow_id} = 342</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:20.329440" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:20.330181" level="INFO">${flow_priority} = 219</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:20.329890" elapsed="0.000318"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:20.331016" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:20.330360" elapsed="0.000687"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:20.333055" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:20.331224" elapsed="0.001890"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:20.333602" level="INFO">${flow_id} = 342</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:20.333286" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:20.334189" level="INFO">${flow_priority} = 219</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:20.333855" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:20.334709" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;c...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:20.334386" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:20.335267" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:20.334940" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:20.335779" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc26c900&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:20.335466" elapsed="0.000356"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:20.327490" elapsed="0.008387"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:20.337230" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
		&lt;/clear-actions&gt;
	&lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;342&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;10&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;219&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;
    &lt;priority&gt;219&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:20.336936" elapsed="0.000357"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:20.337682" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
		&lt;/clear-actions&gt;
	&lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;342&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;10&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;219&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;
    &lt;priority&gt;219&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:20.337437" elapsed="0.000303"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:20.338175" level="INFO">${xml} = &lt;Element 'input' at 0x7f5acc1d7a10&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:20.337886" elapsed="0.000317"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:20.338611" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:20.338349" elapsed="0.000309"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:20.339196" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5acc1d7920&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:20.338804" elapsed="0.000420"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:20.339732" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5acc1d7330&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:20.339377" elapsed="0.000382"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:20.339905" elapsed="0.000283"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:20.340340" elapsed="0.000264"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:20.340755" elapsed="0.000239"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:20.341157" elapsed="0.000247"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:20.341552" elapsed="0.000236"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:20.341966" elapsed="0.000254"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:20.342365" elapsed="0.000341"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:20.342851" elapsed="0.000345"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:20.343341" elapsed="0.000327"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:20.344101" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc3bfce0&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:20.343820" elapsed="0.000309"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:20.344276" elapsed="0.000248"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:20.345160" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
		&lt;/clear-actions&gt;
	&lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;10&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;219&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;
    &lt;priority&gt;219&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
		&lt;/clear-actions&gt;
	&lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;10&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;219&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;
    &lt;priority&gt;219&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:20.344669" elapsed="0.000611"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:20.345917" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;action&gt;
                ...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:20.345429" elapsed="0.000519"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:20.816059" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '2032', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
		&lt;/clear-actions&gt;
	&lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;10&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;219&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;
    &lt;priority&gt;219&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
		&lt;/clear-actions&gt;
	&lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;10&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;219&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;
    &lt;priority&gt;219&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:20.816358" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:20.816611" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:20.346094" elapsed="0.470577"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:20.822056" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:20.817058" elapsed="0.005131"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5acc26c900&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:20.336541" elapsed="0.485784"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:20.336027" elapsed="0.486420"/>
</kw>
<var name="${flowfile}">f219.xml</var>
<status status="PASS" start="2026-05-25T01:54:20.321277" elapsed="0.501257"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:20.823656" level="INFO">f220.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:20.823056" elapsed="0.000701"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:20.828671" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f220.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f220.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:20.828818" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:20.828530" elapsed="0.000317"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:20.829425" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3bc900&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:20.828999" elapsed="0.000455"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:20.829922" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:20.829631" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:20.830390" level="INFO">${flow_id} = 343</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:20.830117" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:20.830837" level="INFO">${flow_priority} = 220</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:20.830567" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:20.831635" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:20.831013" elapsed="0.000653"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:20.832165" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:20.831826" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:20.832675" level="INFO">${flow_id} = 343</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:20.832365" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:20.833199" level="INFO">${flow_priority} = 220</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:20.832869" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:20.833723" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:20.833394" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:20.834244" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:20.833921" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:20.834753" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3bc900&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:20.834444" elapsed="0.000351"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:20.828184" elapsed="0.006666"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Update Flow Via RPC" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:20.836176" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;write-metadata&gt;
                &lt;metadata-mask&gt;12&lt;/metadata-mask&gt;
                &lt;metadata&gt;10&lt;/metadata&gt;
            &lt;/write-metadata&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;343&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;220&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;
    &lt;priority&gt;220&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;
</msg>
<arg>${configured_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:20.835906" elapsed="0.000364"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:20.836678" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;write-metadata&gt;
                &lt;metadata-mask&gt;12&lt;/metadata-mask&gt;
                &lt;metadata&gt;10&lt;/metadata&gt;
            &lt;/write-metadata&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;343&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;220&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;
    &lt;priority&gt;220&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${updating_flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:20.836419" elapsed="0.000318"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:20.837171" level="INFO">${xml} = &lt;Element 'input' at 0x7f5accb4df80&gt;</msg>
<var>${xml}</var>
<arg>&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;/input&gt;</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:20.836883" elapsed="0.000316"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:20.837637" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service" /&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:20.837347" elapsed="0.000337"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:20.838214" level="INFO">${origflow} = &lt;Element 'flow' at 0x7f5accb4f470&gt;</msg>
<var>${origflow}</var>
<arg>${configured_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:20.837832" elapsed="0.000411"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:20.838749" level="INFO">${updflow} = &lt;Element 'flow' at 0x7f5accb4ddf0&gt;</msg>
<var>${updflow}</var>
<arg>${updating_flow_body}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:20.838393" elapsed="0.000384"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${origflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:20.838925" elapsed="0.000427"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${updflow}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:20.839505" elapsed="0.000263"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${origflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:20.839920" elapsed="0.000256"/>
</kw>
<kw name="Remove Element Attribute" owner="XML">
<arg>${updflow}</arg>
<arg>xmlns</arg>
<doc>Removes attribute ``name`` from the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:20.840329" elapsed="0.000238"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${origflow}</arg>
<arg>original-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:20.840714" elapsed="0.000238"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${updflow}</arg>
<arg>updated-flow</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:20.841115" elapsed="0.000237"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${origflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:20.841515" elapsed="0.000345"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>${updflow}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:20.842009" elapsed="0.000346"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${xml}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:20.842503" elapsed="0.000331"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:20.843287" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc093790&gt;</msg>
<var>${nodeelm}</var>
<arg>${xml}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:20.842987" elapsed="0.000328"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:20.843465" elapsed="0.000247"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:20.844308" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;write-metadata&gt;
                &lt;metadata-mask&gt;12&lt;/metadata-mask&gt;
                &lt;metadata&gt;10&lt;/metadata&gt;
            &lt;/write-metadata&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;220&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;
    &lt;priority&gt;220&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;write-metadata&gt;
                &lt;metadata-mask&gt;12&lt;/metadata-mask&gt;
                &lt;metadata&gt;10&lt;/metadata&gt;
            &lt;/write-metadata&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;220&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;
    &lt;priority&gt;220&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${xml}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:20.843859" elapsed="0.000553"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:20.845023" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;write-metadata&gt;
     ...</msg>
<var>${strxml}</var>
<arg>${xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:20.844561" elapsed="0.000493"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:21.316747" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 path_url=/rests/operations/sal-flow:update-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1871', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;&lt;original-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;write-metadata&gt;
                &lt;metadata-mask&gt;12&lt;/metadata-mask&gt;
                &lt;metadata&gt;10&lt;/metadata&gt;
            &lt;/write-metadata&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;220&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;
    &lt;priority&gt;220&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/original-flow&gt;&lt;updated-flow&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;write-metadata&gt;
                &lt;metadata-mask&gt;12&lt;/metadata-mask&gt;
                &lt;metadata&gt;10&lt;/metadata&gt;
            &lt;/write-metadata&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;220&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;
    &lt;priority&gt;220&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/updated-flow&gt;&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:21.316932" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:21.317210" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:update-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:20.845220" elapsed="0.472052"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:21.322445" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:21.317696" elapsed="0.004852"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7f5acc3bc900&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:20.835510" elapsed="0.487175"/>
</kw>
<arg>Update Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:20.835000" elapsed="0.487810"/>
</kw>
<var name="${flowfile}">f220.xml</var>
<status status="PASS" start="2026-05-25T01:54:20.822765" elapsed="0.500130"/>
</iter>
<var>${flowfile}</var>
<value>@{flowlist0}</value>
<status status="PASS" start="2026-05-25T01:53:56.197732" elapsed="25.125238"/>
</for>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.324278" level="INFO">Slept 3 seconds.</msg>
<arg>${flow_update_time}</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-05-25T01:54:21.323344" elapsed="3.001150"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:54:24.329509" level="INFO">dpctl dump-flows -O OpenFlow13</msg>
<arg>dpctl dump-flows -O OpenFlow13</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:54:24.324960" elapsed="0.004681"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:54:24.451883" level="INFO">*** s1 ------------------------------------------------------------------------
 cookie=0xa, duration=98.957s, table=0, n_packets=16, n_bytes=1240, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x1, duration=28.064s, table=2, n_packets=0, n_bytes=0, priority=1,ip,nw_dst=10.0.1.0/24 actions=drop
 cookie=0x1f, duration=16.506s, table=2, n_packets=0, n_bytes=0, priority=31,ip,nw_dst=10.0.0.0/24 actions=TABLE
 cookie=0x24, duration=16s, table=2, n_packets=0, n_bytes=0, priority=36,ip,nw_dst=10.0.0.0/24 actions=drop
 cookie=0x26, duration=15.504s, table=2, n_packets=0, n_bytes=0, priority=38,ip,nw_dst=10.0.0.0/24 actions=drop
 cookie=0xdc, duration=3.481s, table=2, n_packets=0, n_bytes=0, priority=220,ip,nw_dst=10.0.0.0/24 actions=write_metadata:0xa/0xc
 cookie=0xdb, duration=3.980s, table=2, n_packets=0, n_bytes=0, priority=219,dl_vlan=10,dl_vlan_pcp=3 actions=clear_actions
 cookie=0xda, duration=4.484s, table=2, n_packets=0, n_bytes=0, priority=218,tun_id=0x29a0/0xfff0 actions=goto_table:3
 cookie=0xd6, duration=4.972s, table=2, n_packets=0, n_bytes=0, priority=214,ip,nw_src=10.1.2.0/24,nw_dst=20.4.0.0/16,nw_proto=56,nw_tos=240,nw_ecn=1 actions=drop
 cookie=0x15, duration=19.008s, table=2, n_packets=0, n_bytes=0, priority=21,udp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80::2acf:e9ff:fe21:6431,nw_tos=32,nw_ecn=3,tp_src=25364,tp_dst=8080 actions=drop
 cookie=0x16, duration=18.509s, table=2, n_packets=0, n_bytes=0, priority=22,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_tos=240,nw_ecn=3,tp_src=183,tp_dst=8080 actions=drop
 cookie=0x65, duration=14s, table=2, n_packets=0, n_bytes=0, priority=101,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_tos=240,nw_ecn=3,tp_src=183,tp_dst=8080 actions=drop
 cookie=0x68, duration=12.497s, table=2, n_packets=0, n_bytes=0, priority=104,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_tos=240,nw_ecn=3,tp_src=183,tp_dst=8080 actions=drop
 cookie=0xd1, duration=5.484s, table=2, n_packets=0, n_bytes=0, priority=209,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_tos=240,nw_ecn=3,tp_src=183,tp_dst=8080 actions=drop
 cookie=0xa, duration=23.516s, table=2, n_packets=0, n_bytes=0, priority=10,sctp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=0,nw_ecn=0,tp_src=768,tp_dst=384 actions=drop
 cookie=0xb, duration=23.015s, table=2, n_packets=0, n_bytes=0, priority=11,icmp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=108,nw_ecn=3,icmp_type=6,icmp_code=3 actions=drop
 cookie=0xcd, duration=6.485s, table=2, n_packets=0, n_bytes=0, priority=205,sctp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=0,nw_ecn=0,tp_src=768,tp_dst=384 actions=drop
 cookie=0xce, duration=5.985s, table=2, n_packets=0, n_bytes=0, priority=206,sctp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=0,nw_ecn=0,tp_src=768,tp_dst=384 actions=drop
 cookie=0xc9, duration=8.491s, table=2, n_packets=0, n_bytes=0, priority=201,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_ecn=3,tp_src=183,tp_dst=8080 actions=drop
 cookie=0xca, duration=7.987s, table=2, n_packets=0, n_bytes=0, priority=202,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_ecn=3,tp_src=183,tp_dst=8080 actions=drop
 cookie=0xcb, duration=7.488s, table=2, n_packets=0, n_bytes=0, priority=203,udp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_ecn=3,tp_src=183,tp_dst=8080 actions=drop
 cookie=0xcc, duration=6.985s, table=2, n_packets=0, n_bytes=0, priority=204,udp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_ecn=3,tp_src=183,tp_dst=8080 actions=drop
 cookie=0x6b, duration=10.983s, table=2, n_packets=0, n_bytes=0, priority=107,udp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=20:14:29:01:19:61,nw_src=19.64.0.0/10,nw_dst=172.168.192.0/18,nw_tos=32,nw_ecn=3,tp_src=25364,tp_dst=8080 actions=drop
 cookie=0x6c, duration=10.492s, table=2, n_packets=0, n_bytes=0, priority=108,udp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=20:14:29:01:19:61,nw_src=19.64.0.0/10,nw_dst=172.168.192.0/18,nw_tos=32,nw_ecn=3,tp_src=25364,tp_dst=8080 actions=drop
 cookie=0x6d, duration=9.992s, table=2, n_packets=0, n_bytes=0, priority=109,udp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=20:14:29:01:19:61,nw_src=19.64.0.0/10,nw_dst=172.168.192.0/18,nw_tos=32,nw_ecn=3,tp_src=25364,tp_dst=8080 actions=drop
 cookie=0x71, duration=8.991s, table=2, n_packets=0, n_bytes=0, priority=113,udp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=20:14:29:01:19:61,nw_src=19.64.0.0/10,nw_dst=172.168.192.0/18,nw_tos=32,nw_ecn=3,tp_src=25364,tp_dst=8080 actions=drop
 cookie=0x6e, duration=9.492s, table=2, n_packets=0, n_bytes=0, priority=110,tcp6,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_ecn=3,tp_src=183,tp_dst=8080 actions=drop
 cookie=0x6a, duration=11.493s, table=2, n_packets=0, n_bytes=0, priority=106,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdcd:a987:6000:0/100,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_tos=180,nw_ecn=2,tp_src=20345,tp_dst=80 actions=drop
 cookie=0x69, duration=11.994s, table=2, n_packets=0, n_bytes=0, priority=105,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdcd:a000::/84,ipv6_dst=fe80:2acf:e9ff:fe21::6431,nw_tos=180,nw_ecn=2,tp_src=20345,tp_dst=80 actions=drop
 cookie=0x66, duration=13.498s, table=2, n_packets=0, n_bytes=0, priority=102,tcp,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=8,nw_ecn=2,tp_src=25364,tp_dst=8080 actions=drop
 cookie=0x67, duration=12.997s, table=2, n_packets=0, n_bytes=0, priority=103,tcp,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=8,nw_ecn=2,tp_src=25364,tp_dst=8080 actions=drop
 cookie=0x2d, duration=14.501s, table=2, n_packets=0, n_bytes=0, priority=45,metadata=0x46605a66/0xfff0ffff actions=TABLE
 cookie=0x2b, duration=15.002s, table=2, n_packets=0, n_bytes=0, priority=43,icmp6,icmp_type=135,icmp_code=1 actions=drop
 cookie=0x17, duration=18.006s, table=2, n_packets=0, n_bytes=0, priority=23,tcp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,ipv6_label=0x00021,nw_tos=240,nw_ecn=3,tp_src=183,tp_dst=8080 actions=drop
 cookie=0x19, duration=17.003s, table=2, n_packets=0, n_bytes=0, priority=25,icmp6,metadata=0x3039,ipv6_src=1234:5678:9abc:def0:fdc0::/76,ipv6_dst=fe80:2acf:e9ff:fe21::6431,ipv6_label=0x00021,nw_tos=240,nw_ecn=3,icmp_type=6,icmp_code=3 actions=drop
 cookie=0x18, duration=17.507s, table=2, n_packets=0, n_bytes=0, priority=24,tun_id=0xa1f actions=drop
 cookie=0x14, duration=19.512s, table=2, n_packets=0, n_bytes=0, priority=20,metadata=0x3039/0xf0ff actions=drop
 cookie=0x13, duration=20.018s, table=2, n_packets=0, n_bytes=0, priority=19,metadata=0x3039 actions=drop
 cookie=0x12, duration=20.511s, table=2, n_packets=0, n_bytes=0, priority=18,ipv6,ipv6_src=fe80::2acf:e9ff:fe21:6431,ipv6_dst=aabb:1234:2acf:e9ff::/64 actions=drop
 cookie=0x11, duration=21.012s, table=2, n_packets=0, n_bytes=0, priority=17,mpls,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61,mpls_label=567,mpls_tc=3,mpls_bos=1 actions=drop
 cookie=0x10, duration=21.515s, table=2, n_packets=0, n_bytes=0, priority=16,ip,dl_vlan=78,dl_vlan_pcp=3,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61 actions=drop
 cookie=0xf, duration=22.013s, table=2, n_packets=0, n_bytes=0, priority=15,mpls,dl_vlan=78,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:29:01:19:61 actions=drop
 cookie=0xe, duration=22.514s, table=2, n_packets=0, n_bytes=0, priority=14,arp,dl_src=00:00:fc:01:23:ae,dl_dst=ff:ff:ff:ff:ff:ff,arp_spa=192.168.4.1,arp_tpa=10.21.22.23,arp_op=1,arp_sha=12:34:56:78:98:ab,arp_tha=fe:dc:ba:98:76:54 actions=drop
 cookie=0x9, duration=24.016s, table=2, n_packets=0, n_bytes=0, priority=9,udp,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=20:14:29:01:19:61,nw_src=19.1.0.0/16,nw_dst=172.168.5.0/24,nw_tos=32,nw_ecn=3,tp_src=25364,tp_dst=8080 actions=drop
 cookie=0x8, duration=24.520s, table=2, n_packets=0, n_bytes=0, priority=8,tcp,in_port=0,dl_src=00:00:00:11:23:00/ff:ff:ff:ff:ff:00,dl_dst=ff:ff:29:01:19:61,nw_src=17.0.0.0/8,nw_dst=172.168.0.0/16,nw_tos=8,nw_ecn=2,tp_src=25364,tp_dst=8080 actions=drop
 cookie=0x7, duration=25.020s, table=2, n_packets=0, n_bytes=0, priority=7,ip,in_port=0,dl_src=00:00:00:11:23:ae,dl_dst=ff:ff:ff:ff:ff:aa,nw_src=10.1.2.0/24,nw_dst=20.4.0.0/16,nw_proto=56,nw_tos=60,nw_ecn=1 actions=drop
 cookie=0x6, duration=25.520s, table=2, n_packets=0, n_bytes=0, priority=6,ip,dl_src=00:00:00:01:23:ae,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=10.1.2.0/24,nw_dst=40.4.0.0/16 actions=drop
 cookie=0x5, duration=26.023s, table=2, n_packets=0, n_bytes=0, priority=5,ip,in_port=0,dl_src=00:00:00:00:23:ae,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=10.1.2.0/24,nw_dst=20.4.0.0/16 actions=drop
 cookie=0x4, duration=26.513s, table=2, n_packets=0, n_bytes=0, priority=4,mpls,dl_src=00:00:00:00:23:ae,dl_dst=ff:ff:ff:ff:ff:ff actions=drop
 cookie=0x3, duration=27.026s, table=2, n_packets=0, n_bytes=0, priority=3,dl_src=00:00:00:00:00:01 actions=TABLE
 cookie=0x2, duration=27.525s, table=2, n_packets=0, n_bytes=0, priority=2,ip,nw_src=10.0.0.1 actions=TABLE
mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:54:24.329986" elapsed="0.122338"/>
</kw>
<doc>Update all flows and waits for SM to collect data</doc>
<status status="PASS" start="2026-05-25T01:53:56.197371" elapsed="28.255198"/>
</test>
<test id="s1-s3-s2-t52" name="Test Is Flow 1 Updated" line="161">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:24.465436" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f1.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f1.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:24.465636" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:24.465263" elapsed="0.000403"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:24.466357" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc389a30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:24.465852" elapsed="0.000533"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:24.466829" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:24.466543" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:24.467305" level="INFO">${flow_id} = 124</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:24.467009" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:24.467773" level="INFO">${flow_priority} = 1</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:24.467486" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:24.468897" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:24.467952" elapsed="0.000978"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.469484" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:24.469120" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.470044" level="INFO">${flow_id} = 124</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:24.469685" elapsed="0.000419"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.470597" level="INFO">${flow_priority} = 1</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:24.470267" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.471128" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:24.470792" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.471699" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:24.471331" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.472241" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc389a30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:24.471898" elapsed="0.000384"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:24.464733" elapsed="0.007613"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.472921" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:24.472501" elapsed="0.000450"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.473375" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;124&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;1&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf1&lt;/flow-name&gt;
    &lt;priority&gt;1&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:24.473123" elapsed="0.000312"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.481620" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:24.481243" elapsed="0.000410"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:24.488321" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=124?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=124?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:24.488686" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=124?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:24.488872" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:24.481900" elapsed="0.007011"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.489771" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:24.489315" elapsed="0.000527"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.493346" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:24.490057" elapsed="0.003369"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:24.496263" elapsed="0.000059"/>
</return>
<status status="PASS" start="2026-05-25T01:54:24.493554" elapsed="0.002829"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:24.493514" elapsed="0.002908"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:24.496678" elapsed="0.000033"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:24.497019" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:24.496815" elapsed="0.000301"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:24.496790" elapsed="0.000361"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:24.497198" elapsed="0.000022"/>
</return>
<msg time="2026-05-25T01:54:24.499754" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:24.499823" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 124 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:24.480871" elapsed="0.018987"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:24.502209" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:24.500610" elapsed="0.001649"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:24.500592" elapsed="0.001689"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.502905" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:24.502440" elapsed="0.000491"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.503463" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:24.503112" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:24.503575" elapsed="0.000036"/>
</return>
<msg time="2026-05-25T01:54:24.503763" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:24.500236" elapsed="0.003553"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:24.503951" elapsed="0.000435"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:24.480167" elapsed="0.024287"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.512890" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:24.512494" elapsed="0.000431"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:24.524086" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:24.532222" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;537000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;41000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;543000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;42000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;47000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:24.532716" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:24.513096" elapsed="0.019650"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.533421" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:24.533021" elapsed="0.000448"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.536218" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;537000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;41000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;543000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;42000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;47000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;553000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;527000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;55000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;54000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;555000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;19000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;62000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;552000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;59000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;520000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;524000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;11000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;65000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;536000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;26000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;531000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;31000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;532000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;33000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;531000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:24.533617" elapsed="0.003261"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:24.538768" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:24.536973" elapsed="0.001853"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:24.536943" elapsed="0.001909"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:24.562419" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:24.562492" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:24.539012" elapsed="0.023506"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:24.565050" elapsed="0.000087"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:24.562657" elapsed="0.002560"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:24.562622" elapsed="0.002650"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:24.565354" elapsed="0.000073"/>
</return>
<msg time="2026-05-25T01:54:24.565818" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:24.565916" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 124 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:24.512041" elapsed="0.053926"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:24.569492" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:24.567313" elapsed="0.002228"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:24.567271" elapsed="0.002293"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.570305" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:24.569743" elapsed="0.000595"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.570991" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:24.570628" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:24.571094" elapsed="0.000037"/>
</return>
<msg time="2026-05-25T01:54:24.571288" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:24.566511" elapsed="0.004802"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:24.571478" elapsed="0.000483"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:24.511142" elapsed="0.060888"/>
</kw>
<arg>f1.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:24.461231" elapsed="0.110882"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:24.453153" elapsed="0.119096"/>
</test>
<test id="s1-s3-s2-t53" name="Test Is Flow 2 Updated" line="163">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:24.583390" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f2.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f2.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:24.583626" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:24.583216" elapsed="0.000442"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:24.584338" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc359620&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:24.583849" elapsed="0.000517"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:24.584807" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:24.584525" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:24.585274" level="INFO">${flow_id} = 125</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:24.584987" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:24.585717" level="INFO">${flow_priority} = 2</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:24.585451" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:24.586596" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:24.585926" elapsed="0.000701"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.587158" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:24.586793" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.587800" level="INFO">${flow_id} = 125</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:24.587445" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.588343" level="INFO">${flow_priority} = 2</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:24.587997" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.588851" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:24.588538" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.589383" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:24.589048" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.589899" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc359620&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:24.589580" elapsed="0.000360"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:24.582814" elapsed="0.007189"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.590588" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:24.590175" elapsed="0.000450"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.591088" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;125&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;
    &lt;/match&gt;
    &lt;cookie&gt;2&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf2&lt;/flow-name&gt;
    &lt;priority&gt;2&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:24.590814" elapsed="0.000339"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.599394" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:24.599043" elapsed="0.000380"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:24.605333" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=125?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=125?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:24.605603" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=125?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:24.605741" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:24.599607" elapsed="0.006162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.606389" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:24.606028" elapsed="0.000407"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.609090" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:24.606581" elapsed="0.002589"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:24.611987" elapsed="0.000058"/>
</return>
<status status="PASS" start="2026-05-25T01:54:24.609292" elapsed="0.002836"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:24.609255" elapsed="0.002913"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:24.612419" elapsed="0.000034"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:24.612867" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:24.612660" elapsed="0.000284"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:24.612633" elapsed="0.000345"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:24.613026" elapsed="0.000021"/>
</return>
<msg time="2026-05-25T01:54:24.615489" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:24.615556" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 125 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:24.598712" elapsed="0.016927"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:24.618048" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:24.616486" elapsed="0.001621"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:24.616467" elapsed="0.001663"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.618751" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:24.618287" elapsed="0.000491"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.619310" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:24.618940" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:24.619387" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:54:24.619567" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:24.616011" elapsed="0.003595"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:24.619771" elapsed="0.000434"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:24.598076" elapsed="0.022195"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.628456" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:24.628053" elapsed="0.000437"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:24.637569" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:24.638871" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;537000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;41000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;543000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;42000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;47000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:24.639631" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:24.628648" elapsed="0.011047"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.640811" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:24.640167" elapsed="0.000744"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.649998" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;537000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;41000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;543000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;42000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;47000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;553000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;527000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;55000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;54000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;555000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;19000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;62000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;552000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;59000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;520000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;524000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;11000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;65000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;536000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;26000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;531000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;31000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;532000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;33000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;531000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:24.641266" elapsed="0.009467"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:24.652740" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:24.650851" elapsed="0.001949"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:24.650817" elapsed="0.002007"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:24.673849" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:24.673924" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:24.653052" elapsed="0.020898"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:24.676216" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:24.674117" elapsed="0.002164"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:24.674062" elapsed="0.002248"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:24.676350" elapsed="0.000043"/>
</return>
<msg time="2026-05-25T01:54:24.676584" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:24.676629" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 125 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:24.627619" elapsed="0.049033"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:24.678898" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:24.677318" elapsed="0.001626"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:24.677300" elapsed="0.001666"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.679645" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:24.679138" elapsed="0.000537"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.680212" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:24.679839" elapsed="0.000400"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:24.680289" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:54:24.680470" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:24.676919" elapsed="0.003577"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:24.680656" elapsed="0.000405"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:24.626752" elapsed="0.054392"/>
</kw>
<arg>f2.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:24.579434" elapsed="0.101771"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:24.572571" elapsed="0.108760"/>
</test>
<test id="s1-s3-s2-t54" name="Test Is Flow 3 Updated" line="165">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:24.692578" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f3.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f3.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:24.692788" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:24.692402" elapsed="0.000416"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:24.693526" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4acd10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:24.693018" elapsed="0.000536"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:24.693997" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:24.693713" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:24.694465" level="INFO">${flow_id} = 126</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:24.694193" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:24.694910" level="INFO">${flow_priority} = 3</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:24.694642" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:24.695801" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:24.695101" elapsed="0.000731"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.696366" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:24.695997" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.696974" level="INFO">${flow_id} = 126</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:24.696645" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.697517" level="INFO">${flow_priority} = 3</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:24.697188" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.698021" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:24.697710" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.698552" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:24.698234" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.699081" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4acd10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:24.698748" elapsed="0.000381"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:24.692013" elapsed="0.007183"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.699793" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:24.699357" elapsed="0.000466"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.700249" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;126&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:00:01&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;3&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf3&lt;/flow-name&gt;
    &lt;priority&gt;3&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:24.699980" elapsed="0.000328"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.708682" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:24.708288" elapsed="0.000428"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:24.715141" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=126?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=126?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:24.715554" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=126?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:24.715773" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:24.708869" elapsed="0.006944"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.716612" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:24.716155" elapsed="0.000525"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.720101" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:24.716896" elapsed="0.003284"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:24.722931" elapsed="0.000053"/>
</return>
<status status="PASS" start="2026-05-25T01:54:24.720305" elapsed="0.002738"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:24.720266" elapsed="0.002836"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:24.723354" elapsed="0.000035"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:24.723860" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:24.723588" elapsed="0.000351"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:24.723561" elapsed="0.000412"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:24.724020" elapsed="0.000021"/>
</return>
<msg time="2026-05-25T01:54:24.725776" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:24.725822" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 126 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:24.707907" elapsed="0.017939"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:24.728125" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:24.726494" elapsed="0.001679"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:24.726476" elapsed="0.001719"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.728841" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:24.728356" elapsed="0.000513"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.729411" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:24.729036" elapsed="0.000402"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:24.729490" elapsed="0.000035"/>
</return>
<msg time="2026-05-25T01:54:24.729677" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:24.726123" elapsed="0.003580"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:24.729866" elapsed="0.000438"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:24.707162" elapsed="0.023211"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.738291" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:24.737941" elapsed="0.000380"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:24.747402" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:24.748129" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;537000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;41000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;543000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;42000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;47000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:24.748687" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:24.738463" elapsed="0.010284"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.749888" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:24.749228" elapsed="0.000761"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.756416" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;537000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;41000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;543000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;42000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;47000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;553000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;527000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;55000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;54000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;555000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;19000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;62000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;552000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;59000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;520000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;524000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;11000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;65000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;536000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;26000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;531000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;31000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;532000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;33000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;531000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:24.750340" elapsed="0.007580"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:24.761138" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:24.758129" elapsed="0.003064"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:24.758050" elapsed="0.003167"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:24.784060" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:24.784147" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:24.761431" elapsed="0.022743"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:24.786281" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:24.784311" elapsed="0.002032"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:24.784276" elapsed="0.002094"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:24.786410" elapsed="0.000043"/>
</return>
<msg time="2026-05-25T01:54:24.786646" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:24.786691" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 126 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:24.737546" elapsed="0.049168"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:24.789036" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:24.787383" elapsed="0.001713"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:24.787364" elapsed="0.001756"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.789748" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:24.789283" elapsed="0.000494"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.790315" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:24.789942" elapsed="0.000400"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:24.790393" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:54:24.790577" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:24.786989" elapsed="0.003614"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:24.790766" elapsed="0.000430"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:24.736847" elapsed="0.054416"/>
</kw>
<arg>f3.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:24.688567" elapsed="0.102760"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:24.681540" elapsed="0.109918"/>
</test>
<test id="s1-s3-s2-t55" name="Test Is Flow 4 Updated" line="167">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:24.802501" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f4.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f4.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:24.802678" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:24.802355" elapsed="0.000352"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:24.803310" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e5620&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:24.802864" elapsed="0.000475"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:24.803799" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:24.803497" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:24.804267" level="INFO">${flow_id} = 127</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:24.803980" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:24.804712" level="INFO">${flow_priority} = 4</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:24.804445" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:24.805578" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:24.804889" elapsed="0.000720"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.806122" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:24.805769" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.806714" level="INFO">${flow_id} = 127</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:24.806389" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.807256" level="INFO">${flow_priority} = 4</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:24.806911" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.807797" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:24.807450" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.808339" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:24.807996" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.808863" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e5620&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:24.808539" elapsed="0.000367"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:24.802001" elapsed="0.006964"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.809539" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:24.809134" elapsed="0.000435"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.809975" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;127&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;4&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf4&lt;/flow-name&gt;
    &lt;priority&gt;4&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:24.809725" elapsed="0.000310"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.818317" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:24.817934" elapsed="0.000415"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:24.823927" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=127?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=127?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:24.824236" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=127?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:24.824402" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:24.818498" elapsed="0.005944"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.825176" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:24.824730" elapsed="0.000514"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.828841" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:24.825460" elapsed="0.003457"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:24.831730" elapsed="0.000057"/>
</return>
<status status="PASS" start="2026-05-25T01:54:24.829043" elapsed="0.002804"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:24.829003" elapsed="0.002882"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:24.832148" elapsed="0.000034"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:24.832494" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:24.832347" elapsed="0.000200"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:24.832328" elapsed="0.000243"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:24.832604" elapsed="0.000015"/>
</return>
<msg time="2026-05-25T01:54:24.834280" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:24.834327" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 127 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:24.817580" elapsed="0.016770"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:24.836610" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:24.834976" elapsed="0.001682"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:24.834958" elapsed="0.001722"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.837331" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:24.836842" elapsed="0.000517"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.837872" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:24.837522" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:24.837949" elapsed="0.000034"/>
</return>
<msg time="2026-05-25T01:54:24.838152" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:24.834611" elapsed="0.003567"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:24.838340" elapsed="0.000415"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:24.816894" elapsed="0.021927"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.846863" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:24.846518" elapsed="0.000374"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:24.855326" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:24.856025" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;537000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;41000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;543000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;42000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;47000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:24.856545" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:24.847040" elapsed="0.009565"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.857720" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:24.857041" elapsed="0.000779"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.864483" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;537000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;41000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;543000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;42000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;47000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;553000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;527000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;55000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;54000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;555000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;19000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;62000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;552000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;59000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;520000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;524000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;11000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;65000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;536000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;26000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;531000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;31000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;532000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;33000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;531000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:24.858171" elapsed="0.007019"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:24.867103" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:24.865302" elapsed="0.001859"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:24.865267" elapsed="0.001918"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:24.896336" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:24.896408" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:24.867373" elapsed="0.029062"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:24.898585" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:24.896584" elapsed="0.002076"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:24.896546" elapsed="0.002164"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:24.898757" elapsed="0.000044"/>
</return>
<msg time="2026-05-25T01:54:24.898995" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:24.899040" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 127 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:24.846114" elapsed="0.052949"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:24.901411" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:24.899716" elapsed="0.001760"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:24.899697" elapsed="0.001809"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.902384" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:24.901721" elapsed="0.000700"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.903144" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:24.902650" elapsed="0.000523"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:24.903226" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:54:24.903411" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:24.899345" elapsed="0.004091"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:24.903600" elapsed="0.000444"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:24.845370" elapsed="0.058760"/>
</kw>
<arg>f4.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:24.798716" elapsed="0.105477"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:24.791835" elapsed="0.112492"/>
</test>
<test id="s1-s3-s2-t56" name="Test Is Flow 5 Updated" line="169">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:24.916062" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f5.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f5.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:24.916266" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:24.915914" elapsed="0.000381"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:24.916945" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc092b10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:24.916472" elapsed="0.000502"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:24.917440" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:24.917149" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:24.917908" level="INFO">${flow_id} = 128</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:24.917621" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:24.918379" level="INFO">${flow_priority} = 5</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:24.918107" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:24.919301" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:24.918555" elapsed="0.000779"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.919847" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:24.919495" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.920459" level="INFO">${flow_id} = 128</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:24.920128" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.920999" level="INFO">${flow_priority} = 5</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:24.920656" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.921533" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:24.921214" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.922050" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:24.921730" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.922588" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc092b10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:24.922263" elapsed="0.000367"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:24.915540" elapsed="0.007176"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.923287" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:24.922876" elapsed="0.000441"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.923717" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;128&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;5&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;5&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:24.923472" elapsed="0.000336"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.931655" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:24.931342" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:24.936500" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=128?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=128?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:24.936803" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=128?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:24.936938" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:24.931847" elapsed="0.005124"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.937516" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:24.937198" elapsed="0.000376"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.939999" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:24.937760" elapsed="0.002291"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:24.942622" elapsed="0.000056"/>
</return>
<status status="PASS" start="2026-05-25T01:54:24.940155" elapsed="0.002583"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:24.940129" elapsed="0.002646"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:24.943059" elapsed="0.000054"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:24.943410" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:24.943217" elapsed="0.000275"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:24.943192" elapsed="0.000364"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:24.943625" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:54:24.946045" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:24.946133" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 128 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:24.931001" elapsed="0.015167"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:24.948965" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:24.946972" elapsed="0.002040"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:24.946946" elapsed="0.002088"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.949616" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:24.949203" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.950197" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:24.949821" elapsed="0.000405"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:24.950280" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:24.950460" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:24.946488" elapsed="0.003997"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:24.950645" elapsed="0.000550"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:24.930431" elapsed="0.020849"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.959578" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:24.959260" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:24.967270" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:24.968118" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;537000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;41000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;543000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;42000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;47000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:24.968531" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:24.959751" elapsed="0.008817"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.969203" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:24.968811" elapsed="0.000458"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:24.976235" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;537000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;41000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;543000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;42000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;47000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;553000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;527000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;55000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;54000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;555000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;19000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;62000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;552000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;59000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;520000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;524000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;11000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;65000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;536000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;26000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;531000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;31000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;532000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;33000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;531000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:24.969479" elapsed="0.007744"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:24.979852" elapsed="0.000035"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:24.977338" elapsed="0.002605"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:24.977306" elapsed="0.002671"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:25.044661" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:25.044727" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:24.980205" elapsed="0.064548"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:25.046727" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:25.044888" elapsed="0.001903"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.044853" elapsed="0.001964"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:25.046856" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:54:25.047099" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:25.047146" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 128 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:24.958817" elapsed="0.088354"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.049424" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:25.047795" elapsed="0.001675"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.047776" elapsed="0.001717"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.050215" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.049659" elapsed="0.000585"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.050778" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.050415" elapsed="0.000389"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:25.050855" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:54:25.051037" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:25.047425" elapsed="0.003638"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:25.051243" elapsed="0.000409"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:24.958089" elapsed="0.093630"/>
</kw>
<arg>f5.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:24.912216" elapsed="0.139576"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:24.904855" elapsed="0.147087"/>
</test>
<test id="s1-s3-s2-t57" name="Test Is Flow 6 Updated" line="171">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:25.063184" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f6.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f6.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:25.063376" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:25.063020" elapsed="0.000385"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:25.064047" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4ad9e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:25.063561" elapsed="0.000530"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:25.064545" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:25.064253" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:25.065131" level="INFO">${flow_id} = 129</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:25.064740" elapsed="0.000424"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:25.065604" level="INFO">${flow_priority} = 6</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:25.065323" elapsed="0.000307"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:25.066517" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:25.065795" elapsed="0.000754"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.067154" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.066724" elapsed="0.000477"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.068035" level="INFO">${flow_id} = 129</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.067471" elapsed="0.000625"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.068609" level="INFO">${flow_priority} = 6</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.068268" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.069295" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.068869" elapsed="0.000476"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.069849" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.069505" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.070410" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4ad9e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.070054" elapsed="0.000398"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:25.062672" elapsed="0.007837"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.071085" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.070669" elapsed="0.000448"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.071521" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;129&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;6&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;6&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.071273" elapsed="0.000310"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.079497" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:25.079175" elapsed="0.000349"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:25.084719" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=129?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=129?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:25.084954" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=129?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:25.085057" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:25.079665" elapsed="0.005440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.085531" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.085270" elapsed="0.000306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.087796" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.085721" elapsed="0.002196"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:25.090373" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-05-25T01:54:25.088001" elapsed="0.002466"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.087979" elapsed="0.002523"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:25.090751" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:25.091088" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:25.090881" elapsed="0.000282"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:25.090858" elapsed="0.000337"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.091239" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:25.093510" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:25.093574" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 129 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:25.078819" elapsed="0.014786"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.096548" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:25.094451" elapsed="0.002142"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.094426" elapsed="0.002189"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.097181" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.096760" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.097723" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.097375" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:25.097799" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:25.097975" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:25.093957" elapsed="0.004044"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:25.098171" elapsed="0.000395"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:25.078225" elapsed="0.020405"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.106346" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:25.106032" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:25.112925" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:25.113715" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;537000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;41000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;543000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;42000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;47000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:25.114143" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:25.106501" elapsed="0.007682"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.114806" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.114446" elapsed="0.000423"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.118664" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;537000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;41000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;543000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;42000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;47000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;553000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;527000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;55000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;54000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;555000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;19000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;62000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;552000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;59000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;520000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;524000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;11000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;65000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;536000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;26000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;531000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;31000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;532000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;33000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;531000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.115087" elapsed="0.004495"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.121607" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:25.119683" elapsed="0.001973"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.119655" elapsed="0.002023"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:25.142335" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:25.142385" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:25.121817" elapsed="0.020591"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:25.144247" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:25.142492" elapsed="0.001813"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.142470" elapsed="0.001860"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:25.144363" elapsed="0.000034"/>
</return>
<msg time="2026-05-25T01:54:25.144568" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:25.144613" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 129 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:25.105658" elapsed="0.038979"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.146821" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:25.145222" elapsed="0.001644"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.145203" elapsed="0.001686"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.147476" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.147038" elapsed="0.000466"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.148061" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.147668" elapsed="0.000436"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:25.148155" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:54:25.148340" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:25.144862" elapsed="0.003503"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:25.148523" elapsed="0.000395"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:25.105026" elapsed="0.043955"/>
</kw>
<arg>f6.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:25.059252" elapsed="0.089786"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:25.052405" elapsed="0.096769"/>
</test>
<test id="s1-s3-s2-t58" name="Test Is Flow 7 Updated" line="173">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:25.160135" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f7.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f7.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:25.160338" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:25.159969" elapsed="0.000400"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:25.160951" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3bc310&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:25.160522" elapsed="0.000457"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:25.161434" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:25.161147" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:25.161880" level="INFO">${flow_id} = 130</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:25.161611" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:25.162339" level="INFO">${flow_priority} = 7</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:25.162054" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:25.163252" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:25.162515" elapsed="0.000768"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.163772" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.163439" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.164379" level="INFO">${flow_id} = 130</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.164034" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.164899" level="INFO">${flow_priority} = 7</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.164573" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.165422" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.165107" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.165936" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.165618" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.166467" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3bc310&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.166146" elapsed="0.000362"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:25.159577" elapsed="0.006986"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.167113" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.166714" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.167545" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;130&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;15&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;7&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf7&lt;/flow-name&gt;
    &lt;priority&gt;7&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.167303" elapsed="0.000305"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.175458" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:25.175153" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:25.180801" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=130?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=130?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:25.181019" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=130?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:25.181144" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:25.175614" elapsed="0.005556"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.181593" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.181338" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.183827" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.181784" elapsed="0.002129"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:25.186348" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-05-25T01:54:25.183989" elapsed="0.002499"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.183967" elapsed="0.002560"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:25.186728" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:25.187042" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:25.186856" elapsed="0.000282"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:25.186833" elapsed="0.000337"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.187217" elapsed="0.000023"/>
</return>
<msg time="2026-05-25T01:54:25.189591" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:25.189655" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 130 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:25.174820" elapsed="0.014868"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.192591" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:25.190477" elapsed="0.002161"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.190451" elapsed="0.002209"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.193224" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.192807" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.193768" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.193415" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:25.193846" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:25.194023" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:25.189986" elapsed="0.004062"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:25.194223" elapsed="0.000384"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:25.174261" elapsed="0.020414"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.202471" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:25.202171" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:25.210650" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:25.211441" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;537000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;41000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;543000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;42000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;47000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:25.211835" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:25.202627" elapsed="0.009245"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.212545" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.212140" elapsed="0.000467"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.216375" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;537000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;41000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;543000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;42000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;47000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;553000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;527000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;55000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;54000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;555000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;19000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;62000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;552000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;59000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;520000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;524000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;11000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;65000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;536000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;26000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;531000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;31000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;532000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;33000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;531000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.212809" elapsed="0.004483"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.219840" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:25.217395" elapsed="0.002547"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.217367" elapsed="0.002609"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:25.241708" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:25.241756" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:25.220196" elapsed="0.021584"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:25.243577" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:25.241861" elapsed="0.001773"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.241841" elapsed="0.001817"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:25.243691" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:25.243887" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:25.243953" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 130 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:25.201779" elapsed="0.042198"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.246265" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:25.244681" elapsed="0.001630"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.244662" elapsed="0.001671"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.246887" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.246483" elapsed="0.000431"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.247446" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.247093" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:25.247522" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:25.247699" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:25.244217" elapsed="0.003507"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:25.247880" elapsed="0.000416"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:25.201165" elapsed="0.047195"/>
</kw>
<arg>f7.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:25.156195" elapsed="0.092223"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:25.149377" elapsed="0.099159"/>
</test>
<test id="s1-s3-s2-t59" name="Test Is Flow 8 Updated" line="175">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:25.259210" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f8.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f8.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:25.259362" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:25.259054" elapsed="0.000337"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:25.259999" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d77e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:25.259542" elapsed="0.000485"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:25.260480" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:25.260198" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:25.260930" level="INFO">${flow_id} = 131</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:25.260658" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:25.261394" level="INFO">${flow_priority} = 8</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:25.261122" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:25.262344" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:25.261572" elapsed="0.000803"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.262865" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.262533" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.263459" level="INFO">${flow_id} = 131</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.263121" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.264001" level="INFO">${flow_priority} = 8</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.263658" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.264531" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.264213" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.265055" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.264731" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.265757" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d77e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.265277" elapsed="0.000523"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:25.258726" elapsed="0.007132"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.266417" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.266011" elapsed="0.000437"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.266846" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;131&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:00&lt;/address&gt;
                &lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;8&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf8&lt;/flow-name&gt;
    &lt;priority&gt;8&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.266601" elapsed="0.000310"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.274552" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:25.274252" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:25.279628" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=131?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=131?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:25.279827" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=131?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:25.279926" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:25.274708" elapsed="0.005257"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.280404" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.280148" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.282638" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.280594" elapsed="0.002096"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:25.284559" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-05-25T01:54:25.282794" elapsed="0.001832"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.282771" elapsed="0.001880"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:25.284795" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:25.285022" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:25.284888" elapsed="0.000201"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:25.284871" elapsed="0.000243"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.285147" elapsed="0.000015"/>
</return>
<msg time="2026-05-25T01:54:25.286753" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:25.286799" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 131 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:25.273916" elapsed="0.012907"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.289299" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:25.287387" elapsed="0.001976"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.287370" elapsed="0.002023"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.290173" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.289597" elapsed="0.000615"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.290927" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.290442" elapsed="0.000520"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:25.291032" elapsed="0.000058"/>
</return>
<msg time="2026-05-25T01:54:25.291309" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:25.287033" elapsed="0.004311"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:25.291560" elapsed="0.000563"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:25.273367" elapsed="0.018846"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.301079" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:25.300770" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:25.308883" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:25.309446" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;537000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;41000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;543000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;42000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;47000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:25.309731" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:25.301238" elapsed="0.008520"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.310196" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.309923" elapsed="0.000320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.313358" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;537000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;41000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;543000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;42000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;47000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;553000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;527000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;55000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;54000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;555000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;19000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;62000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;552000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;59000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;520000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;524000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;11000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;65000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;536000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;26000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;531000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;31000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;532000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;33000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;531000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.310389" elapsed="0.003882"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.316900" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:25.314375" elapsed="0.002595"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.314346" elapsed="0.002656"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:25.338522" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:25.338571" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:25.317220" elapsed="0.021375"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:25.340721" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:25.338677" elapsed="0.002103"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.338656" elapsed="0.002148"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:25.340839" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:54:25.341040" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:25.341103" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 131 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:25.300392" elapsed="0.040736"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.343278" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:25.341695" elapsed="0.001629"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.341677" elapsed="0.001670"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.343906" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.343497" elapsed="0.000437"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.344537" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.344160" elapsed="0.000404"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:25.344615" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:54:25.344797" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:25.341357" elapsed="0.003465"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:25.344982" elapsed="0.000410"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:25.299747" elapsed="0.045709"/>
</kw>
<arg>f8.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:25.255494" elapsed="0.090020"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:25.248725" elapsed="0.096902"/>
</test>
<test id="s1-s3-s2-t60" name="Test Is Flow 9 Updated" line="177">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:25.356575" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f9.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f9.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:25.356721" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:25.356435" elapsed="0.000315"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:25.357351" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d5e40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:25.356903" elapsed="0.000476"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:25.357816" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:25.357534" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:25.358287" level="INFO">${flow_id} = 132</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:25.357995" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:25.358736" level="INFO">${flow_priority} = 9</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:25.358465" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:25.359689" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:25.358913" elapsed="0.000808"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.360263" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.359882" elapsed="0.000426"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.360833" level="INFO">${flow_id} = 132</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.360508" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.361376" level="INFO">${flow_priority} = 9</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.361030" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.361886" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.361572" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.362419" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.362097" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.362934" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d5e40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.362615" elapsed="0.000360"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:25.356093" elapsed="0.006937"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.363585" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.363196" elapsed="0.000419"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.364053" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;132&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;9&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf9&lt;/flow-name&gt;
    &lt;priority&gt;9&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.363767" elapsed="0.000374"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.371971" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:25.371667" elapsed="0.000372"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:25.376581" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=132?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=132?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:25.376784" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=132?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:25.376884" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:25.372190" elapsed="0.004721"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.377358" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.377096" elapsed="0.000308"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.379644" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.377551" elapsed="0.002146"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:25.382297" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-05-25T01:54:25.379802" elapsed="0.002588"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.379779" elapsed="0.002646"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:25.382625" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:25.382945" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:25.382756" elapsed="0.000262"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:25.382732" elapsed="0.000318"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.383118" elapsed="0.000022"/>
</return>
<msg time="2026-05-25T01:54:25.385386" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:25.385451" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 132 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:25.371349" elapsed="0.014135"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.388617" elapsed="0.000033"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:25.386258" elapsed="0.002461"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.386232" elapsed="0.002536"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.390011" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.389125" elapsed="0.000976"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.391295" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.390474" elapsed="0.000879"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:25.391467" elapsed="0.000061"/>
</return>
<msg time="2026-05-25T01:54:25.391858" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:25.385778" elapsed="0.006137"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:25.392295" elapsed="0.000384"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:25.370772" elapsed="0.021970"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.400470" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:25.400171" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:25.408562" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:25.409129" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;537000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;41000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;543000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;42000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;47000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:25.409411" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:25.400627" elapsed="0.008811"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.409859" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.409602" elapsed="0.000303"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.412840" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;36000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;537000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;41000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;543000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;540000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;42000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;546000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;39000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;545000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;548000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;47000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;45000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;553000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;52000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;527000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;55000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;54000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;555000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;19000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;62000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;2&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;552000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;59000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;1&lt;/second&gt;&lt;nanosecond&gt;520000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;24000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;524000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;11000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;65000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;3&lt;/second&gt;&lt;nanosecond&gt;523000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;536000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;103000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;26000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;531000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;31000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;530000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;30000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;532000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;33000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;531000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.410049" elapsed="0.003714"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.416360" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:25.413868" elapsed="0.002563"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.413839" elapsed="0.002624"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:25.437333" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:25.437380" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:25.416657" elapsed="0.020747"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:25.439208" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:25.437483" elapsed="0.001781"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.437464" elapsed="0.001824"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:25.439321" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:54:25.439518" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:25.439562" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 132 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:25.399766" elapsed="0.039819"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.441746" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:25.440179" elapsed="0.001612"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.440160" elapsed="0.001653"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.442389" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.441961" elapsed="0.000456"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.442930" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.442581" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:25.443005" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:25.443200" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:25.439803" elapsed="0.003423"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:25.443383" elapsed="0.000545"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:25.399159" elapsed="0.044833"/>
</kw>
<arg>f9.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:25.352791" elapsed="0.091295"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:25.345909" elapsed="0.098297"/>
</test>
<test id="s1-s3-s2-t61" name="Test Is Flow 10 Updated" line="179">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:25.455043" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f10.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f10.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:25.455202" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:25.454903" elapsed="0.000329"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:25.455812" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d7600&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:25.455383" elapsed="0.000457"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:25.456319" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:25.455994" elapsed="0.000353"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:25.456772" level="INFO">${flow_id} = 133</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:25.456499" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:25.457243" level="INFO">${flow_priority} = 10</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:25.456952" elapsed="0.000318"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:25.458179" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:25.457423" elapsed="0.000787"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.458717" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.458379" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.459306" level="INFO">${flow_id} = 133</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.458955" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.459830" level="INFO">${flow_priority} = 10</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.459502" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.460384" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.460023" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.460898" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.460580" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.461434" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d7600&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.461108" elapsed="0.000367"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:25.454576" elapsed="0.006955"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.462060" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.461681" elapsed="0.000425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.462664" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;133&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;10&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf10&lt;/flow-name&gt;
    &lt;priority&gt;10&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.462258" elapsed="0.000470"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.470452" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:25.470148" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:25.475396" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=133?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=133?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:25.475599" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=133?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:25.475698" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:25.470609" elapsed="0.005114"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.476187" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.475882" elapsed="0.000350"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.478448" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.476377" elapsed="0.002123"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:25.480385" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-05-25T01:54:25.478605" elapsed="0.001846"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.478583" elapsed="0.001893"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:25.480621" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:25.480851" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:25.480714" elapsed="0.000189"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:25.480696" elapsed="0.000230"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.480958" elapsed="0.000015"/>
</return>
<msg time="2026-05-25T01:54:25.483167" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:25.483232" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 133 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:25.469818" elapsed="0.013447"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.486334" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:25.484029" elapsed="0.002369"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.484004" elapsed="0.002425"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.487221" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.486638" elapsed="0.000622"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.487980" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.487489" elapsed="0.000528"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:25.488148" elapsed="0.000045"/>
</return>
<msg time="2026-05-25T01:54:25.488407" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:25.483562" elapsed="0.004881"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:25.488665" elapsed="0.000561"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:25.469258" elapsed="0.020057"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.497101" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:25.496790" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:25.505794" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:25.510966" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:25.511400" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:25.497261" elapsed="0.014178"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.512028" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.511669" elapsed="0.000472"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.515002" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;78000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;578000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;82000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;81000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;582000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;46000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;579000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;38000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;591000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;563000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;53000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;58000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;557000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.512350" elapsed="0.003314"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.517521" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:25.515738" elapsed="0.001833"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.515717" elapsed="0.001876"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:25.536536" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:25.536584" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:25.517733" elapsed="0.018875"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:25.538398" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:25.536687" elapsed="0.001768"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.536667" elapsed="0.001811"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:25.538511" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:25.538706" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:25.538751" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 133 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:25.496412" elapsed="0.042362"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.540934" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:25.539354" elapsed="0.001625"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.539335" elapsed="0.001667"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.541571" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.541164" elapsed="0.000435"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.542140" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.541763" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:25.542217" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:25.542393" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:25.538992" elapsed="0.003426"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:25.542574" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:25.495754" elapsed="0.047267"/>
</kw>
<arg>f10.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:25.451297" elapsed="0.091798"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:25.444478" elapsed="0.098734"/>
</test>
<test id="s1-s3-s2-t62" name="Test Is Flow 11 Updated" line="181">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:25.554211" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f11.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f11.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:25.554352" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:25.554058" elapsed="0.000323"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:25.554956" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3f6930&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:25.554533" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:25.555442" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:25.555154" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:25.555895" level="INFO">${flow_id} = 134</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:25.555624" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:25.556373" level="INFO">${flow_priority} = 11</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:25.556099" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:25.557303" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:25.556552" elapsed="0.000782"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.557824" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.557492" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.558404" level="INFO">${flow_id} = 134</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.558061" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.558929" level="INFO">${flow_priority} = 11</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.558600" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.559456" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.559140" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.559974" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.559654" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.560534" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3f6930&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.560211" elapsed="0.000365"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:25.553730" elapsed="0.006901"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.561181" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.560782" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.561774" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;134&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;1&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;27&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv4-match&gt;
            &lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;
            &lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;
        &lt;/icmpv4-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;11&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf11&lt;/flow-name&gt;
    &lt;priority&gt;11&lt;/priority&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.561364" elapsed="0.000475"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.569542" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:25.569238" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:25.574825" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=134?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=134?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:25.575027" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=134?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:25.575149" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:25.569700" elapsed="0.005475"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.575588" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.575335" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.578117" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.575779" elapsed="0.002411"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:25.580845" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-05-25T01:54:25.578367" elapsed="0.002572"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.578264" elapsed="0.002710"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:25.581195" elapsed="0.000035"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:25.581517" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:25.581329" elapsed="0.000259"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:25.581306" elapsed="0.000314"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.581665" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:54:25.583926" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:25.583988" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 134 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:25.568904" elapsed="0.015117"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.586526" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:25.584827" elapsed="0.001744"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.584802" elapsed="0.001791"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.587154" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.586739" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.587701" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.587353" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:25.587776" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:25.587953" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:25.584367" elapsed="0.003611"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:25.588162" elapsed="0.000397"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:25.568343" elapsed="0.020280"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.596385" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:25.596036" elapsed="0.000376"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:25.604153" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:25.604907" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:25.605315" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:25.596543" elapsed="0.008809"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.605926" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.605574" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.609763" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;78000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;578000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;82000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;81000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;582000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;46000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;579000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;38000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;591000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;563000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;53000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;58000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;557000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.606211" elapsed="0.004473"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.613348" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:25.610795" elapsed="0.002606"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.610768" elapsed="0.002655"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:25.633797" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:25.633846" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:25.613563" elapsed="0.020307"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:25.635663" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:25.633949" elapsed="0.001771"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.633930" elapsed="0.001814"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:25.635777" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:25.635970" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:25.636014" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 134 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:25.595662" elapsed="0.040374"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.638203" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:25.636613" elapsed="0.001635"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.636594" elapsed="0.001676"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.638817" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.638416" elapsed="0.000428"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.639377" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.639005" elapsed="0.000398"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:25.639453" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:25.639630" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:25.636280" elapsed="0.003375"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:25.639812" elapsed="0.000428"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:25.595038" elapsed="0.045266"/>
</kw>
<arg>f11.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:25.550481" elapsed="0.089879"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:25.543484" elapsed="0.096989"/>
</test>
<test id="s1-s3-s2-t63" name="Test Is Flow 14 Updated" line="183">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:25.651384" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f14.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f14.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:25.651535" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:25.651245" elapsed="0.000320"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:25.652189" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bf9c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:25.651716" elapsed="0.000505"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:25.652662" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:25.652380" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:25.653136" level="INFO">${flow_id} = 137</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:25.652841" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:25.653591" level="INFO">${flow_priority} = 14</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:25.653319" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:25.654503" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:25.653767" elapsed="0.000767"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.655024" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.654692" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.655611" level="INFO">${flow_id} = 137</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.655283" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.656173" level="INFO">${flow_priority} = 14</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.655807" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.656699" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.656381" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.657233" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.656896" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.657750" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bf9c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.657431" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:25.650892" elapsed="0.006955"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.658399" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.657997" elapsed="0.000433"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.658827" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;137&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x806&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;arp-op&gt;1&lt;/arp-op&gt;
        &lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;
        &lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;
        &lt;arp-source-hardware-address&gt;
            &lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;
        &lt;/arp-source-hardware-address&gt;
        &lt;arp-target-hardware-address&gt;
            &lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;
        &lt;/arp-target-hardware-address&gt;
    &lt;/match&gt;
    &lt;cookie&gt;14&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf14&lt;/flow-name&gt;
    &lt;priority&gt;14&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.658584" elapsed="0.000307"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.667124" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:25.666804" elapsed="0.000347"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:25.672093" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=137?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=137?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:25.672332" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=137?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:25.672432" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:25.667281" elapsed="0.005176"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.672871" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.672617" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.675885" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.673060" elapsed="0.002897"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:25.678721" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-05-25T01:54:25.676125" elapsed="0.002690"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.676094" elapsed="0.002756"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:25.679051" elapsed="0.000051"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:25.679397" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:25.679201" elapsed="0.000269"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:25.679177" elapsed="0.000325"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.679547" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:25.681711" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:25.681758" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 137 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:25.666488" elapsed="0.015293"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.684055" elapsed="0.000031"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:25.682343" elapsed="0.001776"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.682324" elapsed="0.001818"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.684716" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.684310" elapsed="0.000433"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.685284" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.684905" elapsed="0.000405"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:25.685360" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:25.685537" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:25.681993" elapsed="0.003569"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:25.685719" elapsed="0.000396"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:25.665915" elapsed="0.020263"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.693919" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:25.693621" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:25.701549" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:25.702099" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:25.702385" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:25.694089" elapsed="0.008322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.702829" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.702573" elapsed="0.000302"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.705789" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;78000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;578000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;82000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;81000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;582000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;46000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;579000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;38000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;591000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;563000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;53000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;58000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;557000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.703020" elapsed="0.003690"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.709308" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:25.706813" elapsed="0.002563"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.706784" elapsed="0.002623"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:25.730781" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:25.730828" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:25.709604" elapsed="0.021247"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:25.732685" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:25.730930" elapsed="0.001811"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.730910" elapsed="0.001859"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:25.732803" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:54:25.732999" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:25.733043" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 137 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:25.693245" elapsed="0.039834"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.735229" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:25.733640" elapsed="0.001636"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.733621" elapsed="0.001677"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.735851" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.735445" elapsed="0.000433"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.736424" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.736040" elapsed="0.000411"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:25.736500" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:25.736677" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:25.733304" elapsed="0.003398"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:25.736859" elapsed="0.000403"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:25.692618" elapsed="0.044706"/>
</kw>
<arg>f14.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:25.647616" elapsed="0.089765"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:25.640733" elapsed="0.096764"/>
</test>
<test id="s1-s3-s2-t64" name="Test Is Flow 15 Updated" line="185">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:25.748396" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f15.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f15.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:25.748543" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:25.748249" elapsed="0.000323"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:25.749156" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35a110&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:25.748726" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:25.749618" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:25.749337" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:25.750079" level="INFO">${flow_id} = 138</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:25.749796" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:25.750526" level="INFO">${flow_priority} = 15</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:25.750258" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:25.751391" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:25.750702" elapsed="0.000720"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.751908" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.751577" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.752510" level="INFO">${flow_id} = 138</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.752160" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.753032" level="INFO">${flow_priority} = 15</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.752706" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.753555" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.753241" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.754078" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.753749" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.754598" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35a110&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.754277" elapsed="0.000362"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:25.747878" elapsed="0.006815"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.755237" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.754842" elapsed="0.000425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.755661" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;138&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;15&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf15&lt;/flow-name&gt;
    &lt;priority&gt;15&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.755419" elapsed="0.000303"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.763594" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:25.763294" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:25.769214" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=138?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=138?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:25.769423" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=138?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:25.769522" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:25.763751" elapsed="0.005796"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.769965" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.769707" elapsed="0.000303"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.772249" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.770174" elapsed="0.002133"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:25.774539" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:54:25.772379" elapsed="0.002251"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.772358" elapsed="0.002349"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:25.774913" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:25.775257" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:25.775042" elapsed="0.000289"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:25.775019" elapsed="0.000344"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.775414" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:25.777812" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:25.777875" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 138 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:25.762955" elapsed="0.014953"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.780969" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:25.778734" elapsed="0.002298"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.778708" elapsed="0.002354"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.781677" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.781280" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.782233" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.781865" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:25.782310" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:25.782493" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:25.778224" elapsed="0.004294"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:25.782674" elapsed="0.000411"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:25.762397" elapsed="0.020754"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.790885" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:25.790585" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:25.798598" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:25.799176" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:25.799471" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:25.791044" elapsed="0.008453"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.799922" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.799663" elapsed="0.000304"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.805056" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;78000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;578000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;82000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;81000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;582000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;46000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;579000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;38000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;591000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;563000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;53000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;58000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;557000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.800128" elapsed="0.006558"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.810061" elapsed="0.000032"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:25.806870" elapsed="0.003260"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.806819" elapsed="0.003334"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:25.828139" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:25.828191" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:25.810298" elapsed="0.017916"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:25.830196" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:25.828337" elapsed="0.001922"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.828313" elapsed="0.001972"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:25.830320" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:54:25.830541" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:25.830585" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 138 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:25.790207" elapsed="0.040401"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.832816" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:25.831229" elapsed="0.001634"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.831210" elapsed="0.001675"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.833503" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.833039" elapsed="0.000491"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.834046" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.833696" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:25.834139" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:25.834318" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:25.830856" elapsed="0.003488"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:25.834503" elapsed="0.000402"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:25.789575" elapsed="0.045394"/>
</kw>
<arg>f15.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:25.744626" elapsed="0.090404"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:25.737774" elapsed="0.097423"/>
</test>
<test id="s1-s3-s2-t65" name="Test Is Flow 16 Updated" line="187">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:25.846143" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f16.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f16.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:25.846331" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:25.845984" elapsed="0.000376"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:25.846937" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6a520&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:25.846514" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:25.847421" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:25.847138" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:25.847874" level="INFO">${flow_id} = 139</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:25.847603" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:25.848381" level="INFO">${flow_priority} = 16</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:25.848053" elapsed="0.000354"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:25.849250" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:25.848560" elapsed="0.000722"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.849775" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.849440" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.850372" level="INFO">${flow_id} = 139</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.850026" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.850900" level="INFO">${flow_priority} = 16</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.850571" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.851433" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.851109" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.851953" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.851631" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.852504" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe6a520&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.852166" elapsed="0.000380"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:25.845652" elapsed="0.006949"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.853147" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.852751" elapsed="0.000427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.853571" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    &lt;priority&gt;16&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.853331" elapsed="0.000301"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.861524" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:25.861209" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:25.867143" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:25.867429" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:25.867569" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:25.861683" elapsed="0.005922"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.868241" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.867865" elapsed="0.000466"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.871380" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.868537" elapsed="0.002915"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:25.874110" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-05-25T01:54:25.871570" elapsed="0.002635"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.871535" elapsed="0.002754"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:25.874494" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:25.874812" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:25.874623" elapsed="0.000262"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:25.874600" elapsed="0.000316"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.874961" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:54:25.877269" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:25.877314" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 139 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:25.860873" elapsed="0.016464"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.879498" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:25.877882" elapsed="0.001662"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.877864" elapsed="0.001702"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.880130" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.879714" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.880694" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.880342" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:25.880770" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:25.880948" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:25.877549" elapsed="0.003424"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:25.881145" elapsed="0.000389"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:25.860305" elapsed="0.021294"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.889540" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:25.889234" elapsed="0.000334"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:25.897841" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:25.898422" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:25.898712" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:25.889701" elapsed="0.009037"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.899187" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.898900" elapsed="0.000336"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.902289" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;78000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;578000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;82000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;81000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;582000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;46000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;579000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;38000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;591000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;563000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;53000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;58000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;557000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.899384" elapsed="0.003829"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.905797" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:25.903317" elapsed="0.002548"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.903288" elapsed="0.002608"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:25.927277" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:25.927326" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:25.906112" elapsed="0.021238"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:25.929468" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:25.927440" elapsed="0.002085"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.927417" elapsed="0.002135"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:25.929587" elapsed="0.000036"/>
</return>
<msg time="2026-05-25T01:54:25.929797" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:25.929840" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 139 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:25.888835" elapsed="0.041028"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.932037" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:25.930472" elapsed="0.001631"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.930454" elapsed="0.001673"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.932756" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.932279" elapsed="0.000504"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.933321" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.932950" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:25.933398" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:25.933574" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:25.930118" elapsed="0.003481"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:25.933756" elapsed="0.000417"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:25.888190" elapsed="0.046048"/>
</kw>
<arg>f16.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:25.842377" elapsed="0.091918"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:25.835508" elapsed="0.098911"/>
</test>
<test id="s1-s3-s2-t66" name="Test Is Flow 17 Updated" line="189">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:25.945405" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f17.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f17.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:25.945569" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:25.945263" elapsed="0.000334"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:25.946187" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35bfb0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:25.945749" elapsed="0.000467"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:25.946661" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:25.946377" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:25.947144" level="INFO">${flow_id} = 140</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:25.946847" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:25.947595" level="INFO">${flow_priority} = 17</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:25.947323" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:25.948482" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:25.947773" elapsed="0.000740"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.949005" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.948670" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.949601" level="INFO">${flow_id} = 140</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.949274" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.950142" level="INFO">${flow_priority} = 17</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.949799" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.950651" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.950337" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.951181" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.950847" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.951699" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35bfb0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:25.951378" elapsed="0.000362"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:25.944918" elapsed="0.006876"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.952357" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.951944" elapsed="0.000446"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.952781" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    &lt;priority&gt;17&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;protocol-match-fields&gt;
            &lt;mpls-label&gt;567&lt;/mpls-label&gt;
            &lt;mpls-tc&gt;3&lt;/mpls-tc&gt;
            &lt;mpls-bos&gt;1&lt;/mpls-bos&gt;
        &lt;/protocol-match-fields&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.952541" elapsed="0.000300"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.960684" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:25.960373" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:25.966187" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=140?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=140?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:25.966488" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=140?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:25.966627" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:25.960840" elapsed="0.005822"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.967268" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.966883" elapsed="0.000448"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.970549" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.967533" elapsed="0.003089"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:25.973335" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-05-25T01:54:25.970721" elapsed="0.002706"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.970693" elapsed="0.002769"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:25.973709" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:25.974031" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:25.973839" elapsed="0.000286"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:25.973816" elapsed="0.000341"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.974203" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:25.976472" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:25.976535" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 140 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:25.960032" elapsed="0.016535"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:25.979593" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:25.977355" elapsed="0.002302"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:25.977331" elapsed="0.002357"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.980518" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.979892" elapsed="0.000664"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.981287" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:25.980785" elapsed="0.000528"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:25.981363" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:25.981540" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:25.976859" elapsed="0.004707"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:25.981721" elapsed="0.000400"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:25.959469" elapsed="0.022718"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.989964" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:25.989668" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:25.997510" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:25.998047" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:25.998349" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:25.990135" elapsed="0.008241"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:25.998789" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.998535" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.001702" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;78000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;578000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;82000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;81000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;582000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;46000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;579000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;38000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;591000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;563000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;53000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;58000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;557000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:25.998975" elapsed="0.003647"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.005210" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:26.002724" elapsed="0.002554"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.002696" elapsed="0.002614"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:26.025039" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:26.025104" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:26.005505" elapsed="0.019624"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:26.026999" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:26.025209" elapsed="0.001847"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.025189" elapsed="0.001907"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:26.027130" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:54:26.027330" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:26.027374" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 140 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:25.989284" elapsed="0.038112"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.030020" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:26.028271" elapsed="0.001810"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.028248" elapsed="0.001858"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.030683" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.030260" elapsed="0.000451"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.031257" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.030875" elapsed="0.000408"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:26.031335" elapsed="0.000032"/>
</return>
<msg time="2026-05-25T01:54:26.031537" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:26.027648" elapsed="0.003916"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:26.031746" elapsed="0.000423"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:25.988651" elapsed="0.043584"/>
</kw>
<arg>f17.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:25.941672" elapsed="0.090622"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:25.934735" elapsed="0.097714"/>
</test>
<test id="s1-s3-s2-t67" name="Test Is Flow 18 Updated" line="191">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:26.044226" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f18.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f18.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:26.044400" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:26.044057" elapsed="0.000374"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:26.045004" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38ae30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:26.044588" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:26.045493" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:26.045206" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:26.045963" level="INFO">${flow_id} = 141</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:26.045687" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:26.046433" level="INFO">${flow_priority} = 18</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:26.046159" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:26.047220" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:26.046611" elapsed="0.000644"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.047753" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.047415" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.048427" level="INFO">${flow_id} = 141</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.048034" elapsed="0.000438"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.049004" level="INFO">${flow_priority} = 18</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.048662" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.049541" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.049223" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.050079" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.049742" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.050610" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38ae30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.050283" elapsed="0.000370"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:26.043724" elapsed="0.006986"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.051273" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.050864" elapsed="0.000441"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.051703" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;18&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;18&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.051460" elapsed="0.000302"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.059665" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:26.059357" elapsed="0.000335"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:26.065000" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=141?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=141?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:26.065258" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=141?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:26.065425" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:26.059824" elapsed="0.005637"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.066047" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.065687" elapsed="0.000450"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.069300" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.066345" elapsed="0.003027"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:26.071905" elapsed="0.000046"/>
</return>
<status status="PASS" start="2026-05-25T01:54:26.069475" elapsed="0.002530"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.069445" elapsed="0.002595"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:26.072269" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:26.073933" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:26.073725" elapsed="0.000286"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:26.073693" elapsed="0.000352"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.074122" elapsed="0.000023"/>
</return>
<msg time="2026-05-25T01:54:26.075844" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:26.075891" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 141 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:26.059018" elapsed="0.016897"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.078177" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:26.076566" elapsed="0.001659"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.076548" elapsed="0.001700"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.078852" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.078402" elapsed="0.000477"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.079472" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.079042" elapsed="0.000457"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:26.079549" elapsed="0.000032"/>
</return>
<msg time="2026-05-25T01:54:26.079732" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:26.076178" elapsed="0.003579"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:26.079916" elapsed="0.000428"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:26.058451" elapsed="0.021978"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.088246" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:26.087917" elapsed="0.000357"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:26.096660" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:26.097502" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:26.097938" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:26.088463" elapsed="0.009514"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.098585" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.098226" elapsed="0.000423"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.102438" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;78000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;578000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;82000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;81000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;582000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;46000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;579000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;38000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;591000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;563000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;53000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;58000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;557000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.098850" elapsed="0.004518"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.105769" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:26.103472" elapsed="0.002347"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.103443" elapsed="0.002398"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:26.123324" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:26.123372" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:26.105982" elapsed="0.017414"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:26.125265" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:26.123474" elapsed="0.001847"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.123455" elapsed="0.001890"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:26.125378" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:54:26.125577" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:26.125621" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 141 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:26.087534" elapsed="0.038109"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.127780" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:26.126217" elapsed="0.001608"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.126199" elapsed="0.001648"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.128442" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.127996" elapsed="0.000474"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.128986" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.128634" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:26.129062" elapsed="0.000044"/>
</return>
<msg time="2026-05-25T01:54:26.129273" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:26.125864" elapsed="0.003434"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:26.129456" elapsed="0.000391"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:26.086892" elapsed="0.043018"/>
</kw>
<arg>f18.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:26.040441" elapsed="0.089527"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:26.032743" elapsed="0.097397"/>
</test>
<test id="s1-s3-s2-t68" name="Test Is Flow 19 Updated" line="193">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:26.141001" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f19.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f19.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:26.141173" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:26.140859" elapsed="0.000344"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:26.141753" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e4cc0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:26.141354" elapsed="0.000427"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:26.142231" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:26.141934" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:26.142677" level="INFO">${flow_id} = 142</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:26.142408" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:26.143136" level="INFO">${flow_priority} = 19</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:26.142851" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:26.143871" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:26.143311" elapsed="0.000590"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.144431" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.144059" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.144993" level="INFO">${flow_id} = 142</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.144667" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.145531" level="INFO">${flow_priority} = 19</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.145204" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.146035" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.145723" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.146564" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.146248" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.147093" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e4cc0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.146759" elapsed="0.000378"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:26.140530" elapsed="0.006662"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.147719" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.147339" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.148153" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;19&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;19&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.147898" elapsed="0.000311"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.156030" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:26.155731" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:26.160379" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=142?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=142?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:26.160608" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=142?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:26.160708" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:26.156255" elapsed="0.004478"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.161165" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.160891" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.164267" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.161435" elapsed="0.002903"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:26.166860" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:54:26.164451" elapsed="0.002500"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.164422" elapsed="0.002562"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:26.167201" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:26.167512" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:26.167327" elapsed="0.000297"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:26.167304" elapsed="0.000356"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.167706" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:26.169809" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:26.169853" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 142 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:26.155416" elapsed="0.014460"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.171993" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:26.170435" elapsed="0.001604"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.170417" elapsed="0.001643"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.172644" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.172223" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.173198" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.172832" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:26.173278" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:54:26.173456" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:26.170098" elapsed="0.003384"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:26.173636" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:26.154837" elapsed="0.019261"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.182003" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:26.181706" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:26.189862" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:26.190410" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:26.190686" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:26.182176" elapsed="0.008537"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.191149" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.190874" elapsed="0.000321"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.194279" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;78000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;578000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;82000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;81000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;582000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;46000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;579000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;38000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;591000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;563000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;53000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;58000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;557000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.191344" elapsed="0.003862"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.197766" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:26.195315" elapsed="0.002518"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.195286" elapsed="0.002579"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:26.217684" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:26.217732" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:26.198060" elapsed="0.019696"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:26.219608" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:26.217835" elapsed="0.001829"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.217815" elapsed="0.001874"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:26.219722" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:26.219917" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:26.219961" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 142 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:26.181328" elapsed="0.038656"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.222168" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:26.220588" elapsed="0.001625"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.220569" elapsed="0.001666"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.222789" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.222383" elapsed="0.000434"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.223359" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.222980" elapsed="0.000405"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:26.223435" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:26.223613" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:26.220215" elapsed="0.003424"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:26.223797" elapsed="0.000404"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:26.180695" elapsed="0.043571"/>
</kw>
<arg>f19.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:26.137284" elapsed="0.087039"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:26.130453" elapsed="0.093979"/>
</test>
<test id="s1-s3-s2-t69" name="Test Is Flow 20 Updated" line="195">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:26.235423" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f20.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f20.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:26.235555" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:26.235287" elapsed="0.000297"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:26.236137" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e5940&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:26.235732" elapsed="0.000433"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:26.236619" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:26.236315" elapsed="0.000331"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:26.237084" level="INFO">${flow_id} = 143</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:26.236798" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:26.237530" level="INFO">${flow_priority} = 20</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:26.237261" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:26.238275" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:26.237704" elapsed="0.000601"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.238791" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.238462" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.239373" level="INFO">${flow_id} = 143</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.239025" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.239897" level="INFO">${flow_priority} = 20</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.239569" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.240425" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.240109" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.240969" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.240650" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.241502" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e5940&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.241180" elapsed="0.000363"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:26.234947" elapsed="0.006651"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.242145" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.241748" elapsed="0.000427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.242566" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;20&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;20&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xf0ff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.242324" elapsed="0.000298"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.250434" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:26.250135" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:26.255671" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=143?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=143?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:26.256137" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=143?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:26.256361" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:26.250589" elapsed="0.005829"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.257461" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.256810" elapsed="0.000760"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.263033" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.257917" elapsed="0.005275"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:26.266275" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-05-25T01:54:26.263362" elapsed="0.002980"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.263315" elapsed="0.003051"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:26.266507" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:26.266731" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:26.266597" elapsed="0.000219"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:26.266581" elapsed="0.000262"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.266876" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:54:26.268515" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:26.268560" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 143 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:26.249805" elapsed="0.018778"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.270696" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:26.269141" elapsed="0.001600"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.269123" elapsed="0.001639"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.271330" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.270911" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.271868" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.271520" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:26.271944" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:26.272137" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:26.268794" elapsed="0.003369"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:26.272319" elapsed="0.000406"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:26.249248" elapsed="0.023541"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.280521" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:26.280155" elapsed="0.000395"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:26.287912" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:26.288462" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:26.288774" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:26.280682" elapsed="0.008118"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.289256" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.288960" elapsed="0.000374"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.293152" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;78000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;578000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;82000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;81000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;582000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;46000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;579000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;38000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;591000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;563000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;53000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;58000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;557000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.289547" elapsed="0.004515"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.296655" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:26.294182" elapsed="0.002540"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.294153" elapsed="0.002600"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:26.315399" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:26.315447" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:26.296949" elapsed="0.018521"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:26.317372" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:26.315551" elapsed="0.001878"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.315531" elapsed="0.001923"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:26.317487" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:26.317684" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:26.317728" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 143 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:26.279763" elapsed="0.037987"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.319916" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:26.318320" elapsed="0.001642"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.318302" elapsed="0.001681"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.320586" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.320148" elapsed="0.000466"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.321153" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.320780" elapsed="0.000399"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:26.321230" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:26.321410" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:26.317967" elapsed="0.003468"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:26.321593" elapsed="0.000400"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:26.279154" elapsed="0.042902"/>
</kw>
<arg>f20.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:26.231676" elapsed="0.090463"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:26.224778" elapsed="0.097478"/>
</test>
<test id="s1-s3-s2-t70" name="Test Is Flow 21 Updated" line="197">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:26.333277" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:26.333427" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:26.333136" elapsed="0.000320"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:26.334033" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1c8b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:26.333608" elapsed="0.000453"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:26.334508" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:26.334230" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:26.334951" level="INFO">${flow_id} = 144</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:26.334684" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:26.335407" level="INFO">${flow_priority} = 21</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:26.335139" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:26.336290" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:26.335583" elapsed="0.000738"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.336838" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.336477" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.337419" level="INFO">${flow_id} = 144</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.337087" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.337938" level="INFO">${flow_priority} = 21</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.337614" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.338460" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.338145" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.338991" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.338655" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.339546" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1c8b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.339207" elapsed="0.000382"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:26.332781" elapsed="0.006863"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.340195" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.339795" elapsed="0.000431"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.340660" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.340381" elapsed="0.000344"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.350053" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:26.349734" elapsed="0.000387"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:26.355836" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:26.356061" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:26.356186" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:26.350330" elapsed="0.005887"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.356718" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.356422" elapsed="0.000342"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.359088" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.356924" elapsed="0.002220"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:26.361090" elapsed="0.000032"/>
</return>
<status status="PASS" start="2026-05-25T01:54:26.359217" elapsed="0.001977"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.359195" elapsed="0.002033"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:26.361473" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:26.361790" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:26.361601" elapsed="0.000261"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:26.361577" elapsed="0.000317"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.361940" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:26.364211" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:26.364275" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:26.349325" elapsed="0.014982"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.367325" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:26.365113" elapsed="0.002276"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.365086" elapsed="0.002334"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.368206" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.367625" elapsed="0.000619"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.369010" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.368471" elapsed="0.000575"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:26.369139" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:54:26.369407" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:26.364628" elapsed="0.004810"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:26.369598" elapsed="0.000384"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:26.348748" elapsed="0.021298"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.377821" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:26.377523" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:26.385977" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:26.386741" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:26.387147" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:26.377978" elapsed="0.009207"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.387774" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.387411" elapsed="0.000425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.391671" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;78000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;578000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;82000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;81000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;582000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;46000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;579000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;38000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;591000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;563000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;53000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;58000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;557000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.388039" elapsed="0.004581"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.394646" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:26.392724" elapsed="0.001970"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.392696" elapsed="0.002020"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:26.411917" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:26.411964" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:26.394857" elapsed="0.017130"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:26.413843" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:26.412079" elapsed="0.001820"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.412046" elapsed="0.001877"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:26.413956" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:26.414165" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:26.414209" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:26.377143" elapsed="0.037088"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.416337" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:26.414774" elapsed="0.001608"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.414756" elapsed="0.001648"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.417026" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.416607" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.417592" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.417240" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:26.417667" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:26.417842" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:26.414444" elapsed="0.003423"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:26.418024" elapsed="0.000399"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:26.376470" elapsed="0.042016"/>
</kw>
<arg>f21.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:26.329473" elapsed="0.089070"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:26.322531" elapsed="0.096127"/>
</test>
<test id="s1-s3-s2-t71" name="Test Is Flow 22 Updated" line="199">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:26.429427" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f22.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f22.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:26.429564" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:26.429289" elapsed="0.000304"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:26.430178" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7dd50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:26.429747" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:26.430654" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:26.430360" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:26.431142" level="INFO">${flow_id} = 145</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:26.430834" elapsed="0.000336"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:26.431596" level="INFO">${flow_priority} = 22</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:26.431324" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:26.432489" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:26.431773" elapsed="0.000746"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.433036" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.432703" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.433612" level="INFO">${flow_id} = 145</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.433286" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.434151" level="INFO">${flow_priority} = 22</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.433809" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.434659" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.434346" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.435188" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.434854" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.435704" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7dd50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.435385" elapsed="0.000360"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:26.428946" elapsed="0.006853"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.436343" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.435948" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.436797" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;22&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;22&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.436527" elapsed="0.000332"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.444697" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:26.444369" elapsed="0.000355"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:26.449774" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=145?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=145?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:26.449969" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=145?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:26.450087" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:26.444855" elapsed="0.005260"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.450530" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.450277" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.452849" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.450719" elapsed="0.002182"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:26.454743" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-05-25T01:54:26.452972" elapsed="0.001876"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.452952" elapsed="0.001925"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:26.455025" elapsed="0.000023"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:26.455296" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:26.455138" elapsed="0.000221"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:26.455120" elapsed="0.000262"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.455418" elapsed="0.000015"/>
</return>
<msg time="2026-05-25T01:54:26.457088" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:26.457135" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 145 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:26.444024" elapsed="0.013134"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.459312" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:26.457705" elapsed="0.001654"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.457686" elapsed="0.001695"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.459937" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.459530" elapsed="0.000434"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.460504" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.460144" elapsed="0.000387"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:26.460622" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:54:26.460814" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:26.457371" elapsed="0.003469"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:26.460999" elapsed="0.000411"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:26.443468" elapsed="0.018017"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.469342" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:26.469018" elapsed="0.000351"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:26.476606" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:26.477166" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:26.477449" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:26.469500" elapsed="0.007976"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.477899" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.477643" elapsed="0.000302"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.480664" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;78000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;578000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;82000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;81000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;582000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;46000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;579000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;38000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;591000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;563000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;53000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;58000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;557000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.478108" elapsed="0.003249"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.483802" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:26.481435" elapsed="0.002435"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.481413" elapsed="0.002489"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:26.504159" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:26.504207" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:26.484121" elapsed="0.020111"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:26.506115" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:26.504311" elapsed="0.001863"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.504291" elapsed="0.001908"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:26.506232" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:26.506428" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:26.506471" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 145 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:26.468635" elapsed="0.037859"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.508668" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:26.507059" elapsed="0.001655"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.507041" elapsed="0.001694"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.509311" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.508885" elapsed="0.000453"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.509859" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.509505" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:26.509936" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:54:26.510132" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:26.506722" elapsed="0.003436"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:26.510317" elapsed="0.000386"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:26.467968" elapsed="0.042798"/>
</kw>
<arg>f22.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:26.425717" elapsed="0.085106"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:26.418924" elapsed="0.092011"/>
</test>
<test id="s1-s3-s2-t72" name="Test Is Flow 23 Updated" line="201">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:26.521873" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f23.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f23.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:26.522023" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:26.521734" elapsed="0.000318"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:26.522642" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1c360&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:26.522221" elapsed="0.000449"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:26.523120" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:26.522823" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:26.523575" level="INFO">${flow_id} = 146</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:26.523306" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:26.524018" level="INFO">${flow_priority} = 23</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:26.523751" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:26.525220" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:26.524210" elapsed="0.001046"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.525753" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.525420" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.526351" level="INFO">${flow_id} = 146</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.526004" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.526871" level="INFO">${flow_priority} = 23</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.526547" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.527391" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.527078" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.527904" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.527587" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.528435" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1c360&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.528115" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:26.521397" elapsed="0.007133"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.529117" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.528705" elapsed="0.000443"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.529541" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;23&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;23&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.529300" elapsed="0.000303"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.538721" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:26.538424" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:26.544004" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=146?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=146?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:26.544225" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=146?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:26.544328" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:26.538878" elapsed="0.005476"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.544795" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.544511" elapsed="0.000328"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.547730" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.544982" elapsed="0.002819"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:26.550475" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-05-25T01:54:26.547897" elapsed="0.002672"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.547869" elapsed="0.002734"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:26.550800" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:26.551135" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:26.550927" elapsed="0.000281"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:26.550904" elapsed="0.000336"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.551284" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:26.553485" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:26.553530" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 146 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:26.538102" elapsed="0.015451"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.555672" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:26.554108" elapsed="0.001609"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.554090" elapsed="0.001649"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.556297" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.555883" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.556861" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.556485" elapsed="0.000402"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:26.556938" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:26.557131" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:26.553763" elapsed="0.003394"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:26.557313" elapsed="0.000383"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:26.537531" elapsed="0.020227"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.565502" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:26.565206" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:26.573313" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:26.574037" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:26.574456" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:26.565657" elapsed="0.008835"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.575085" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.574714" elapsed="0.000438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.578968" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;78000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;578000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;82000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;81000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;582000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;46000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;579000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;38000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;591000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;563000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;53000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;58000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;557000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.575352" elapsed="0.004541"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.582486" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:26.579995" elapsed="0.002558"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.579967" elapsed="0.002617"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:26.601789" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:26.601836" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:26.582778" elapsed="0.019082"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:26.655811" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:26.601939" elapsed="0.053952"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.601919" elapsed="0.053999"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:26.655958" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:54:26.656223" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:26.656269" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 146 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:26.564817" elapsed="0.091476"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.658528" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:26.656942" elapsed="0.001632"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.656922" elapsed="0.001674"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.659230" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.658748" elapsed="0.000510"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.659773" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.659422" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:26.659849" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:26.660026" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:26.656543" elapsed="0.003508"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:26.660225" elapsed="0.000413"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:26.564187" elapsed="0.096526"/>
</kw>
<arg>f23.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:26.518090" elapsed="0.142681"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:26.511211" elapsed="0.149681"/>
</test>
<test id="s1-s3-s2-t73" name="Test Is Flow 24 Updated" line="203">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:26.671840" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f24.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f24.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:26.672016" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:26.671697" elapsed="0.000348"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:26.672620" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc306a20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:26.672215" elapsed="0.000434"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:26.673126" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:26.672826" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:26.673574" level="INFO">${flow_id} = 147</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:26.673305" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:26.674017" level="INFO">${flow_priority} = 24</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:26.673749" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:26.674791" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:26.674209" elapsed="0.000612"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.675330" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.674977" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.675908" level="INFO">${flow_id} = 147</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.675584" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.676446" level="INFO">${flow_priority} = 24</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.676118" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.676967" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.676640" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.677500" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.677180" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.678018" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc306a20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.677697" elapsed="0.000362"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:26.671367" elapsed="0.006764"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.678661" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.678281" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.679100" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;24&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;24&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                        &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.678843" elapsed="0.000314"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.686957" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:26.686651" elapsed="0.000332"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:26.692352" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=147?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=147?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:26.692578" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=147?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:26.692677" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:26.687131" elapsed="0.005587"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.693151" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.692878" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.695389" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.693345" elapsed="0.002095"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:26.697287" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-05-25T01:54:26.695510" elapsed="0.001842"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.695490" elapsed="0.001887"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:26.697520" elapsed="0.000021"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:26.697744" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:26.697610" elapsed="0.000232"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:26.697594" elapsed="0.000274"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.697901" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:54:26.699527" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:26.699572" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 147 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:26.686336" elapsed="0.013258"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.702021" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:26.700176" elapsed="0.001947"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.700158" elapsed="0.001998"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.702914" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.702362" elapsed="0.000663"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.703779" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.703284" elapsed="0.000530"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:26.703885" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:54:26.704154" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:26.699823" elapsed="0.004368"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:26.704411" elapsed="0.000558"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:26.685765" elapsed="0.019293"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.714043" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:26.713746" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:26.722232" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:26.723000" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:26.723411" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:26.714217" elapsed="0.009231"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.724025" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.723669" elapsed="0.000440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.727853" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;78000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;578000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;82000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;81000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;582000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;46000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;579000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;38000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;591000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;563000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;53000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;58000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;557000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.724311" elapsed="0.004492"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.731351" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:26.728907" elapsed="0.002511"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.728879" elapsed="0.002570"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:26.748480" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:26.748527" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:26.731686" elapsed="0.016864"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:26.750430" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:26.748633" elapsed="0.001853"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.748614" elapsed="0.001896"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:26.750542" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:26.750733" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:26.750777" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 147 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:26.713371" elapsed="0.037429"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.753056" elapsed="0.000034"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:26.751356" elapsed="0.001766"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.751337" elapsed="0.001807"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.753705" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.753290" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.754270" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.753903" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:26.754346" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:26.754522" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:26.751010" elapsed="0.003537"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:26.754703" elapsed="0.000398"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:26.712740" elapsed="0.042424"/>
</kw>
<arg>f24.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:26.668138" elapsed="0.087081"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:26.661285" elapsed="0.094049"/>
</test>
<test id="s1-s3-s2-t74" name="Test Is Flow 25 Updated" line="205">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:26.766163" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f25.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f25.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:26.766297" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:26.766005" elapsed="0.000321"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:26.766897" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7e700&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:26.766477" elapsed="0.000448"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:26.767371" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:26.767093" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:26.767817" level="INFO">${flow_id} = 148</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:26.767549" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:26.768277" level="INFO">${flow_priority} = 25</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:26.767992" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:26.769230" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:26.768452" elapsed="0.000813"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.769756" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.769422" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.770328" level="INFO">${flow_id} = 148</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.769987" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.770847" level="INFO">${flow_priority} = 25</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.770521" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.771367" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.771038" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.771880" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.771563" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.772411" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7e700&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.772090" elapsed="0.000363"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:26.765678" elapsed="0.006830"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.773056" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.772662" elapsed="0.000440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.773654" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;25&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;25&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.773254" elapsed="0.000463"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.781377" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:26.781062" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:26.786517" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=148?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=148?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:26.786724" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=148?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:26.786823" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:26.781535" elapsed="0.005314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.787327" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.787009" elapsed="0.000395"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.790508" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.787614" elapsed="0.002965"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:26.793186" elapsed="0.000047"/>
</return>
<status status="PASS" start="2026-05-25T01:54:26.790676" elapsed="0.002622"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.790648" elapsed="0.002692"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:26.793564" elapsed="0.000038"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:26.793886" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:26.793698" elapsed="0.000259"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:26.793675" elapsed="0.000314"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.794032" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:26.796294" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:26.796356" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 148 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:26.780729" elapsed="0.015659"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.798862" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:26.797223" elapsed="0.001684"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.797192" elapsed="0.001737"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.799490" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.799094" elapsed="0.000430"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.800031" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.799685" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:26.800124" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:54:26.800308" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:26.796685" elapsed="0.003648"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:26.800489" elapsed="0.000401"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:26.780179" elapsed="0.020775"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.808778" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:26.808464" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:26.816564" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:26.817342" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:26.817730" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:26.808938" elapsed="0.008828"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.818370" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.817991" elapsed="0.000442"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.822247" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;78000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;578000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;82000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;81000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;582000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;46000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;579000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;38000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;591000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;563000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;53000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;58000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;557000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.818635" elapsed="0.004536"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.825733" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:26.823272" elapsed="0.002528"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.823245" elapsed="0.002586"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:26.845117" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:26.845165" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:26.826025" elapsed="0.019163"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:26.847026" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:26.845267" elapsed="0.001830"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.845248" elapsed="0.001874"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:26.847155" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:54:26.847355" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:26.847399" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 148 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:26.807999" elapsed="0.039422"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.849571" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:26.847968" elapsed="0.001649"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.847950" elapsed="0.001688"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.850202" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.849786" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.850742" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.850393" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:26.850818" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:26.850994" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:26.847635" elapsed="0.003384"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:26.851207" elapsed="0.000387"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:26.807375" elapsed="0.044283"/>
</kw>
<arg>f25.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:26.762450" elapsed="0.089264"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:26.755625" elapsed="0.096205"/>
</test>
<test id="s1-s3-s2-t75" name="Test Is Flow 31 Updated" line="207">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:26.862678" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f31.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f31.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:26.862813" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:26.862542" elapsed="0.000299"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:26.863409" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc305b70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:26.862993" elapsed="0.000444"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:26.863870" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:26.863589" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:26.864333" level="INFO">${flow_id} = 154</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:26.864047" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:26.864777" level="INFO">${flow_priority} = 31</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:26.864509" elapsed="0.000305"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:26.865618" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:26.864970" elapsed="0.000678"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.866152" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.865803" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.866707" level="INFO">${flow_id} = 154</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.866384" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.867242" level="INFO">${flow_priority} = 31</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.866899" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.867747" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.867434" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.868272" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.867940" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.868807" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc305b70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.868467" elapsed="0.000383"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:26.862215" elapsed="0.006699"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.869458" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.869062" elapsed="0.000427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.869886" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;154&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;31&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf31&lt;/flow-name&gt;
    &lt;priority&gt;31&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.869644" elapsed="0.000301"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.877754" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:26.877457" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:26.883529" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=154?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=154?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:26.883727" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=154?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:26.883826" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:26.877910" elapsed="0.005941"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.884292" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.884009" elapsed="0.000328"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.887126" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.884480" elapsed="0.002719"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:26.889779" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-05-25T01:54:26.887297" elapsed="0.002575"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.887269" elapsed="0.002637"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:26.890123" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:26.890500" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:26.890311" elapsed="0.000261"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:26.890286" elapsed="0.000318"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.890648" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:54:26.892963" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:26.893026" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 154 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:26.877139" elapsed="0.015919"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.895287" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:26.893710" elapsed="0.001622"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.893693" elapsed="0.001661"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.895911" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.895501" elapsed="0.000437"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.896465" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.896116" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:26.896541" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:26.896719" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:26.893375" elapsed="0.003369"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:26.896914" elapsed="0.000404"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:26.876525" elapsed="0.020857"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.905112" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:26.904789" elapsed="0.000351"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:26.913209" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:26.914007" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:26.914421" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:26.905272" elapsed="0.009186"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.915034" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.914680" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.918853" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;78000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;578000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;82000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;81000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;582000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;46000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;579000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;38000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;591000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;563000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;53000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;58000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;557000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.915327" elapsed="0.004448"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.922402" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:26.919875" elapsed="0.002595"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.919848" elapsed="0.002653"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:26.941177" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:26.941224" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:26.922694" elapsed="0.018553"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:26.944660" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:26.941326" elapsed="0.003390"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.941306" elapsed="0.003434"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:26.944772" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:26.944991" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:26.945035" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 154 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:26.904412" elapsed="0.040645"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.947202" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:26.945625" elapsed="0.001622"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.945607" elapsed="0.001661"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.947813" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.947415" elapsed="0.000426"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.948370" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.948002" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:26.948445" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:26.948621" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:26.945292" elapsed="0.003354"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:26.948802" elapsed="0.000418"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:26.903790" elapsed="0.045492"/>
</kw>
<arg>f31.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:26.858916" elapsed="0.090421"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:26.852100" elapsed="0.097352"/>
</test>
<test id="s1-s3-s2-t76" name="Test Is Flow 36 Updated" line="209">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:26.960447" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f36.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f36.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:26.960594" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:26.960307" elapsed="0.000316"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:26.961222" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1efc0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:26.960773" elapsed="0.000480"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:26.961698" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:26.961408" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:26.962169" level="INFO">${flow_id} = 159</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:26.961875" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:26.962612" level="INFO">${flow_priority} = 36</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:26.962345" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:26.963403" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:26.962786" elapsed="0.000647"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.963917" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.963588" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.964507" level="INFO">${flow_id} = 159</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.964181" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.965037" level="INFO">${flow_priority} = 36</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.964699" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.965555" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.965245" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.966061" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.965748" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.966588" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1efc0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:26.966271" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:26.959967" elapsed="0.006715"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.967225" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.966830" elapsed="0.000425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.967647" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;159&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;36&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf36&lt;/flow-name&gt;
    &lt;priority&gt;36&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.967406" elapsed="0.000298"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.975553" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:26.975251" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:26.980972" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=159?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=159?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:26.981198" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=159?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:26.981297" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:26.975710" elapsed="0.005612"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.981731" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.981479" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.983948" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:26.981919" elapsed="0.002079"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:26.986142" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-05-25T01:54:26.984082" elapsed="0.002153"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.984048" elapsed="0.002221"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:26.986468" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:26.986781" elapsed="0.000069"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:26.986593" elapsed="0.000305"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:26.986571" elapsed="0.000359"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.986976" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:26.989281" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:26.989344" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 159 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:26.974911" elapsed="0.014464"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:26.992351" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:26.990148" elapsed="0.002265"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:26.990122" elapsed="0.002322"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.993268" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.992649" elapsed="0.000666"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:26.993867" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:26.993518" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:26.993942" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:26.994138" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:26.989666" elapsed="0.004498"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:26.994320" elapsed="0.000387"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:26.974336" elapsed="0.020434"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.002503" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:27.002206" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:27.009697" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:27.010272" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:27.010705" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:27.002660" elapsed="0.008082"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.011344" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.010964" elapsed="0.000442"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.015159" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;78000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;578000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;82000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;81000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;582000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;46000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;579000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;38000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;591000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;563000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;53000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;58000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;557000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.011607" elapsed="0.004447"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.018664" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.016174" elapsed="0.002556"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.016145" elapsed="0.002616"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:27.035937" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:27.035983" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:27.018953" elapsed="0.017054"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:27.037907" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:27.036100" elapsed="0.001864"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.036079" elapsed="0.001908"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:27.038020" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:27.038231" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:27.038275" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 159 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:27.001816" elapsed="0.036482"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.040410" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.038838" elapsed="0.001617"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.038819" elapsed="0.001657"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.041031" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.040622" elapsed="0.000437"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.041587" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.041237" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:27.041663" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:27.041839" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:27.038509" elapsed="0.003355"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:27.042019" elapsed="0.000401"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:27.001208" elapsed="0.041275"/>
</kw>
<arg>f36.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:26.956718" elapsed="0.085822"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:26.949741" elapsed="0.092910"/>
</test>
<test id="s1-s3-s2-t77" name="Test Is Flow 38 Updated" line="211">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:27.053460" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f38.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f38.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:27.053598" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:27.053320" elapsed="0.000306"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:27.054197" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38aed0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:27.053777" elapsed="0.000449"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:27.054657" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:27.054378" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:27.055118" level="INFO">${flow_id} = 161</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:27.054834" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:27.055564" level="INFO">${flow_priority} = 38</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:27.055295" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:27.056379" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:27.055740" elapsed="0.000670"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.056909" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.056568" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.057484" level="INFO">${flow_id} = 161</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.057159" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.058003" level="INFO">${flow_priority} = 38</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.057679" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.058524" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.058212" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.059038" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.058721" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.059575" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38aed0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.059251" elapsed="0.000365"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:27.052974" elapsed="0.006697"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.060219" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.059821" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.060641" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;161&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;38&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf38&lt;/flow-name&gt;
    &lt;priority&gt;38&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.060401" elapsed="0.000299"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.068491" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:27.068193" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:27.074920" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=161?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=161?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:27.075141" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=161?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:27.075241" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:27.068647" elapsed="0.006620"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.075683" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.075431" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.078278" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.075870" elapsed="0.002481"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:27.080856" elapsed="0.000056"/>
</return>
<status status="PASS" start="2026-05-25T01:54:27.078447" elapsed="0.002518"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.078419" elapsed="0.002580"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:27.081216" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:27.081581" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:27.081392" elapsed="0.000261"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:27.081367" elapsed="0.000318"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.081730" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:27.083991" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:27.084054" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 161 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:27.067863" elapsed="0.016242"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.086658" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.084868" elapsed="0.001835"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.084843" elapsed="0.001882"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.087289" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.086872" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.087826" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.087479" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:27.087902" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:27.088095" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:27.084404" elapsed="0.003718"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:27.088279" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:27.067309" elapsed="0.021414"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.096454" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:27.096157" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:27.103705" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:27.104467" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:27.104854" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:27.096610" elapsed="0.008281"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.105522" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.105162" elapsed="0.000423"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.109330" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;78000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;578000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;82000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;81000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;582000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;46000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;579000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;38000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;591000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;563000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;53000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;58000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;557000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.105783" elapsed="0.004480"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.112797" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.110365" elapsed="0.002498"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.110337" elapsed="0.002556"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:27.132859" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:27.132906" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:27.113141" elapsed="0.019976"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:27.134918" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:27.133202" elapsed="0.001772"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.133182" elapsed="0.001816"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:27.135031" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:27.135241" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:27.135285" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 161 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:27.095761" elapsed="0.039546"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.137551" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.135856" elapsed="0.001740"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.135837" elapsed="0.001781"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.138188" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.137765" elapsed="0.000451"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.138730" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.138379" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:27.138806" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:27.138984" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:27.135523" elapsed="0.003486"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:27.139181" elapsed="0.000386"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:27.095154" elapsed="0.044475"/>
</kw>
<arg>f38.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:27.049707" elapsed="0.089979"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:27.042909" elapsed="0.096888"/>
</test>
<test id="s1-s3-s2-t78" name="Test Is Flow 43 Updated" line="213">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:27.150628" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f43.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f43.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:27.150763" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:27.150491" elapsed="0.000301"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:27.151367" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1c450&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:27.150943" elapsed="0.000452"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:27.151827" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:27.151547" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:27.152293" level="INFO">${flow_id} = 166</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:27.152005" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:27.152738" level="INFO">${flow_priority} = 43</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:27.152470" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:27.153610" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:27.152913" elapsed="0.000728"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.154145" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.153799" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.154704" level="INFO">${flow_id} = 166</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.154383" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.155236" level="INFO">${flow_priority} = 43</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.154897" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.155741" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.155429" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.156268" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.155935" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.156783" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1c450&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.156464" elapsed="0.000360"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:27.150157" elapsed="0.006722"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.157438" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.157040" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.157860" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;166&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;43&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf43&lt;/flow-name&gt;
    &lt;priority&gt;43&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.157620" elapsed="0.000304"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.165696" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:27.165401" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:27.171590" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=166?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=166?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:27.171944" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=166?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:27.172167" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:27.165853" elapsed="0.006364"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.173011" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.172511" elapsed="0.000582"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.176150" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.173294" elapsed="0.002928"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:27.178789" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:54:27.176319" elapsed="0.002561"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.176291" elapsed="0.002623"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:27.179193" elapsed="0.000033"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:27.179512" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:27.179324" elapsed="0.000259"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:27.179301" elapsed="0.000314"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.179659" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:54:27.181953" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:27.182016" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 166 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:27.165081" elapsed="0.016967"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.185034" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.182818" elapsed="0.002297"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.182793" elapsed="0.002354"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.185901" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.185352" elapsed="0.000586"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.186673" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.186185" elapsed="0.000525"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:27.186780" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:54:27.187027" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:27.182359" elapsed="0.004703"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:27.187302" elapsed="0.000539"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:27.164492" elapsed="0.023437"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.196163" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:27.195849" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:27.204095" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:27.204791" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:27.205111" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:27.196320" elapsed="0.008818"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.205965" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.205390" elapsed="0.000705"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.212246" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;78000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;578000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;82000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;81000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;582000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;46000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;579000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;38000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;591000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;563000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;53000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;58000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;557000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.206421" elapsed="0.007188"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.215444" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.213685" elapsed="0.001807"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.213665" elapsed="0.001849"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:27.231501" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:27.231549" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:27.215653" elapsed="0.015919"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:27.234945" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:27.231651" elapsed="0.003350"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.231631" elapsed="0.003394"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:27.235058" elapsed="0.000042"/>
</return>
<msg time="2026-05-25T01:54:27.235270" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:27.235314" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 166 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:27.195472" elapsed="0.039865"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.237492" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.235881" elapsed="0.001656"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.235863" elapsed="0.001695"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.238125" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.237707" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.238666" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.238316" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:27.238741" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:27.238917" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:27.235551" elapsed="0.003391"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:27.239112" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:27.194848" elapsed="0.044711"/>
</kw>
<arg>f43.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:27.146869" elapsed="0.092747"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:27.140048" elapsed="0.099678"/>
</test>
<test id="s1-s3-s2-t79" name="Test Is Flow 45 Updated" line="215">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:27.250555" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f45.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f45.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:27.250702" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:27.250420" elapsed="0.000311"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:27.251295" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35bb50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:27.250883" elapsed="0.000440"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:27.251758" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:27.251477" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:27.252226" level="INFO">${flow_id} = 168</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:27.251938" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:27.252674" level="INFO">${flow_priority} = 45</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:27.252403" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:27.253504" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:27.252852" elapsed="0.000683"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.254029" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.253694" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.254609" level="INFO">${flow_id} = 168</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.254282" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.255149" level="INFO">${flow_priority} = 45</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.254804" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.255661" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.255345" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.256193" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.255859" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.256711" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35bb50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.256390" elapsed="0.000362"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:27.250094" elapsed="0.006714"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.257368" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.256959" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.257790" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;168&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;1180719718&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xfff0ffff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
    &lt;cookie&gt;45&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf45&lt;/flow-name&gt;
    &lt;priority&gt;45&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.257550" elapsed="0.000298"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.265686" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:27.265383" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:27.269677" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=168?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=168?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:27.269882" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=168?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:27.269980" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:27.265845" elapsed="0.004160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.270557" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.270185" elapsed="0.000434"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.273675" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.270820" elapsed="0.002925"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:27.276290" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-05-25T01:54:27.273843" elapsed="0.002539"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.273815" elapsed="0.002600"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:27.276612" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:27.276977" elapsed="0.000055"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:27.276786" elapsed="0.000319"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:27.276761" elapsed="0.000379"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.277187" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:27.279451" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:27.279513" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 168 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:27.265050" elapsed="0.014496"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.282258" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.280322" elapsed="0.001980"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.280297" elapsed="0.002027"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.282864" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.282470" elapsed="0.000421"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.283420" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.283052" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:27.283497" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:27.283671" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:27.279839" elapsed="0.003858"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:27.283852" elapsed="0.000402"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:27.264484" elapsed="0.019834"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.292019" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:27.291724" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:27.298109" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:27.298642" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:27.298918" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:27.292190" elapsed="0.006754"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.299377" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.299120" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.302489" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;78000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;578000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;82000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;81000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;582000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;46000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;579000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;38000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;591000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;563000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;53000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;58000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;557000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.299565" elapsed="0.003845"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.305943" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.303511" elapsed="0.002498"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.303484" elapsed="0.002556"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:27.323357" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:27.323405" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:27.306253" elapsed="0.017177"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:27.325366" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:27.323510" elapsed="0.001913"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.323489" elapsed="0.001958"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:27.325479" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:54:27.325674" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:27.325717" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 168 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:27.291347" elapsed="0.034393"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.327872" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.326306" elapsed="0.001611"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.326287" elapsed="0.001651"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.328503" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.328099" elapsed="0.000431"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.329055" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.328694" elapsed="0.000401"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:27.329148" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:54:27.329326" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:27.325955" elapsed="0.003396"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:27.329509" elapsed="0.000382"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:27.290718" elapsed="0.039237"/>
</kw>
<arg>f45.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:27.246850" elapsed="0.083162"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:27.239997" elapsed="0.090149"/>
</test>
<test id="s1-s3-s2-t80" name="Test Is Flow 101 Updated" line="217">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:27.340931" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f101.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f101.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:27.341122" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:27.340793" elapsed="0.000361"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:27.341729" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35b600&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:27.341308" elapsed="0.000448"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:27.342204" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:27.341909" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:27.342656" level="INFO">${flow_id} = 224</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:27.342387" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:27.343114" level="INFO">${flow_priority} = 101</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:27.342831" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:27.344006" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:27.343295" elapsed="0.000742"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.344544" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.344210" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.345129" level="INFO">${flow_id} = 224</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.344778" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.345654" level="INFO">${flow_priority} = 101</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.345327" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.346176" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.345846" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.346699" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.346381" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.347383" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35b600&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.346895" elapsed="0.000532"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:27.340467" elapsed="0.007018"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.348024" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.347638" elapsed="0.000416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.348469" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;101&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;101&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.348224" elapsed="0.000306"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.356145" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:27.355831" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:27.359772" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=224?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=224?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:27.359966" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=224?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:27.360084" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:27.356301" elapsed="0.003811"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.360530" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.360279" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.362763" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.360718" elapsed="0.002095"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:27.364628" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-05-25T01:54:27.362882" elapsed="0.001840"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.362863" elapsed="0.001887"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:27.364894" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:27.365161" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:27.364985" elapsed="0.000231"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:27.364969" elapsed="0.000275"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.365295" elapsed="0.000026"/>
</return>
<msg time="2026-05-25T01:54:27.367576" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:27.367639" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 224 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:27.355517" elapsed="0.012154"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.370660" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.368449" elapsed="0.002274"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.368424" elapsed="0.002329"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.371532" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.370957" elapsed="0.000613"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.372312" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.371797" elapsed="0.000551"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:27.372418" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:54:27.372663" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:27.367961" elapsed="0.004737"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:27.372916" elapsed="0.000602"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:27.354939" elapsed="0.018643"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.381313" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:27.380964" elapsed="0.000375"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:27.387419" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:27.387956" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:27.388253" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:27.381469" elapsed="0.006810"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.388697" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.388443" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.391998" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;78000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;578000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;82000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;81000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;582000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;46000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;579000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;38000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;591000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;563000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;53000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;58000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;557000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.388887" elapsed="0.004032"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.395486" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.393022" elapsed="0.002531"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.392993" elapsed="0.002591"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:27.414404" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:27.414452" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:27.395782" elapsed="0.018694"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:27.416329" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:27.414554" elapsed="0.001831"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.414535" elapsed="0.001875"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:27.416443" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:54:27.416641" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:27.416685" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 224 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:27.380591" elapsed="0.036116"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.418867" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.417307" elapsed="0.001606"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.417288" elapsed="0.001647"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.419508" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.419098" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.420052" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.419698" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:27.420145" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:54:27.420324" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:27.416932" elapsed="0.003418"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:27.420508" elapsed="0.000390"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:27.379971" elapsed="0.040989"/>
</kw>
<arg>f101.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:27.337227" elapsed="0.083789"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:27.330403" elapsed="0.090790"/>
</test>
<test id="s1-s3-s2-t81" name="Test Is Flow 102 Updated" line="219">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:27.432181" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f102.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f102.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:27.432336" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:27.432028" elapsed="0.000337"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:27.432950" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4eb060&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:27.432517" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:27.433439" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:27.433157" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:27.433884" level="INFO">${flow_id} = 225</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:27.433616" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:27.434349" level="INFO">${flow_priority} = 102</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:27.434058" elapsed="0.000317"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:27.435293" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:27.434525" elapsed="0.000799"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.435857" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.435479" elapsed="0.000436"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.436556" level="INFO">${flow_id} = 225</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.436171" elapsed="0.000433"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.437212" level="INFO">${flow_priority} = 102</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.436788" elapsed="0.000482"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.437808" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.437449" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.438589" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.438051" elapsed="0.000589"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.439411" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4eb060&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.438818" elapsed="0.000642"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:27.431691" elapsed="0.007833"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.440174" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.439700" elapsed="0.000512"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.440679" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;102&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;102&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.440394" elapsed="0.000361"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.448956" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:27.448651" elapsed="0.000332"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:27.453263" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=225?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=225?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:27.453499" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=225?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:27.453601" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:27.449138" elapsed="0.004488"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.454042" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.453788" elapsed="0.000316"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.457336" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.454268" elapsed="0.003143"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:27.460180" elapsed="0.000046"/>
</return>
<status status="PASS" start="2026-05-25T01:54:27.457517" elapsed="0.002769"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.457486" elapsed="0.002837"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:27.460535" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:27.460867" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:27.460668" elapsed="0.000275"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:27.460643" elapsed="0.000334"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.461024" elapsed="0.000021"/>
</return>
<msg time="2026-05-25T01:54:27.463081" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:27.463129" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 225 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:27.448334" elapsed="0.014819"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.465279" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.463694" elapsed="0.001630"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.463676" elapsed="0.001670"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.465886" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.465491" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.466449" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.466091" elapsed="0.000385"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:27.466526" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:27.466703" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:27.463363" elapsed="0.003366"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:27.466885" elapsed="0.000399"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:27.447758" elapsed="0.019590"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.475063" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:27.474767" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:27.481352" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:27.481890" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:27.482183" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:27.475236" elapsed="0.006974"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.482628" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.482375" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.485391" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;78000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;578000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;82000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;81000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;582000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;46000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;579000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;38000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;591000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;563000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;53000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;58000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;557000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.482819" elapsed="0.003236"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.488758" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.486143" elapsed="0.002686"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.486122" elapsed="0.002740"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:27.506692" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:27.506739" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:27.489086" elapsed="0.017676"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:27.510280" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:27.506840" elapsed="0.003496"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.506821" elapsed="0.003539"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:27.510393" elapsed="0.000026"/>
</return>
<msg time="2026-05-25T01:54:27.510583" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:27.510626" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 225 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:27.474392" elapsed="0.036256"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.512782" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.511207" elapsed="0.001620"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.511188" elapsed="0.001661"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.513426" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.512994" elapsed="0.000459"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.513963" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.513614" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:27.514037" elapsed="0.000041"/>
</return>
<msg time="2026-05-25T01:54:27.514231" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:27.510860" elapsed="0.003396"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:27.514412" elapsed="0.000382"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:27.473761" elapsed="0.041095"/>
</kw>
<arg>f102.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:27.428319" elapsed="0.086593"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:27.421486" elapsed="0.093540"/>
</test>
<test id="s1-s3-s2-t82" name="Test Is Flow 103 Updated" line="221">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:27.525931" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f103.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f103.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:27.526096" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:27.525794" elapsed="0.000333"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:27.526723" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3f7ec0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:27.526283" elapsed="0.000467"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:27.527199" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:27.526902" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:27.527645" level="INFO">${flow_id} = 226</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:27.527377" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:27.528103" level="INFO">${flow_priority} = 103</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:27.527821" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:27.529020" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:27.528280" elapsed="0.000771"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.529576" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.529241" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.530153" level="INFO">${flow_id} = 226</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.529814" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.530673" level="INFO">${flow_priority} = 103</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.530349" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.531191" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.530863" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.532640" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.532229" elapsed="0.000463"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.533212" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3f7ec0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.532845" elapsed="0.000410"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:27.525468" elapsed="0.007843"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.533852" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.533460" elapsed="0.000422"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.534294" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;103&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;103&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.534031" elapsed="0.000326"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.542276" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:27.541955" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:27.546370" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=226?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=226?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:27.546569" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=226?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:27.546668" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:27.542435" elapsed="0.004258"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.547132" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.546858" elapsed="0.000320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.549380" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.547323" elapsed="0.002107"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:27.551820" elapsed="0.000044"/>
</return>
<status status="PASS" start="2026-05-25T01:54:27.549500" elapsed="0.002420"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.549480" elapsed="0.002476"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:27.552186" elapsed="0.000033"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:27.552521" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:27.552321" elapsed="0.000275"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:27.552297" elapsed="0.000333"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.552677" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:27.555129" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:27.555196" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 226 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:27.541641" elapsed="0.013594"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.558269" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.556030" elapsed="0.002292"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.556005" elapsed="0.002339"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.558894" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.558491" elapsed="0.000430"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.559452" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.559100" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:27.559528" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:27.559705" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:27.555563" elapsed="0.004166"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:27.559885" elapsed="0.000402"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:27.541051" elapsed="0.019299"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.568082" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:27.567769" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:27.576167" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:27.576913" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:27.577348" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:27.568240" elapsed="0.009146"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.577962" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.577609" elapsed="0.000416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.581778" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;78000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;578000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;82000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;81000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;582000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;46000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;579000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;38000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;591000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;563000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;53000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;58000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;557000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.578252" elapsed="0.004445"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.585302" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.582800" elapsed="0.002570"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.582771" elapsed="0.002630"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:27.601520" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:27.601567" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:27.585596" elapsed="0.015995"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:27.603491" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:27.601670" elapsed="0.001877"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.601650" elapsed="0.001921"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:27.603603" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:27.603799" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:27.603843" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 226 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:27.567394" elapsed="0.036471"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.606021" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.604423" elapsed="0.001656"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.604404" elapsed="0.001699"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.606658" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.606252" elapsed="0.000433"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.607217" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.606848" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:27.607299" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:27.607476" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:27.604091" elapsed="0.003410"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:27.607659" elapsed="0.000383"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:27.566768" elapsed="0.041354"/>
</kw>
<arg>f103.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:27.522225" elapsed="0.085954"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:27.515357" elapsed="0.092935"/>
</test>
<test id="s1-s3-s2-t83" name="Test Is Flow 104 Updated" line="223">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:27.619214" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f104.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f104.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:27.619371" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:27.619061" elapsed="0.000340"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:27.619971" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3f62f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:27.619553" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:27.620448" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:27.620170" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:27.620896" level="INFO">${flow_id} = 227</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:27.620628" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:27.621385" level="INFO">${flow_priority} = 104</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:27.621088" elapsed="0.000323"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:27.622297" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:27.621561" elapsed="0.000766"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.622816" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.622485" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.623401" level="INFO">${flow_id} = 227</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.623052" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.623924" level="INFO">${flow_priority} = 104</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.623596" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.624601" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.624132" elapsed="0.000516"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.625149" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.624808" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.625696" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3f62f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.625369" elapsed="0.000369"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:27.618734" elapsed="0.007060"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.626345" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.625944" elapsed="0.000431"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.626774" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;104&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;104&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.626532" elapsed="0.000303"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.634504" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:27.634198" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:27.639609" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=227?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=227?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:27.639963" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=227?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:27.640181" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:27.634660" elapsed="0.005574"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.640846" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.640497" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.643990" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.641126" elapsed="0.002935"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:27.646627" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:54:27.644190" elapsed="0.002569"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.644161" elapsed="0.002638"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:27.646998" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:27.647338" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:27.647149" elapsed="0.000262"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:27.647124" elapsed="0.000319"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.647488" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:27.649830" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:27.649896" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 227 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:27.633858" elapsed="0.016070"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.652139" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.650583" elapsed="0.001602"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.650565" elapsed="0.001642"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.652751" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.652358" elapsed="0.000420"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.653592" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.652938" elapsed="0.000691"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:27.653701" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:54:27.653888" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:27.650249" elapsed="0.003664"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:27.654092" elapsed="0.000391"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:27.633284" elapsed="0.021263"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.662234" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:27.661921" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:27.669753" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:27.670307" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:27.670604" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:27.662390" elapsed="0.008240"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.671044" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.670790" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.673800" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;78000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;578000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;82000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;81000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;582000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;46000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;579000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;38000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;591000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;563000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;53000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;58000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;557000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.671254" elapsed="0.003204"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.676278" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.674531" elapsed="0.001795"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.674511" elapsed="0.001837"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:27.698652" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:27.698701" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:27.676487" elapsed="0.022238"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:27.700524" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:27.698808" elapsed="0.001772"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.698787" elapsed="0.001818"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:27.700638" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:54:27.700834" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:27.700877" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 227 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:27.661546" elapsed="0.039353"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.703042" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.701486" elapsed="0.001616"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.701467" elapsed="0.001657"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.703683" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.703272" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.704238" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.703873" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:27.704314" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:27.704488" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:27.701139" elapsed="0.003374"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:27.704668" elapsed="0.000386"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:27.660901" elapsed="0.044232"/>
</kw>
<arg>f104.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:27.615473" elapsed="0.089717"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:27.608631" elapsed="0.096707"/>
</test>
<test id="s1-s3-s2-t84" name="Test Is Flow 105 Updated" line="225">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:27.716175" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f105.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f105.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:27.716327" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:27.716020" elapsed="0.000335"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:27.716930" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3f5d50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:27.716505" elapsed="0.000454"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:27.717429" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:27.717128" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:27.717878" level="INFO">${flow_id} = 228</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:27.717610" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:27.718344" level="INFO">${flow_priority} = 105</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:27.718053" elapsed="0.000317"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:27.719256" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:27.718521" elapsed="0.000766"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.719777" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.719446" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.720361" level="INFO">${flow_id} = 228</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.720018" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.720883" level="INFO">${flow_priority} = 105</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.720557" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.721432" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.721090" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.721949" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.721630" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.722482" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3f5d50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.722161" elapsed="0.000363"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:27.715687" elapsed="0.006891"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.723127" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.722729" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.723551" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;105&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;105&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.723310" elapsed="0.000303"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.731432" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:27.731126" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:27.736248" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=228?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=228?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:27.736454" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=228?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:27.736554" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:27.731588" elapsed="0.004991"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.736991" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.736740" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.739692" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.737197" elapsed="0.002565"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:27.742477" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:54:27.739860" elapsed="0.002749"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.739832" elapsed="0.002817"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:27.742850" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:27.743190" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:27.742979" elapsed="0.000285"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:27.742956" elapsed="0.000343"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.743345" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:27.745632" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:27.745695" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 228 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:27.730795" elapsed="0.014932"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.748079" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.746504" elapsed="0.001622"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.746485" elapsed="0.001663"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.748686" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.748293" elapsed="0.000420"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.749239" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.748873" elapsed="0.000406"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:27.749331" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:54:27.749516" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:27.746019" elapsed="0.003522"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:27.749697" elapsed="0.000397"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:27.730239" elapsed="0.019920"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.757850" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:27.757555" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:27.765709" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:27.766489" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:27.766890" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:27.758006" elapsed="0.008921"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.767534" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.767172" elapsed="0.000424"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.771420" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;78000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;578000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;82000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;81000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;582000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;46000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;579000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;38000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;591000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;563000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;53000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;58000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;557000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.767796" elapsed="0.004552"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.774937" elapsed="0.000031"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.772451" elapsed="0.002566"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.772423" elapsed="0.002626"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:27.799299" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:27.799348" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:27.775279" elapsed="0.024093"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:27.801182" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:27.799452" elapsed="0.001787"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.799433" elapsed="0.001830"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:27.801321" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:54:27.801524" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:27.801569" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 228 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:27.757162" elapsed="0.044431"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.803742" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.802166" elapsed="0.001621"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.802148" elapsed="0.001661"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.804383" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.803958" elapsed="0.000453"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.804929" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.804577" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:27.805006" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:27.805201" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:27.801813" elapsed="0.003414"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:27.805396" elapsed="0.000391"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:27.756537" elapsed="0.049313"/>
</kw>
<arg>f105.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:27.712429" elapsed="0.093480"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:27.705672" elapsed="0.100354"/>
</test>
<test id="s1-s3-s2-t85" name="Test Is Flow 106 Updated" line="227">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:27.816887" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f106.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f106.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:27.817031" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:27.816746" elapsed="0.000314"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:27.817721" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4c3b00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:27.817230" elapsed="0.000519"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:27.818266" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:27.817933" elapsed="0.000361"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:27.818726" level="INFO">${flow_id} = 229</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:27.818451" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:27.819210" level="INFO">${flow_priority} = 106</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:27.818915" elapsed="0.000322"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:27.820177" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:27.819390" elapsed="0.000825"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.820732" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.820392" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.821393" level="INFO">${flow_id} = 229</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.820991" elapsed="0.000448"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.821947" level="INFO">${flow_priority} = 106</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.821599" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.822487" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.822165" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.823021" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.822686" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.823564" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4c3b00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.823241" elapsed="0.000366"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:27.816390" elapsed="0.007273"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.824234" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.823823" elapsed="0.000442"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.824663" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;106&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;106&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.824419" elapsed="0.000307"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.832666" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:27.832363" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:27.838238" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=229?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=229?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:27.838453" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=229?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:27.838550" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:27.832823" elapsed="0.005753"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.838985" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.838735" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.841235" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.839190" elapsed="0.002095"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:27.843521" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-05-25T01:54:27.841390" elapsed="0.002279"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.841368" elapsed="0.002340"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:27.843910" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:27.844256" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:27.844039" elapsed="0.000290"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:27.844016" elapsed="0.000345"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.844405" elapsed="0.000021"/>
</return>
<msg time="2026-05-25T01:54:27.846748" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:27.846812" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 229 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:27.832017" elapsed="0.014827"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.849947" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.847632" elapsed="0.002379"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.847607" elapsed="0.002435"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.850845" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.850270" elapsed="0.000622"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.851470" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.851118" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:27.851545" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:27.851722" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:27.847162" elapsed="0.004585"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:27.851902" elapsed="0.000402"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:27.831431" elapsed="0.020938"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.860342" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:27.860028" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:27.868623" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:27.869421" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:27.869813" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:27.860498" elapsed="0.009352"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.870455" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.870093" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.874322" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;78000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;578000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;82000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;81000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;582000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;46000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;579000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;38000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;591000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;563000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;53000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;58000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;557000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.870725" elapsed="0.004528"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.877865" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.875357" elapsed="0.002576"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.875328" elapsed="0.002636"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:27.901199" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:27.901257" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:27.878182" elapsed="0.023100"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:27.903131" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:27.901403" elapsed="0.001785"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.901373" elapsed="0.001839"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:27.903246" elapsed="0.000036"/>
</return>
<msg time="2026-05-25T01:54:27.903452" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:27.903496" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 229 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:27.859649" elapsed="0.043869"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.905680" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.904087" elapsed="0.001638"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.904054" elapsed="0.001693"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.906313" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.905894" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.906851" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.906503" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:27.906926" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:27.907121" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:27.903737" elapsed="0.003411"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:27.907308" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:27.859002" elapsed="0.048752"/>
</kw>
<arg>f106.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:27.813130" elapsed="0.094681"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:27.806317" elapsed="0.101614"/>
</test>
<test id="s1-s3-s2-t86" name="Test Is Flow 107 Updated" line="229">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:27.918829" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f107.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f107.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:27.918982" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:27.918687" elapsed="0.000323"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:27.919619" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d40e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:27.919178" elapsed="0.000469"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:27.920104" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:27.919800" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:27.920553" level="INFO">${flow_id} = 230</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:27.920284" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:27.920994" level="INFO">${flow_priority} = 107</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:27.920729" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:27.921994" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:27.921186" elapsed="0.000838"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.922532" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.922198" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.923136" level="INFO">${flow_id} = 230</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.922787" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.923669" level="INFO">${flow_priority} = 107</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.923340" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.924192" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.923863" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.924707" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.924389" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.925453" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d40e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:27.924903" elapsed="0.000595"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:27.918350" elapsed="0.007206"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.926122" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.925711" elapsed="0.000442"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.926565" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;107&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;107&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.926313" elapsed="0.000316"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.934296" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:27.933974" elapsed="0.000349"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:27.939350" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=230?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=230?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:27.939565" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=230?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:27.939665" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:27.934454" elapsed="0.005237"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.940125" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.939856" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.942383" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.940314" elapsed="0.002119"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:27.944299" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-05-25T01:54:27.942538" elapsed="0.001831"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.942515" elapsed="0.001878"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:27.944537" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:27.944762" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:27.944628" elapsed="0.000186"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:27.944612" elapsed="0.000224"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.944868" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:54:27.946507" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:27.946552" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 230 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:27.933650" elapsed="0.012925"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.948721" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.947131" elapsed="0.001635"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.947113" elapsed="0.001675"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.949347" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.948933" elapsed="0.000472"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.949927" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:27.949578" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:27.950003" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:27.950196" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:27.946785" elapsed="0.003444"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:27.950386" elapsed="0.000384"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:27.933040" elapsed="0.017794"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.958667" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:27.958370" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:27.968929" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:27.969525" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:27.969811" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:27.958824" elapsed="0.011014"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.970281" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.970001" elapsed="0.000327"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:27.972991" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;78000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;578000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;82000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;81000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;582000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;46000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;579000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;38000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;591000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;563000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;53000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;58000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;557000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:27.970472" elapsed="0.003196"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:27.975699" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:27.973743" elapsed="0.002025"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:27.973721" elapsed="0.002078"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:28.001242" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:28.001291" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:27.975995" elapsed="0.025320"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:28.003153" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:28.001422" elapsed="0.001789"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.001377" elapsed="0.001858"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:28.003270" elapsed="0.000032"/>
</return>
<msg time="2026-05-25T01:54:28.003476" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:28.003520" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 230 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:27.957970" elapsed="0.045573"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.005755" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:28.004132" elapsed="0.001668"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.004113" elapsed="0.001709"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.006410" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.005971" elapsed="0.000466"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.006948" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.006599" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:28.007023" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:28.007218" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:28.003774" elapsed="0.003470"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:28.007400" elapsed="0.000397"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:27.957319" elapsed="0.050541"/>
</kw>
<arg>f107.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:27.915054" elapsed="0.092862"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:27.908247" elapsed="0.099792"/>
</test>
<test id="s1-s3-s2-t87" name="Test Is Flow 108 Updated" line="231">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:28.018906" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f108.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f108.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:28.019097" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:28.018763" elapsed="0.000371"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:28.019739" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5accb4db70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:28.019291" elapsed="0.000477"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:28.020227" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:28.019923" elapsed="0.000331"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:28.020678" level="INFO">${flow_id} = 231</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:28.020408" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:28.021143" level="INFO">${flow_priority} = 108</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:28.020855" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:28.022116" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:28.021322" elapsed="0.000826"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.022647" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.022311" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.023238" level="INFO">${flow_id} = 231</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.022892" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.023762" level="INFO">${flow_priority} = 108</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.023435" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.024289" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.023956" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.024805" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.024485" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.025342" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5accb4db70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.025001" elapsed="0.000382"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:28.018433" elapsed="0.007037"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.026001" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.025621" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.026605" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;108&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;108&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.026198" elapsed="0.000472"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.034366" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:28.034039" elapsed="0.000354"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:28.040658" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=231?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=231?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:28.040866" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=231?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:28.040965" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:28.034525" elapsed="0.006465"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.041457" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.041170" elapsed="0.000334"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.044313" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.041647" elapsed="0.002738"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:28.046989" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:54:28.044528" elapsed="0.002572"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.044498" elapsed="0.002639"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:28.047343" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:28.047659" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:28.047470" elapsed="0.000261"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:28.047447" elapsed="0.000317"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.047809" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:28.050125" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:28.050190" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 231 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:28.033719" elapsed="0.016503"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.052426" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:28.050843" elapsed="0.001628"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.050825" elapsed="0.001668"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.053035" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.052640" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.053604" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.053240" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:28.053680" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:28.053858" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:28.050512" elapsed="0.003371"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:28.054038" elapsed="0.000401"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:28.033130" elapsed="0.021372"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.062508" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:28.062211" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:28.071881" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:28.072502" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:28.072900" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:28.062663" elapsed="0.010274"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.073560" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.073180" elapsed="0.000444"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.077378" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;78000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;578000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;82000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;81000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;582000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;46000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;579000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;38000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;591000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;563000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;53000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;58000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;557000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.073823" elapsed="0.004550"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.080892" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:28.078480" elapsed="0.002479"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.078451" elapsed="0.002539"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:28.104363" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:28.104419" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:28.081203" elapsed="0.023244"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:28.106333" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:28.104526" elapsed="0.001864"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.104506" elapsed="0.001908"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:28.106449" elapsed="0.000037"/>
</return>
<msg time="2026-05-25T01:54:28.106662" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:28.106706" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 231 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:28.061817" elapsed="0.044912"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.108920" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:28.107333" elapsed="0.001633"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.107314" elapsed="0.001673"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.109617" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.109167" elapsed="0.000478"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.110198" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.109809" elapsed="0.000416"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:28.110276" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:28.110455" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:28.106964" elapsed="0.003516"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:28.110647" elapsed="0.000446"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:28.061168" elapsed="0.049990"/>
</kw>
<arg>f108.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:28.015150" elapsed="0.096080"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:28.008259" elapsed="0.103090"/>
</test>
<test id="s1-s3-s2-t88" name="Test Is Flow 109 Updated" line="233">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:28.122594" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f109.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f109.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:28.122739" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:28.122454" elapsed="0.000314"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:28.123375" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3bd8f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:28.122926" elapsed="0.000477"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:28.123835" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:28.123556" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:28.124298" level="INFO">${flow_id} = 232</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:28.124011" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:28.124739" level="INFO">${flow_priority} = 109</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:28.124472" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:28.125712" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:28.124913" elapsed="0.000830"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.126247" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.125900" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.126828" level="INFO">${flow_id} = 232</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.126502" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.127365" level="INFO">${flow_priority} = 109</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.127022" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.127869" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.127558" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.128398" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.128076" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.129088" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3bd8f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.128595" elapsed="0.000538"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:28.122116" elapsed="0.007074"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.129763" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.129344" elapsed="0.000450"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.130208" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;109&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;109&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.129947" elapsed="0.000325"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.138010" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:28.137710" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:28.144834" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=232?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=232?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:28.145050" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=232?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:28.145182" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:28.138184" elapsed="0.007024"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.145658" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.145369" elapsed="0.000335"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.148630" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.145850" elapsed="0.002851"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:28.151357" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:54:28.148843" elapsed="0.002606"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.148813" elapsed="0.002671"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:28.151682" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:28.151999" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:28.151810" elapsed="0.000282"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:28.151787" elapsed="0.000339"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.152173" elapsed="0.000021"/>
</return>
<msg time="2026-05-25T01:54:28.154598" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:28.154660" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 232 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:28.137363" elapsed="0.017325"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.156933" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:28.155289" elapsed="0.001690"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.155271" elapsed="0.001730"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.157599" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.157165" elapsed="0.000462"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.158158" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.157790" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:28.158236" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:28.158413" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:28.154935" elapsed="0.003503"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:28.158594" elapsed="0.000384"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:28.136792" elapsed="0.022250"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.167098" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:28.166782" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:28.175406" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:28.176214" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:28.176669" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:28.167259" elapsed="0.009463"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.177373" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.176974" elapsed="0.000462"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.181373" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;78000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;578000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;82000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;81000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;582000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;46000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;579000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;38000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;591000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;563000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;53000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;58000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;557000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.177671" elapsed="0.004677"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.184876" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:28.182454" elapsed="0.002489"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.182425" elapsed="0.002549"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:28.208240" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:28.208288" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:28.185190" elapsed="0.023122"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:28.210147" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:28.208391" elapsed="0.001813"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.208371" elapsed="0.001858"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:28.210262" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:54:28.210459" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:28.210503" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 232 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:28.166404" elapsed="0.044122"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.212667" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:28.211096" elapsed="0.001616"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.211061" elapsed="0.001673"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.213308" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.212883" elapsed="0.000453"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.213862" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.213511" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:28.213939" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:28.214132" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:28.210746" elapsed="0.003411"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:28.214314" elapsed="0.000386"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:28.165769" elapsed="0.048995"/>
</kw>
<arg>f109.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:28.118858" elapsed="0.095964"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:28.111644" elapsed="0.103295"/>
</test>
<test id="s1-s3-s2-t89" name="Test Is Flow 110 Updated" line="235">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:28.226272" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f110.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f110.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:28.226425" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:28.226130" elapsed="0.000324"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:28.227021" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc090400&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:28.226606" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:28.227507" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:28.227228" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:28.227955" level="INFO">${flow_id} = 233</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:28.227685" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:28.228419" level="INFO">${flow_priority} = 110</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:28.228148" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:28.229293" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:28.228596" elapsed="0.000728"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.229828" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.229483" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.230417" level="INFO">${flow_id} = 233</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.230086" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.230944" level="INFO">${flow_priority} = 110</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.230615" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.231474" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.231156" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.231996" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.231674" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.232537" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc090400&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.232212" elapsed="0.000367"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:28.225783" elapsed="0.006852"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.233188" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.232787" elapsed="0.000431"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.233644" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;110&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;110&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.233371" elapsed="0.000334"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.241556" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:28.241222" elapsed="0.000363"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:28.247238" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=233?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=233?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:28.247452" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=233?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:28.247552" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:28.241716" elapsed="0.005862"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.248007" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.247738" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.250349" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.248217" elapsed="0.002222"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:28.253039" elapsed="0.000061"/>
</return>
<status status="PASS" start="2026-05-25T01:54:28.250553" elapsed="0.002602"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.250524" elapsed="0.002667"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:28.253439" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:28.253812" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:28.253610" elapsed="0.000280"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:28.253583" elapsed="0.000340"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.253969" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:28.256269" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:28.256338" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 233 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:28.240890" elapsed="0.015482"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.259147" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:28.257164" elapsed="0.002028"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.257138" elapsed="0.002077"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.259757" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.259362" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.260315" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.259946" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:28.260390" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:28.260565" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:28.256667" elapsed="0.003922"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:28.260745" elapsed="0.000401"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:28.240334" elapsed="0.020877"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.268877" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:28.268580" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:28.276906" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:28.277464" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:28.277758" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:28.269035" elapsed="0.008749"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.278446" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.278191" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.281177" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;78000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;578000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;82000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;81000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;582000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;46000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;579000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;38000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;591000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;563000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;53000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;58000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;557000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.278636" elapsed="0.003214"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.284282" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:28.281923" elapsed="0.002426"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.281903" elapsed="0.002476"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:28.353188" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:28.353260" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:28.284576" elapsed="0.068714"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:28.355407" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:28.353431" elapsed="0.002038"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.353398" elapsed="0.002158"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:28.355602" elapsed="0.000048"/>
</return>
<msg time="2026-05-25T01:54:28.355848" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:28.355893" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 233 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:28.268206" elapsed="0.087709"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.358202" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:28.356550" elapsed="0.001698"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.356531" elapsed="0.001739"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.358904" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.358424" elapsed="0.000508"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.359466" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.359112" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:28.359543" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:28.359721" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:28.356184" elapsed="0.003562"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:28.359904" elapsed="0.000427"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:28.267580" elapsed="0.092816"/>
</kw>
<arg>f110.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:28.222540" elapsed="0.137915"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:28.215148" elapsed="0.145432"/>
</test>
<test id="s1-s3-s2-t90" name="Test Is Flow 113 Updated" line="237">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:28.371563" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f113.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f113.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:28.371798" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:28.371420" elapsed="0.000408"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:28.372458" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4e6390&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:28.371982" elapsed="0.000505"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:28.372927" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:28.372642" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:28.373393" level="INFO">${flow_id} = 236</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:28.373122" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:28.373893" level="INFO">${flow_priority} = 113</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:28.373569" elapsed="0.000350"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:28.374945" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:28.374087" elapsed="0.000899"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.375815" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.375215" elapsed="0.000645"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.376429" level="INFO">${flow_id} = 236</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.376100" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.376949" level="INFO">${flow_priority} = 113</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.376625" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.377470" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.377156" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.378043" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.377717" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.378583" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4e6390&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.378259" elapsed="0.000366"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:28.371085" elapsed="0.007595"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.379224" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.378827" elapsed="0.000427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.379649" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;113&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;113&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.379406" elapsed="0.000309"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.387886" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:28.387533" elapsed="0.000382"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:28.393271" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=236?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=236?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:28.393504" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=236?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:28.393646" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:28.388049" elapsed="0.005629"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.394146" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.393856" elapsed="0.000336"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.397272" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.394372" elapsed="0.002978"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:28.400222" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-05-25T01:54:28.397515" elapsed="0.002804"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.397482" elapsed="0.002873"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:28.400556" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:28.400890" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:28.400688" elapsed="0.000280"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:28.400664" elapsed="0.000337"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.401047" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:54:28.403143" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:28.403190" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 236 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:28.387132" elapsed="0.016081"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.405332" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:28.403755" elapsed="0.001623"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.403737" elapsed="0.001662"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.405963" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.405544" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.406516" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.406169" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:28.406591" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:28.406766" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:28.403426" elapsed="0.003365"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:28.406947" elapsed="0.000410"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:28.386348" elapsed="0.021073"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.415175" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:28.414863" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:28.428580" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:28.429843" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pri... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:28.430505" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:28.415333" elapsed="0.015235"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.431882" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.430928" elapsed="0.001059"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.437759" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;564000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;68000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;570000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;567000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;69000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;66000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;572000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;575000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;74000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;78000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;578000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;581000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;554000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;82000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;81000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;582000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;46000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;579000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;4&lt;/second&gt;&lt;nanosecond&gt;547000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;586000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;51000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;551000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;38000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;550000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;591000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;563000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;130000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;53000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;58000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;557000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;559000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;60000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;558000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;49000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.432346" elapsed="0.006575"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.441458" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:28.439022" elapsed="0.002503"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.438994" elapsed="0.002562"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:28.464556" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:28.464615" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:28.441768" elapsed="0.022871"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:28.466489" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:28.464722" elapsed="0.001824"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.464701" elapsed="0.001869"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:28.466603" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:54:28.466799" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:28.466844" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 236 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:28.414489" elapsed="0.052377"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.469002" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:28.467435" elapsed="0.001612"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.467417" elapsed="0.001665"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.469664" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.469233" elapsed="0.000460"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.470232" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.469864" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:28.470308" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:28.470485" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:28.467098" elapsed="0.003412"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:28.470668" elapsed="0.000390"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:28.413857" elapsed="0.057281"/>
</kw>
<arg>f113.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:28.367824" elapsed="0.103373"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:28.360907" elapsed="0.110412"/>
</test>
<test id="s1-s3-s2-t91" name="Test Is Flow 201 Updated" line="239">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:28.482338" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f201.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f201.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:28.482487" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:28.482193" elapsed="0.000323"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:28.483105" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d4ae0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:28.482667" elapsed="0.000467"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:28.483568" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:28.483287" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:28.484014" level="INFO">${flow_id} = 324</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:28.483745" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:28.484474" level="INFO">${flow_priority} = 201</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:28.484205" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:28.485362" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:28.484651" elapsed="0.000742"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.485916" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.485548" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.486496" level="INFO">${flow_id} = 324</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.486170" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.487014" level="INFO">${flow_priority} = 201</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.486690" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.487538" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.487222" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.488054" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.487734" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.488587" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d4ae0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.488268" elapsed="0.000360"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:28.481847" elapsed="0.006836"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.489234" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.488831" elapsed="0.000433"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.489673" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;201&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;201&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.489415" elapsed="0.000320"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.499312" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:28.498994" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:28.506098" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=324?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=324?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:28.506306" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=324?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:28.506415" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:28.499469" elapsed="0.006972"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.506856" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.506602" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.509095" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.507048" elapsed="0.002100"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:28.511321" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-05-25T01:54:28.509219" elapsed="0.002194"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.509198" elapsed="0.002292"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:28.511694" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:28.512008" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:28.511820" elapsed="0.000280"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:28.511797" elapsed="0.000337"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.512180" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:28.514456" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:28.514520" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 324 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:28.498680" elapsed="0.015873"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.517514" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:28.515331" elapsed="0.002246"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.515307" elapsed="0.002301"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.518442" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.517848" elapsed="0.000627"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.519010" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.518640" elapsed="0.000406"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:28.519124" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:54:28.519308" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:28.514843" elapsed="0.004490"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:28.519489" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:28.498129" elapsed="0.021806"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.527590" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:28.527296" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:28.535261" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:28.540161" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;94000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;95000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;599000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;598000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;100000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pr... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:28.540559" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:28.527747" elapsed="0.012848"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.541196" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.540819" elapsed="0.000440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.544345" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;94000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;95000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;599000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;598000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;100000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;603000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;104000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;604000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;110000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;606000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;607000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;105000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;108000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;107000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;608000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;115000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;576000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;605000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;112000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;118000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;576000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;589000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;32&lt;/second&gt;&lt;nanosecond&gt;156000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;583000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;83000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;75000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.541461" elapsed="0.003538"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.546902" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:28.545086" elapsed="0.001865"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.545051" elapsed="0.001924"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:28.567849" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:28.567896" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:28.547131" elapsed="0.020788"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:28.569737" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:28.567998" elapsed="0.001797"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.567979" elapsed="0.001839"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:28.569853" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:28.570048" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:28.570109" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 324 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:28.526909" elapsed="0.043224"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.572301" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:28.570683" elapsed="0.001662"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.570664" elapsed="0.001703"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.572919" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.572513" elapsed="0.000433"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.573475" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.573124" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:28.573551" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:28.573841" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:28.570350" elapsed="0.003524"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:28.574048" elapsed="0.000426"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:28.526304" elapsed="0.048233"/>
</kw>
<arg>f201.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:28.478586" elapsed="0.096006"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:28.471623" elapsed="0.103099"/>
</test>
<test id="s1-s3-s2-t92" name="Test Is Flow 202 Updated" line="241">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:28.585671" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f202.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f202.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:28.585862" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:28.585531" elapsed="0.000361"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:28.586485" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d4220&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:28.586045" elapsed="0.000468"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:28.586945" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:28.586667" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:28.587424" level="INFO">${flow_id} = 325</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:28.587152" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:28.587872" level="INFO">${flow_priority} = 202</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:28.587600" elapsed="0.000305"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:28.588807" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:28.588084" elapsed="0.000754"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.589347" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.588996" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.589942" level="INFO">${flow_id} = 325</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.589585" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.590483" level="INFO">${flow_priority} = 202</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.590154" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.591013" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.590676" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.591572" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.591229" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.592125" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d4220&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.591773" elapsed="0.000397"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:28.585198" elapsed="0.007029"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.592787" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.592380" elapsed="0.000438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.593260" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;202&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;202&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.592977" elapsed="0.000345"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.601352" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:28.601035" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:28.607645" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=325?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=325?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:28.607850" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=325?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:28.607949" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:28.601511" elapsed="0.006464"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.608439" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.608175" elapsed="0.000312"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.611002" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.608637" elapsed="0.002461"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:28.613742" elapsed="0.000047"/>
</return>
<status status="PASS" start="2026-05-25T01:54:28.611204" elapsed="0.002639"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.611174" elapsed="0.002749"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:28.614156" elapsed="0.000033"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:28.614487" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:28.614291" elapsed="0.000276"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:28.614266" elapsed="0.000344"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.614659" elapsed="0.000021"/>
</return>
<msg time="2026-05-25T01:54:28.616989" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:28.617053" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 325 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:28.600722" elapsed="0.016386"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.619714" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:28.617934" elapsed="0.001827"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.617904" elapsed="0.001879"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.620387" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.619933" elapsed="0.000482"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.620937" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.620584" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:28.621014" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:54:28.621212" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:28.617411" elapsed="0.003828"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:28.621398" elapsed="0.000406"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:28.600165" elapsed="0.021704"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.629905" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:28.629553" elapsed="0.000379"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:28.639208" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:28.639958" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;94000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;95000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;599000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;598000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;100000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pr... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:28.640389" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:28.630079" elapsed="0.010348"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.641012" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.640655" elapsed="0.000441"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.644909" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;94000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;95000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;599000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;598000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;100000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;603000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;104000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;604000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;110000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;606000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;607000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;105000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;108000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;107000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;608000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;115000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;576000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;605000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;112000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;118000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;576000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;589000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;32&lt;/second&gt;&lt;nanosecond&gt;156000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;583000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;83000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;75000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.641307" elapsed="0.004570"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.648436" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:28.645982" elapsed="0.002522"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.645954" elapsed="0.002582"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:28.671672" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:28.671727" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:28.648729" elapsed="0.023021"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:28.673534" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:28.671829" elapsed="0.001761"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.671810" elapsed="0.001805"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:28.673648" elapsed="0.000034"/>
</return>
<msg time="2026-05-25T01:54:28.673877" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:28.673922" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 325 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:28.629156" elapsed="0.044789"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.676091" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:28.674517" elapsed="0.001621"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.674498" elapsed="0.001662"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.676718" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.676309" elapsed="0.000436"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.677274" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.676909" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:28.677351" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:28.677527" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:28.674180" elapsed="0.003372"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:28.677709" elapsed="0.000423"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:28.628489" elapsed="0.049706"/>
</kw>
<arg>f202.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:28.581912" elapsed="0.096338"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:28.575056" elapsed="0.103314"/>
</test>
<test id="s1-s3-s2-t93" name="Test Is Flow 203 Updated" line="243">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:28.689526" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f203.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f203.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:28.689677" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:28.689383" elapsed="0.000325"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:28.690394" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4d8900&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:28.689931" elapsed="0.000491"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:28.690861" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:28.690577" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:28.691333" level="INFO">${flow_id} = 326</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:28.691043" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:28.691791" level="INFO">${flow_priority} = 203</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:28.691508" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:28.692669" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:28.691965" elapsed="0.000734"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.693202" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.692855" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.693778" level="INFO">${flow_id} = 326</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.693439" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.694320" level="INFO">${flow_priority} = 203</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.693974" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.694824" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.694513" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.695353" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.695020" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.695871" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4d8900&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.695549" elapsed="0.000363"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:28.689033" elapsed="0.006934"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.696515" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.696134" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.696936" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;203&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;203&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.696696" elapsed="0.000302"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.704816" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:28.704515" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:28.710011" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=326?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=326?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:28.710238" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=326?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:28.710338" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:28.704973" elapsed="0.005391"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.710775" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.710521" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.713007" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.710963" elapsed="0.002096"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:28.715190" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:54:28.713146" elapsed="0.002135"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.713125" elapsed="0.002236"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:28.715564" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:28.715884" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:28.715691" elapsed="0.000264"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:28.715668" elapsed="0.000319"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.716032" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:28.718319" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:28.718382" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 326 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:28.704198" elapsed="0.014217"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.721378" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:28.719187" elapsed="0.002255"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.719161" elapsed="0.002311"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.722332" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.721685" elapsed="0.000681"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.722890" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.722541" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:28.722966" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:28.723160" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:28.718705" elapsed="0.004481"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:28.723341" elapsed="0.000379"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:28.703625" elapsed="0.020159"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.731512" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:28.731215" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:28.738496" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:28.739253" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;94000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;95000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;599000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;598000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;100000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pr... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:28.739639" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:28.731675" elapsed="0.008000"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.740284" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.739904" elapsed="0.000446"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.744117" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;94000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;95000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;599000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;598000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;100000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;603000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;104000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;604000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;110000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;606000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;607000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;105000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;108000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;107000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;608000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;115000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;576000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;605000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;112000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;118000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;576000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;589000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;32&lt;/second&gt;&lt;nanosecond&gt;156000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;583000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;83000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;75000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.740552" elapsed="0.004470"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.747596" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:28.745142" elapsed="0.002522"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.745113" elapsed="0.002582"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:28.766988" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:28.767035" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:28.747890" elapsed="0.019168"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:28.768874" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:28.767151" elapsed="0.001778"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.767131" elapsed="0.001822"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:28.768986" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:28.769200" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:28.769244" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 326 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:28.730825" elapsed="0.038442"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.771447" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:28.769847" elapsed="0.001645"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.769816" elapsed="0.001698"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.772084" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.771663" elapsed="0.000450"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.772627" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.772277" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:28.772702" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:28.772880" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:28.769481" elapsed="0.003424"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:28.773061" elapsed="0.000398"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:28.730210" elapsed="0.043312"/>
</kw>
<arg>f203.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:28.685637" elapsed="0.087941"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:28.678662" elapsed="0.095031"/>
</test>
<test id="s1-s3-s2-t94" name="Test Is Flow 204 Updated" line="245">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:28.784604" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f204.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f204.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:28.784738" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:28.784467" elapsed="0.000299"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:28.785350" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bca90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:28.784917" elapsed="0.000461"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:28.785832" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:28.785530" elapsed="0.000336"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:28.786308" level="INFO">${flow_id} = 327</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:28.786019" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:28.786753" level="INFO">${flow_priority} = 204</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:28.786484" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:28.787638" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:28.786927" elapsed="0.000742"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.788180" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.787833" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.788757" level="INFO">${flow_id} = 327</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.788427" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.789299" level="INFO">${flow_priority} = 204</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.788954" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.789845" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.789493" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.790389" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.790049" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.790907" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4bca90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.790586" elapsed="0.000362"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:28.784139" elapsed="0.006863"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.791548" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.791167" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.791968" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;204&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;204&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.791729" elapsed="0.000299"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.801585" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:28.801285" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:28.807029" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=327?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=327?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:28.807244" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=327?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:28.807405" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:28.801741" elapsed="0.005708"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.808029" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.807670" elapsed="0.000444"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.811204" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.808320" elapsed="0.002956"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:28.813788" elapsed="0.000052"/>
</return>
<status status="PASS" start="2026-05-25T01:54:28.811374" elapsed="0.002519"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.811345" elapsed="0.002821"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:28.814378" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:28.814692" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:28.814506" elapsed="0.000256"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:28.814483" elapsed="0.000310"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.814838" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:54:28.817193" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:28.817258" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 327 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:28.800949" elapsed="0.016341"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.819806" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:28.818115" elapsed="0.001740"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.818087" elapsed="0.001790"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.820573" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.820024" elapsed="0.000576"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.821131" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.820764" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:28.821207" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:28.821387" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:28.817582" elapsed="0.003830"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:28.821568" elapsed="0.000406"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:28.800393" elapsed="0.021645"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.829743" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:28.829449" elapsed="0.000320"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:28.838268" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:28.838991" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;94000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;95000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;599000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;598000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;100000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pr... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:28.839418" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:28.829910" elapsed="0.009546"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.840029" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.839677" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.843895" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;94000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;95000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;599000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;598000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;100000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;603000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;104000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;604000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;110000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;606000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;607000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;105000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;108000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;107000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;608000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;115000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;576000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;605000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;112000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;118000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;576000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;589000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;32&lt;/second&gt;&lt;nanosecond&gt;156000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;583000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;83000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;75000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.840314" elapsed="0.004504"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.847379" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:28.844919" elapsed="0.002528"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.844892" elapsed="0.002587"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:28.866298" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:28.866345" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:28.847673" elapsed="0.018699"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:28.868185" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:28.866452" elapsed="0.001790"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.866433" elapsed="0.001833"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:28.868299" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:54:28.868494" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:28.868538" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 327 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:28.829057" elapsed="0.039503"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.870711" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:28.869118" elapsed="0.001639"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.869099" elapsed="0.001679"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.871343" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.870926" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.871894" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.871535" elapsed="0.000385"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:28.871971" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:28.872166" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:28.868774" elapsed="0.003418"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:28.872350" elapsed="0.000383"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:28.828451" elapsed="0.044345"/>
</kw>
<arg>f204.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:28.780856" elapsed="0.091997"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:28.773981" elapsed="0.098986"/>
</test>
<test id="s1-s3-s2-t95" name="Test Is Flow 205 Updated" line="247">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:28.883811" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f205.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f205.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:28.883967" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:28.883674" elapsed="0.000322"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:28.884589" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc358f90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:28.884164" elapsed="0.000453"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:28.885048" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:28.884771" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:28.885513" level="INFO">${flow_id} = 328</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:28.885242" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:28.885980" level="INFO">${flow_priority} = 205</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:28.885689" elapsed="0.000317"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:28.886921" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:28.886178" elapsed="0.000774"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.887463" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.887125" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.888027" level="INFO">${flow_id} = 328</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.887699" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.888572" level="INFO">${flow_priority} = 205</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.888242" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.889098" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.888767" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.889619" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.889297" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.890170" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc358f90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.889815" elapsed="0.000398"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:28.883345" elapsed="0.006925"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.890800" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.890421" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.891246" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;328&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;205&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;
    &lt;priority&gt;205&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.890981" elapsed="0.000334"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.899141" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:28.898825" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:28.905636" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=328?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=328?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:28.905848" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=328?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:28.905972" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:28.899299" elapsed="0.006699"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.906427" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.906174" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.909385" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.906615" elapsed="0.002841"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:28.912043" elapsed="0.000056"/>
</return>
<status status="PASS" start="2026-05-25T01:54:28.909601" elapsed="0.002552"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.909572" elapsed="0.002615"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:28.912385" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:28.912700" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:28.912512" elapsed="0.000259"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:28.912489" elapsed="0.000314"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.912848" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:28.914945" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:28.914991" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 328 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:28.898510" elapsed="0.016504"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.917164" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:28.915580" elapsed="0.001630"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.915562" elapsed="0.001670"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.917772" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.917378" elapsed="0.000421"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.918344" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.917976" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:28.918421" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:28.918596" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:28.915248" elapsed="0.003373"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:28.918776" elapsed="0.000403"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:28.897941" elapsed="0.021301"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.927154" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:28.926840" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:28.936385" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:28.936913" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;94000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;95000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;599000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;598000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;100000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pr... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:28.937217" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:28.927311" elapsed="0.009933"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.937662" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.937410" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.943149" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;94000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;95000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;599000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;598000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;100000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;603000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;104000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;604000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;110000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;606000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;607000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;105000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;108000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;107000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;608000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;115000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;576000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;605000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;112000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;118000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;576000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;589000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;32&lt;/second&gt;&lt;nanosecond&gt;156000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;583000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;83000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;75000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.937849" elapsed="0.006752"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.947440" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:28.944764" elapsed="0.002724"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.944719" elapsed="0.002791"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:28.968812" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:28.968859" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:28.947649" elapsed="0.021234"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:28.970683" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:28.968961" elapsed="0.001778"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.968942" elapsed="0.001821"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:28.970796" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:28.970988" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:28.971031" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 328 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:28.926463" elapsed="0.044591"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:28.973322" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:28.971742" elapsed="0.001625"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:28.971723" elapsed="0.001665"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.973955" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.973535" elapsed="0.000451"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.974518" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.974164" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:28.974595" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:28.974773" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:28.971374" elapsed="0.003424"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:28.974954" elapsed="0.000404"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:28.925669" elapsed="0.049752"/>
</kw>
<arg>f205.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:28.880082" elapsed="0.095396"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:28.873247" elapsed="0.102345"/>
</test>
<test id="s1-s3-s2-t96" name="Test Is Flow 206 Updated" line="249">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:28.986519" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f206.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f206.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:28.986656" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:28.986383" elapsed="0.000303"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:28.987279" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4beb60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:28.986838" elapsed="0.000469"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:28.987771" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:28.987461" elapsed="0.000337"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:28.988238" level="INFO">${flow_id} = 329</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:28.987951" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:28.988682" level="INFO">${flow_priority} = 206</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:28.988414" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:28.989624" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:28.988857" elapsed="0.000797"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.990175" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.989811" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.990738" level="INFO">${flow_id} = 329</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.990411" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.991274" level="INFO">${flow_priority} = 206</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.990933" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.991785" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.991468" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.992315" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.991979" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.992829" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4beb60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:28.992511" elapsed="0.000360"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:28.986040" elapsed="0.006886"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.993471" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:28.993090" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:28.994127" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;329&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;206&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;
    &lt;priority&gt;206&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:28.993653" elapsed="0.000542"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.001780" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:29.001484" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:29.008530" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=329?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=329?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:29.008740" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=329?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:29.008838" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:29.001960" elapsed="0.006904"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.009305" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:29.009023" elapsed="0.000327"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.012155" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:29.009494" elapsed="0.002734"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:29.014804" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:54:29.012368" elapsed="0.002526"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:29.012339" elapsed="0.002590"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:29.015148" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:29.015470" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:29.015278" elapsed="0.000263"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:29.015255" elapsed="0.000317"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:29.015617" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:54:29.017870" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:29.017964" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 329 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:29.001165" elapsed="0.016833"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:29.020252" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:29.018676" elapsed="0.001627"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:29.018658" elapsed="0.001667"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.020866" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:29.020471" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.021417" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:29.021053" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:29.021493" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:29.021669" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:29.018333" elapsed="0.003361"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:29.021848" elapsed="0.000411"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:29.000591" elapsed="0.021733"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.030041" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:29.029733" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:29.039330" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:29.040051" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;94000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;95000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;599000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;598000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;100000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pr... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:29.040460" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:29.030213" elapsed="0.010284"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.041093" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:29.040718" elapsed="0.000442"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.045162" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;94000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;95000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;599000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;598000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;100000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;603000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;104000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;604000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;110000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;606000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;607000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;105000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;108000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;107000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;608000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;115000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;576000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;605000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;112000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;118000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;576000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;589000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;32&lt;/second&gt;&lt;nanosecond&gt;156000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;583000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;83000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;75000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:29.041361" elapsed="0.004750"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:29.048641" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:29.046213" elapsed="0.002494"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:29.046185" elapsed="0.002553"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:29.068932" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:29.068979" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:29.048931" elapsed="0.020073"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:29.070813" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:29.069097" elapsed="0.001772"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:29.069063" elapsed="0.001830"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:29.070926" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:29.071138" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:29.071182" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 329 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:29.029359" elapsed="0.041846"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:29.073338" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:29.071753" elapsed="0.001630"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:29.071734" elapsed="0.001671"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.073984" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:29.073552" elapsed="0.000465"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.074560" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:29.074198" elapsed="0.000388"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:29.074636" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:29.074814" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:29.071423" elapsed="0.003416"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:29.074994" elapsed="0.000402"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:29.028735" elapsed="0.046725"/>
</kw>
<arg>f206.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:28.982785" elapsed="0.092732"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:28.975863" elapsed="0.099765"/>
</test>
<test id="s1-s3-s2-t97" name="Test Is Flow 209 Updated" line="251">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:29.086422" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f209.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f209.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:29.086552" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;co...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:29.086288" elapsed="0.000293"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:29.087164" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc388fe0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:29.086732" elapsed="0.000459"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:29.087621" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:29.087344" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:29.088088" level="INFO">${flow_id} = 332</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:29.087803" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:29.088536" level="INFO">${flow_priority} = 209</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:29.088267" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:29.089439" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/co...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:29.088711" elapsed="0.000758"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.089995" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.089627" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.090601" level="INFO">${flow_id} = 332</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.090268" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.091142" level="INFO">${flow_priority} = 209</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.090797" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.091652" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;co...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.091338" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.092183" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/co...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.091848" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.092706" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc388fe0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.092382" elapsed="0.000366"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:29.085932" elapsed="0.006871"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.093352" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/co...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:29.092953" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.093775" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;209&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;209&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:29.093534" elapsed="0.000303"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.103225" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:29.102911" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:29.108883" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=332?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=332?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:29.109097" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=332?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:29.109206" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:29.103382" elapsed="0.005850"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.109830" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:29.109466" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.112950" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:29.110132" elapsed="0.002890"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:29.115579" elapsed="0.000038"/>
</return>
<status status="PASS" start="2026-05-25T01:54:29.113141" elapsed="0.002568"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:29.113112" elapsed="0.002635"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:29.115942" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:29.116283" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:29.116093" elapsed="0.000262"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:29.116045" elapsed="0.000342"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:29.116431" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:54:29.118658" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:29.118703" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 332 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:29.102596" elapsed="0.016130"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:29.120848" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:29.119286" elapsed="0.001607"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:29.119267" elapsed="0.001648"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.121477" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:29.121060" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.122042" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:29.121665" elapsed="0.000418"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:29.122136" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:54:29.122314" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:29.118936" elapsed="0.003403"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:29.122495" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:29.102027" elapsed="0.020913"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.130671" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:29.130377" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:29.138578" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:29.139329" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;94000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;95000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;599000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;598000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;100000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pr... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:29.139722" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:29.130826" elapsed="0.008933"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.140355" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:29.139978" elapsed="0.000440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.144175" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;94000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;95000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;599000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;598000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;100000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;603000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;104000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;604000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;110000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;606000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;607000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;105000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;108000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;107000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;608000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;115000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;576000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;605000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;112000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;118000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;576000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;589000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;32&lt;/second&gt;&lt;nanosecond&gt;156000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;583000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;83000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;75000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:29.140617" elapsed="0.004469"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:29.147657" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:29.145189" elapsed="0.002535"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:29.145160" elapsed="0.002595"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:29.168603" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:29.168650" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:29.147948" elapsed="0.020724"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:29.170493" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:29.168750" elapsed="0.001799"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:29.168731" elapsed="0.001842"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:29.170604" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:29.170796" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:29.170839" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 332 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:29.129982" elapsed="0.040879"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:29.173007" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:29.171428" elapsed="0.001624"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:29.171410" elapsed="0.001678"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.173640" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:29.173239" elapsed="0.000428"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.174225" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:29.173832" elapsed="0.000419"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:29.174302" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:29.174479" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:29.171090" elapsed="0.003415"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:29.174661" elapsed="0.000400"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:29.129362" elapsed="0.045779"/>
</kw>
<arg>f209.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:29.082711" elapsed="0.092488"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:29.075887" elapsed="0.099423"/>
</test>
<test id="s1-s3-s2-t98" name="Test Is Flow 214 Updated" line="253">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:29.186211" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f214.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f214.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:29.186344" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:29.186056" elapsed="0.000317"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:29.186927" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc389940&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:29.186525" elapsed="0.000430"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:29.187408" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:29.187124" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:29.187854" level="INFO">${flow_id} = 337</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:29.187586" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:29.188376" level="INFO">${flow_priority} = 214</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:29.188030" elapsed="0.000373"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:29.189218" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:29.188554" elapsed="0.000695"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.189734" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.189405" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.190352" level="INFO">${flow_id} = 337</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.189965" elapsed="0.000429"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.190874" level="INFO">${flow_priority} = 214</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.190548" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.191397" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.191082" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.191910" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.191593" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.192440" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc389940&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.192120" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:29.185705" elapsed="0.006831"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.193081" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:29.192685" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.193506" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;214&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;214&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
		&lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
	    &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:29.193264" elapsed="0.000301"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.201415" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:29.201118" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:29.207591" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=337?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=337?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:29.207783" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=337?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:29.207881" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:29.201572" elapsed="0.006334"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.208396" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:29.208085" elapsed="0.000382"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.211521" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:29.208666" elapsed="0.002926"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:29.214137" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:54:29.211689" elapsed="0.002538"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:29.211661" elapsed="0.002600"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:29.214458" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:29.214819" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:29.214630" elapsed="0.000262"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:29.214605" elapsed="0.000319"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:29.214968" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:29.217253" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:29.217316" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 337 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:29.200788" elapsed="0.016561"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:29.219793" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:29.218180" elapsed="0.001658"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:29.218154" elapsed="0.001706"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.220418" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:29.220006" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.220952" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:29.220606" elapsed="0.000371"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:29.221027" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:29.221222" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:29.217641" elapsed="0.003606"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:29.221403" elapsed="0.000380"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:29.200231" elapsed="0.021615"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.229567" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:29.229271" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:29.237629" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:29.238203" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;94000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;95000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;599000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;598000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;100000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pr... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:29.238757" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:29.229722" elapsed="0.009094"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.239777" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:29.239205" elapsed="0.000674"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.245983" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;94000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;95000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;599000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;598000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;100000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;603000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;104000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;604000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;110000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;606000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;607000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;105000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;108000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;107000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;608000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;115000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;576000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;605000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;112000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;118000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;576000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;589000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;32&lt;/second&gt;&lt;nanosecond&gt;156000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;583000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;83000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;75000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:29.240234" elapsed="0.006632"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:29.248711" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:29.246938" elapsed="0.001821"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:29.246918" elapsed="0.001863"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:29.269967" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:29.270013" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:29.248921" elapsed="0.021116"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:29.271836" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:29.270139" elapsed="0.001753"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:29.270119" elapsed="0.001796"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:29.271948" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:29.272157" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:29.272200" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 337 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:29.228880" elapsed="0.043343"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:29.274376" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:29.272772" elapsed="0.001650"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:29.272754" elapsed="0.001690"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.274996" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:29.274590" elapsed="0.000434"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.275560" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:29.275203" elapsed="0.000383"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:29.275636" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:29.275813" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:29.272441" elapsed="0.003397"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:29.275993" elapsed="0.000401"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:29.228272" elapsed="0.048184"/>
</kw>
<arg>f214.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:29.182470" elapsed="0.094043"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:29.175559" elapsed="0.101064"/>
</test>
<test id="s1-s3-s2-t99" name="Test Is Flow 218 Updated" line="255">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:29.287414" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f218.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f218.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:29.287545" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:29.287278" elapsed="0.000296"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:29.288127" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc389120&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:29.287725" elapsed="0.000430"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:29.288590" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:29.288313" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:29.289037" level="INFO">${flow_id} = 341</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:29.288768" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:29.289499" level="INFO">${flow_priority} = 218</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:29.289230" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:29.290326" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:29.289673" elapsed="0.000684"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.290853" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.290521" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.291430" level="INFO">${flow_id} = 341</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.291101" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.291957" level="INFO">${flow_priority} = 218</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.291624" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.292479" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.292165" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.292992" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.292674" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.293523" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc389120&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.293203" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:29.286938" elapsed="0.006681"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.294189" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:29.293768" elapsed="0.000452"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.294625" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;go-to-table&gt;
                &lt;table_id&gt;3&lt;/table_id&gt;
            &lt;/go-to-table&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;341&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-mask&gt;0xfff0&lt;/tunnel-mask&gt;
            &lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
    &lt;cookie&gt;218&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;
    &lt;priority&gt;218&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:29.294377" elapsed="0.000304"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.302470" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:29.302166" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:29.307820" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=341?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=341?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:29.308024" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=341?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:29.308145" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:29.302626" elapsed="0.005544"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.308581" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:29.308331" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.311049" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:29.308768" elapsed="0.002374"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:29.313649" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:54:29.311240" elapsed="0.002499"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:29.311213" elapsed="0.002559"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:29.313968" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:29.314327" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:29.314136" elapsed="0.000305"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:29.314110" elapsed="0.000365"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:29.314520" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:29.316783" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:29.316845" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 341 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:29.301803" elapsed="0.015074"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:29.319434" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:29.317647" elapsed="0.001832"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:29.317622" elapsed="0.001879"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.320045" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:29.319647" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.320618" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:29.320253" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:29.320694" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:29.320873" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:29.317188" elapsed="0.003710"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:29.321054" elapsed="0.000398"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:29.301251" elapsed="0.020264"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.329210" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:29.328898" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:29.337472" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:29.338238" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;94000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;95000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;599000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;598000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;100000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pr... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:29.338633" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:29.329372" elapsed="0.009298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.339268" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:29.338891" elapsed="0.000440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.343100" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;94000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;95000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;599000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;598000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;100000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;603000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;104000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;604000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;110000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;606000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;607000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;105000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;108000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;107000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;608000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;115000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;576000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;605000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;112000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;118000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;576000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;589000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;32&lt;/second&gt;&lt;nanosecond&gt;156000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;583000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;83000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;75000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:29.339535" elapsed="0.004468"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:29.346585" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:29.344123" elapsed="0.002529"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:29.344093" elapsed="0.002590"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:29.369086" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:29.369135" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:29.346876" elapsed="0.022283"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:29.370955" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:29.369239" elapsed="0.001772"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:29.369219" elapsed="0.001816"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:29.371097" elapsed="0.000032"/>
</return>
<msg time="2026-05-25T01:54:29.371299" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:29.371342" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 341 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:29.328524" elapsed="0.042841"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:29.373572" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:29.371912" elapsed="0.001713"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:29.371894" elapsed="0.001756"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.374353" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:29.373842" elapsed="0.000543"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.374974" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:29.374575" elapsed="0.000430"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:29.375084" elapsed="0.000035"/>
</return>
<msg time="2026-05-25T01:54:29.375307" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:29.371580" elapsed="0.003757"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:29.375530" elapsed="0.000439"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:29.327898" elapsed="0.048141"/>
</kw>
<arg>f218.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:29.283707" elapsed="0.092417"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:29.276867" elapsed="0.099403"/>
</test>
<test id="s1-s3-s2-t100" name="Test Is Flow 219 Updated" line="257">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:29.388233" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f219.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f219.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:29.388389" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;c...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:29.388089" elapsed="0.000329"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:29.388990" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3f52b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:29.388571" elapsed="0.000447"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:29.389480" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:29.389191" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:29.389928" level="INFO">${flow_id} = 342</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:29.389659" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:29.390414" level="INFO">${flow_priority} = 219</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:29.390143" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:29.391266" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:29.390590" elapsed="0.000707"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.391784" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.391453" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.392366" level="INFO">${flow_id} = 342</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.392025" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.392883" level="INFO">${flow_priority} = 219</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.392559" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.393404" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;c...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.393088" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.393916" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.393599" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.394468" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3f52b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.394145" elapsed="0.000364"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:29.387743" elapsed="0.006821"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.395107" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:29.394712" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.395529" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
		&lt;/clear-actions&gt;
	&lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;342&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;10&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;219&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;
    &lt;priority&gt;219&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:29.395290" elapsed="0.000300"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.405292" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:29.404972" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:29.412060" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=342?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=342?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:29.412293" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=342?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:29.412402" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:29.405449" elapsed="0.006979"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.412838" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:29.412588" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.415138" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:29.413025" elapsed="0.002166"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:29.417830" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-05-25T01:54:29.415268" elapsed="0.002657"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:29.415241" elapsed="0.002720"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:29.418214" elapsed="0.000033"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:29.418600" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:29.418399" elapsed="0.000278"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:29.418373" elapsed="0.000338"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:29.418759" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:29.421177" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:29.421243" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 342 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:29.404657" elapsed="0.016620"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:29.424453" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:29.422091" elapsed="0.002429"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:29.422045" elapsed="0.002507"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.425376" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:29.424766" elapsed="0.000647"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.426173" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:29.425636" elapsed="0.000577"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:29.426288" elapsed="0.000046"/>
</return>
<msg time="2026-05-25T01:54:29.426541" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:29.421587" elapsed="0.004989"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:29.426793" elapsed="0.000536"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:29.404103" elapsed="0.023289"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.435105" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:29.434792" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:29.443691" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:29.444503" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;94000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;95000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;599000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;598000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;100000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pr... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:29.444916" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:29.435261" elapsed="0.009694"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.445580" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:29.445217" elapsed="0.000425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.449405" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;94000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;95000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;599000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;598000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;100000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;603000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;104000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;604000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;110000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;606000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;607000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;105000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;108000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;107000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;608000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;115000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;576000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;605000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;112000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;118000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;576000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;589000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;32&lt;/second&gt;&lt;nanosecond&gt;156000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;583000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;83000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;75000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:29.445841" elapsed="0.004495"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:29.452868" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:29.450437" elapsed="0.002497"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:29.450409" elapsed="0.002556"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:29.472134" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:29.472182" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:29.453178" elapsed="0.019027"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:29.473979" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:29.472282" elapsed="0.001753"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:29.472263" elapsed="0.001795"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:29.474107" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:54:29.474321" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:29.474364" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 342 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:29.434409" elapsed="0.039978"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:29.476508" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:29.474926" elapsed="0.001626"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:29.474908" elapsed="0.001666"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.477135" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:29.476720" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.477683" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:29.477331" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:29.477760" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:29.477935" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:29.474598" elapsed="0.003362"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:29.478137" elapsed="0.000412"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:29.433762" elapsed="0.044850"/>
</kw>
<arg>f219.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:29.384504" elapsed="0.094172"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:29.376588" elapsed="0.102199"/>
</test>
<test id="s1-s3-s2-t101" name="Test Is Flow 220 Updated" line="259">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:29.490547" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f220.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f220.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:29.490689" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:29.490410" elapsed="0.000307"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:29.491285" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3f7c40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:29.490871" elapsed="0.000442"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:29.491747" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:29.491468" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:29.492216" level="INFO">${flow_id} = 343</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:29.491929" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:29.492662" level="INFO">${flow_priority} = 220</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:29.492394" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:29.493439" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:29.492838" elapsed="0.000632"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.493956" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.493627" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.494564" level="INFO">${flow_id} = 343</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.494235" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.495099" level="INFO">${flow_priority} = 220</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.494758" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.495607" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.495295" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.496134" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.495803" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.496651" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3f7c40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.496332" elapsed="0.000367"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:29.490044" elapsed="0.006710"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.497299" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:29.496904" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.497721" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;write-metadata&gt;
                &lt;metadata-mask&gt;12&lt;/metadata-mask&gt;
                &lt;metadata&gt;10&lt;/metadata&gt;
            &lt;/write-metadata&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;343&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;220&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;
    &lt;priority&gt;220&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:29.497481" elapsed="0.000298"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.505590" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:29.505290" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:29.510058" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=343?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=343?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:29.510301" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=343?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:29.510400" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:29.505748" elapsed="0.004678"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.510840" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:29.510587" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.513833" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:29.511030" elapsed="0.002874"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:29.516505" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:54:29.514001" elapsed="0.002593"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:29.513973" elapsed="0.002655"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:29.516823" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:29.517204" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:29.516993" elapsed="0.000286"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:29.516968" elapsed="0.000344"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:29.517357" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:29.519615" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:29.519660" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 343 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:29.504960" elapsed="0.014723"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:29.521813" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:29.520241" elapsed="0.001617"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:29.520223" elapsed="0.001657"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.522457" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:29.522027" elapsed="0.000456"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.522995" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:29.522646" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:29.523086" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:54:29.523267" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:29.519892" elapsed="0.003401"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:29.523450" elapsed="0.000379"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:29.504406" elapsed="0.019488"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.531625" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:29.531329" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:29.539144" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:29.539810" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Transfer-Encoding': 'chunked'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;94000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;95000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;599000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;598000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;100000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;pr... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:54:29.540233" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:29.531781" elapsed="0.008494"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.540889" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:29.540536" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.544829" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-49&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;103&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;103&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;89000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-48&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;102&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;102&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;17&lt;/second&gt;&lt;nanosecond&gt;590000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-45&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;43&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;43&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;94000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-44&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;38&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;38&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;19&lt;/second&gt;&lt;nanosecond&gt;596000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-47&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;101&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;101&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-46&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;45&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;4293984255&lt;/metadata-mask&gt;&lt;metadata&gt;1180719718&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;45&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;18&lt;/second&gt;&lt;nanosecond&gt;593000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-41&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;25&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;58&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv6-match&gt;&lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;&lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;&lt;/icmpv6-match&gt;&lt;/match&gt;&lt;cookie&gt;25&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;95000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-40&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;24&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;24&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;21&lt;/second&gt;&lt;nanosecond&gt;599000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-43&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;36&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;36&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-42&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;31&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;31&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;20&lt;/second&gt;&lt;nanosecond&gt;598000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-38&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;601000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-37&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;100000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-39&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;22&lt;/second&gt;&lt;nanosecond&gt;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;18&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;&lt;/match&gt;&lt;cookie&gt;18&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;603000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-33&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;17&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;protocol-match-fields&gt;&lt;mpls-tc&gt;3&lt;/mpls-tc&gt;&lt;mpls-bos&gt;1&lt;/mpls-bos&gt;&lt;mpls-label&gt;567&lt;/mpls-label&gt;&lt;/protocol-match-fields&gt;&lt;/match&gt;&lt;cookie&gt;17&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;104000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-36&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;23&lt;/second&gt;&lt;nanosecond&gt;604000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-35&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;19&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;19&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;24&lt;/second&gt;&lt;nanosecond&gt;110000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-30&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;14&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:fc:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2054&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;arp-target-hardware-address&gt;&lt;address&gt;fe:dc:ba:98:76:54&lt;/address&gt;&lt;/arp-target-hardware-address&gt;&lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;&lt;arp-op&gt;1&lt;/arp-op&gt;&lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;&lt;arp-source-hardware-address&gt;&lt;address&gt;12:34:56:78:98:ab&lt;/address&gt;&lt;/arp-source-hardware-address&gt;&lt;/match&gt;&lt;cookie&gt;14&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;606000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-32&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;16&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;16&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;25&lt;/second&gt;&lt;nanosecond&gt;607000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-31&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;15&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;78&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;15&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;26&lt;/second&gt;&lt;nanosecond&gt;105000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-61&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;204&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;204&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-60&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;203&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;183&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;203&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;11&lt;/second&gt;&lt;nanosecond&gt;580000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-27&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;9&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;108000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-26&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;8&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:00&lt;/address&gt;&lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;2&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;8&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;28&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-29&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;11&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;1&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;27&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;icmpv4-match&gt;&lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;&lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;&lt;/icmpv4-match&gt;&lt;/match&gt;&lt;cookie&gt;11&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;107000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-28&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;10&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;27&lt;/second&gt;&lt;nanosecond&gt;608000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-67&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;219&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;vlan-match&gt;&lt;vlan-id&gt;&lt;vlan-id&gt;10&lt;/vlan-id&gt;&lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;&lt;/vlan-id&gt;&lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;&lt;/vlan-match&gt;&lt;/match&gt;&lt;cookie&gt;219&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;clear-actions/&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;72000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-23&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;5&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;/match&gt;&lt;cookie&gt;5&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;115000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-66&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;218&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;tunnel&gt;&lt;tunnel-mask&gt;65520&lt;/tunnel-mask&gt;&lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;&lt;/tunnel&gt;&lt;/match&gt;&lt;cookie&gt;218&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;go-to-table&gt;&lt;table_id&gt;3&lt;/table_id&gt;&lt;/go-to-table&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;8&lt;/second&gt;&lt;nanosecond&gt;576000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-22&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;4&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;34887&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;4&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;30&lt;/second&gt;&lt;nanosecond&gt;605000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-25&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;7&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;15&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;7&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;112000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-68&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;220&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;220&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;write-metadata&gt;&lt;metadata-mask&gt;12&lt;/metadata-mask&gt;&lt;metadata&gt;10&lt;/metadata&gt;&lt;/write-metadata&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-24&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;6&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;6&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;29&lt;/second&gt;&lt;nanosecond&gt;612000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-63&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;206&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;206&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;77000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-62&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;205&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;&lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;&lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;132&lt;/ip-protocol&gt;&lt;ip-ecn&gt;0&lt;/ip-ecn&gt;&lt;ip-dscp&gt;0&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;205&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;10&lt;/second&gt;&lt;nanosecond&gt;577000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-65&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;214&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;56&lt;/ip-protocol&gt;&lt;ip-ecn&gt;1&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;214&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;64000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-21&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;3&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:00:00:01&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;cookie&gt;3&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;118000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-64&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;209&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;209&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;9&lt;/second&gt;&lt;nanosecond&gt;576000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-20&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;2&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;&lt;/match&gt;&lt;cookie&gt;2&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;31&lt;/second&gt;&lt;nanosecond&gt;617000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-50&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;104&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;104&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;589000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-19&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;cookie&gt;1&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;32&lt;/second&gt;&lt;nanosecond&gt;156000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-59&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;202&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;202&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;79000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-56&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;110&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;110&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-55&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;109&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;109&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;84000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-58&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;201&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;201&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;12&lt;/second&gt;&lt;nanosecond&gt;583000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-57&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;113&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;113&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;13&lt;/second&gt;&lt;nanosecond&gt;83000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-52&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;106&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a987:6000:0/100&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;106&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;585000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-51&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;105&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdcd:a000::/84&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;&lt;ip-dscp&gt;45&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;105&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;16&lt;/second&gt;&lt;nanosecond&gt;86000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-54&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;108&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;108&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;14&lt;/second&gt;&lt;nanosecond&gt;584000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-53&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;107&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;20:14:29:01:19:61&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;&lt;in-port&gt;0&lt;/in-port&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;107&lt;/cookie&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;15&lt;/second&gt;&lt;nanosecond&gt;75000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;50&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:29.541174" elapsed="0.004574"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:29.548338" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:29.545850" elapsed="0.002554"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:29.545822" elapsed="0.002613"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:29.569815" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:54:29.569863" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:29.548628" elapsed="0.021258"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:29.571673" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:29.569965" elapsed="0.001763"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:29.569945" elapsed="0.001807"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:29.571785" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:29.571976" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:54:29.572020" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 343 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:29.530931" elapsed="0.041112"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:29.574178" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:29.572599" elapsed="0.001649"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:29.572581" elapsed="0.001690"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.574817" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:29.574421" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.575377" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:29.575008" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:29.575452" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:29.575628" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:29.572269" elapsed="0.003384"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:29.575810" elapsed="0.000397"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:29.530323" elapsed="0.045945"/>
</kw>
<arg>f220.xml</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:29.485868" elapsed="0.090456"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:29.479052" elapsed="0.097381"/>
</test>
<test id="s1-s3-s2-t102" name="Test Delete Flows Group 0" line="261">
<for flavor="IN">
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.577592" level="INFO">f1.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:29.577344" elapsed="0.000293"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:29.581078" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f1.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f1.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:29.581210" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:29.580929" elapsed="0.000309"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:29.581779" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3f49f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:29.581393" elapsed="0.000413"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:29.582274" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:29.581958" elapsed="0.000342"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:29.582720" level="INFO">${flow_id} = 124</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:29.582451" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:29.583181" level="INFO">${flow_priority} = 1</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:29.582896" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:29.583922" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:29.583355" elapsed="0.000597"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.584447" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.584125" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.584996" level="INFO">${flow_id} = 124</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.584685" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.585520" level="INFO">${flow_priority} = 1</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.585206" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.586016" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.585715" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.586551" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.586239" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:29.587057" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3f49f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:29.586749" elapsed="0.000366"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:29.580598" elapsed="0.006572"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:29.588612" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc3f70b0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:29.588127" elapsed="0.000514"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:29.588792" elapsed="0.000268"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:29.589231" elapsed="0.000243"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:29.589623" elapsed="0.000245"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:29.590018" elapsed="0.000382"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:29.590825" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc307c40&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:29.590555" elapsed="0.000296"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:29.591000" elapsed="0.000263"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:29.591766" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;1&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf1&lt;/flow-name&gt;
    &lt;priority&gt;1&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:29.591412" elapsed="0.000414"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:29.592367" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:29.591972" elapsed="0.000425"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:30.120746" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '898', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;1&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf1&lt;/flow-name&gt;
    &lt;priority&gt;1&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:30.121299" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:30.121604" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:29.592528" elapsed="0.529142"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:30.127124" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:30.122273" elapsed="0.004958"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5acc3f49f0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:29.587757" elapsed="0.539622"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:29.587322" elapsed="0.540183"/>
</kw>
<var name="${flowfile}">f1.xml</var>
<status status="PASS" start="2026-05-25T01:54:29.577215" elapsed="0.550373"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:30.128777" level="INFO">f2.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:30.128193" elapsed="0.000686"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:30.136767" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f2.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f2.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:30.137119" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:30.136452" elapsed="0.000737"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:30.138567" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7dfd0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:30.137555" elapsed="0.001081"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:30.139537" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:30.138997" elapsed="0.000568"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:30.139993" level="INFO">${flow_id} = 125</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:30.139721" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:30.140474" level="INFO">${flow_priority} = 2</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:30.140188" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:30.141323" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:30.140654" elapsed="0.000702"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:30.141860" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:30.141525" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:30.142387" level="INFO">${flow_id} = 125</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:30.142056" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:30.142917" level="INFO">${flow_priority} = 2</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:30.142601" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:30.143430" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:30.143127" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:30.143932" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:30.143627" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:30.144456" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7dfd0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:30.144144" elapsed="0.000353"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:30.135623" elapsed="0.008928"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:30.145867" level="INFO">${req} = &lt;Element 'flow' at 0x7f5abff7ce50&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:30.145525" elapsed="0.000370"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:30.146046" elapsed="0.000522"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:30.146729" elapsed="0.000243"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:30.147139" elapsed="0.000291"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:30.147583" elapsed="0.000339"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:30.148363" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc4ba200&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:30.148092" elapsed="0.000298"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:30.148539" elapsed="0.000245"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:30.149308" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;
    &lt;/match&gt;
    &lt;cookie&gt;2&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf2&lt;/flow-name&gt;
    &lt;priority&gt;2&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:30.148932" elapsed="0.000436"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:30.149891" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:30.149514" elapsed="0.000407"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:30.621801" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '889', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;
    &lt;/match&gt;
    &lt;cookie&gt;2&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf2&lt;/flow-name&gt;
    &lt;priority&gt;2&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:30.621985" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:30.622312" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:30.150051" elapsed="0.472344"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:30.627679" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:30.622963" elapsed="0.004780"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5abff7dfd0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:30.145157" elapsed="0.482679"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:30.144702" elapsed="0.483211"/>
</kw>
<var name="${flowfile}">f2.xml</var>
<status status="PASS" start="2026-05-25T01:54:30.127841" elapsed="0.500123"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:30.628697" level="INFO">f3.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:30.628336" elapsed="0.000423"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:30.633691" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f3.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f3.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:30.633922" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:30.633488" elapsed="0.000476"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:30.634833" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7f1f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:30.634205" elapsed="0.000673"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:30.635536" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:30.635125" elapsed="0.000450"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:30.636310" level="INFO">${flow_id} = 126</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:30.635884" elapsed="0.000464"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:30.636967" level="INFO">${flow_priority} = 3</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:30.636567" elapsed="0.000438"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:30.638159" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:30.637244" elapsed="0.000960"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:30.638935" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:30.638434" elapsed="0.000566"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:30.639696" level="INFO">${flow_id} = 126</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:30.639242" elapsed="0.000514"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:30.640512" level="INFO">${flow_priority} = 3</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:30.639985" elapsed="0.000594"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:30.641261" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:30.640793" elapsed="0.000540"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:30.641998" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:30.641549" elapsed="0.000515"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:30.642823" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7f1f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:30.642306" elapsed="0.000597"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:30.632955" elapsed="0.010038"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:30.644442" level="INFO">${req} = &lt;Element 'flow' at 0x7f5abff7dda0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:30.644117" elapsed="0.000353"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:30.644615" elapsed="0.000443"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:30.645231" elapsed="0.000245"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:30.645623" elapsed="0.000241"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:30.646012" elapsed="0.000349"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:30.646796" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abff7e8e0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:30.646511" elapsed="0.000313"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:30.646970" elapsed="0.000260"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:30.647724" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:00:01&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;3&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf3&lt;/flow-name&gt;
    &lt;priority&gt;3&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:30.647375" elapsed="0.000409"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:30.648320" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:30.647929" elapsed="0.000422"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:31.123523" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '865', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:00:01&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;3&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf3&lt;/flow-name&gt;
    &lt;priority&gt;3&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:31.123835" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:31.124136" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:30.648480" elapsed="0.475723"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:31.129316" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:31.124668" elapsed="0.004753"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5abff7f1f0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:30.643744" elapsed="0.485817"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:30.643234" elapsed="0.486443"/>
</kw>
<var name="${flowfile}">f3.xml</var>
<status status="PASS" start="2026-05-25T01:54:30.628150" elapsed="0.501662"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:31.131158" level="INFO">f4.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:31.130498" elapsed="0.000764"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:31.134844" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f4.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f4.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:31.135057" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:31.134697" elapsed="0.000410"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:31.135718" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7f650&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:31.135279" elapsed="0.000468"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:31.136245" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:31.135901" elapsed="0.000372"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:31.136702" level="INFO">${flow_id} = 127</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:31.136428" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:31.137168" level="INFO">${flow_priority} = 4</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:31.136880" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:31.138027" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:31.137352" elapsed="0.000710"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:31.138579" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:31.138247" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:31.139147" level="INFO">${flow_id} = 127</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:31.138779" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:31.139666" level="INFO">${flow_priority} = 4</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:31.139353" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:31.140236" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:31.139900" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:31.140741" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:31.140435" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:31.141263" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7f650&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:31.140939" elapsed="0.000365"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:31.134332" elapsed="0.007030"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:31.142962" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc091b20&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:31.142387" elapsed="0.000604"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:31.143196" elapsed="0.000279"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:31.143628" elapsed="0.000239"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:31.144016" elapsed="0.000305"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:31.144478" elapsed="0.000384"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:31.145314" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abff7e7a0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:31.145021" elapsed="0.000321"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:31.145492" elapsed="0.000246"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:31.146288" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;4&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf4&lt;/flow-name&gt;
    &lt;priority&gt;4&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:31.145888" elapsed="0.000464"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:31.146896" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:31.146501" elapsed="0.000426"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:31.623798" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1082', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;4&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf4&lt;/flow-name&gt;
    &lt;priority&gt;4&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:31.623988" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:31.624290" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:31.147140" elapsed="0.477211"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:31.629506" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:31.624821" elapsed="0.004785"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5abff7f650&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:31.142009" elapsed="0.487734"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:31.141534" elapsed="0.488330"/>
</kw>
<var name="${flowfile}">f4.xml</var>
<status status="PASS" start="2026-05-25T01:54:31.130180" elapsed="0.499764"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:31.631115" level="INFO">f5.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:31.630517" elapsed="0.000704"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:31.636929" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f5.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f5.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:31.637201" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:31.636731" elapsed="0.000512"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:31.638054" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc090270&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:31.637457" elapsed="0.000658"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:31.638828" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:31.638425" elapsed="0.000441"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:31.639601" level="INFO">${flow_id} = 128</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:31.639102" elapsed="0.000540"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:31.640285" level="INFO">${flow_priority} = 5</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:31.639865" elapsed="0.000462"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:31.641259" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:31.640536" elapsed="0.000755"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:31.641793" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:31.641455" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:31.642326" level="INFO">${flow_id} = 128</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:31.641991" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:31.642911" level="INFO">${flow_priority} = 5</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:31.642527" elapsed="0.000432"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:31.643556" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:31.643163" elapsed="0.000441"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:31.644117" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:31.643760" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:31.644642" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc090270&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:31.644324" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:31.636236" elapsed="0.008505"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:31.646321" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc093c90&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:31.645768" elapsed="0.000581"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:31.646505" elapsed="0.000273"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:31.646934" elapsed="0.000261"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:31.647376" elapsed="0.000253"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:31.647780" elapsed="0.000359"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:31.648567" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfc1ebb0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:31.648293" elapsed="0.000301"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:31.648744" elapsed="0.000250"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:31.649539" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;5&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;5&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:31.649160" elapsed="0.000443"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:31.650210" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:31.649787" elapsed="0.000454"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:32.125186" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1191', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;5&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;5&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:32.125381" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:32.125649" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:31.650375" elapsed="0.475337"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:32.130871" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:32.126208" elapsed="0.004765"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5acc090270&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:31.645375" elapsed="0.485791"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:31.644892" elapsed="0.486422"/>
</kw>
<var name="${flowfile}">f5.xml</var>
<status status="PASS" start="2026-05-25T01:54:31.630223" elapsed="0.501174"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:32.132464" level="INFO">f6.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:32.132004" elapsed="0.000506"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:32.136138" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f6.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f6.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:32.136345" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:32.135971" elapsed="0.000406"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:32.136984" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1eca0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:32.136534" elapsed="0.000479"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:32.137481" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:32.137189" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:32.137943" level="INFO">${flow_id} = 129</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:32.137665" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:32.138424" level="INFO">${flow_priority} = 6</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:32.138142" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:32.139322" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:32.138614" elapsed="0.000740"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:32.139894" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:32.139553" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:32.140436" level="INFO">${flow_id} = 129</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:32.140114" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:32.140954" level="INFO">${flow_priority} = 6</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:32.140637" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:32.141534" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:32.141223" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:32.142088" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:32.141754" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:32.142604" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1eca0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:32.142292" elapsed="0.000355"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:32.135569" elapsed="0.007135"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:32.144241" level="INFO">${req} = &lt;Element 'flow' at 0x7f5abfc1cf40&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:32.143879" elapsed="0.000390"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:32.144419" elapsed="0.000266"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:32.144840" elapsed="0.000265"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:32.145256" elapsed="0.000248"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:32.145654" elapsed="0.000339"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:32.146450" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abff7f7e0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:32.146163" elapsed="0.000314"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:32.146625" elapsed="0.000245"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:32.147432" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;6&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;6&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:32.147018" elapsed="0.000478"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:32.148087" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:32.147677" elapsed="0.000442"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:32.625679" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1151', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;6&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;6&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:32.625862" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:32.626255" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:32.148250" elapsed="0.478068"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:32.631391" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:32.626769" elapsed="0.004722"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5abfc1eca0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:32.143331" elapsed="0.488301"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:32.142854" elapsed="0.488918"/>
</kw>
<var name="${flowfile}">f6.xml</var>
<status status="PASS" start="2026-05-25T01:54:32.131704" elapsed="0.500151"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:32.632984" level="INFO">f7.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:32.632419" elapsed="0.000697"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:32.638459" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f7.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f7.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:32.638621" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:32.638315" elapsed="0.000335"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:32.639264" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1d4e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:32.638805" elapsed="0.000487"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:32.639740" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:32.639455" elapsed="0.000335"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:32.640235" level="INFO">${flow_id} = 130</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:32.639944" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:32.640687" level="INFO">${flow_priority} = 7</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:32.640414" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:32.641615" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:32.640864" elapsed="0.000782"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:32.642151" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:32.641808" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:32.642660" level="INFO">${flow_id} = 130</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:32.642351" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:32.643179" level="INFO">${flow_priority} = 7</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:32.642853" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:32.643677" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:32.643378" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:32.644414" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:32.643901" elapsed="0.000560"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:32.644927" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1d4e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:32.644616" elapsed="0.000353"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:32.637946" elapsed="0.007078"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:32.646343" level="INFO">${req} = &lt;Element 'flow' at 0x7f5abfc1d300&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:32.645978" elapsed="0.000392"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:32.646522" elapsed="0.000262"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:32.646936" elapsed="0.000253"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:32.647338" elapsed="0.000242"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:32.647779" elapsed="0.000358"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:32.648559" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc389990&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:32.648292" elapsed="0.000294"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:32.648734" elapsed="0.000242"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:32.649528" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;15&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;7&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf7&lt;/flow-name&gt;
    &lt;priority&gt;7&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:32.649139" elapsed="0.000453"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:32.650162" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:32.649737" elapsed="0.000455"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:33.126287" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1336', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;15&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;7&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf7&lt;/flow-name&gt;
    &lt;priority&gt;7&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:33.126484" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:33.126760" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:32.650323" elapsed="0.476498"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:33.131852" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:33.127309" elapsed="0.004643"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5abfc1d4e0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:32.645625" elapsed="0.486539"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:32.645190" elapsed="0.487104"/>
</kw>
<var name="${flowfile}">f7.xml</var>
<status status="PASS" start="2026-05-25T01:54:32.632124" elapsed="0.500251"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:33.133521" level="INFO">f8.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:33.132911" elapsed="0.000712"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:33.138717" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f8.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f8.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:33.138880" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:33.138573" elapsed="0.000388"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:33.139594" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3bde40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:33.139136" elapsed="0.000486"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:33.140092" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:33.139780" elapsed="0.000341"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:33.140553" level="INFO">${flow_id} = 131</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:33.140278" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:33.141005" level="INFO">${flow_priority} = 8</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:33.140734" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:33.142220" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:33.141199" elapsed="0.001052"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:33.142751" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:33.142415" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:33.143275" level="INFO">${flow_id} = 131</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:33.142949" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:33.143783" level="INFO">${flow_priority} = 8</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:33.143469" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:33.144330" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:33.143976" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:33.144918" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:33.144546" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:33.145474" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3bde40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:33.145155" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:33.138213" elapsed="0.007359"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:33.146912" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc3bf1a0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:33.146557" elapsed="0.000382"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:33.147117" elapsed="0.000317"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:33.147590" elapsed="0.000253"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:33.147993" elapsed="0.000294"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:33.148440" elapsed="0.000338"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:33.149233" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc3bde90&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:33.148934" elapsed="0.000327"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:33.149420" elapsed="0.000248"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:33.150272" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:00&lt;/address&gt;
                &lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;8&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf8&lt;/flow-name&gt;
    &lt;priority&gt;8&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:33.149819" elapsed="0.000563"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:33.150959" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:33.150534" elapsed="0.000457"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:33.628172" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1490', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:00&lt;/address&gt;
                &lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;8&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf8&lt;/flow-name&gt;
    &lt;priority&gt;8&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:33.628407" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:33.628708" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:33.151142" elapsed="0.477630"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:33.633802" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:33.629248" elapsed="0.004656"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5acc3bde40&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:33.146178" elapsed="0.487868"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:33.145729" elapsed="0.488513"/>
</kw>
<var name="${flowfile}">f8.xml</var>
<status status="PASS" start="2026-05-25T01:54:33.132617" elapsed="0.501713"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:33.635473" level="INFO">f9.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:33.634865" elapsed="0.000712"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:33.640163" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f9.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f9.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:33.640341" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:33.640003" elapsed="0.000368"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:33.640977" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3bff60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:33.640526" elapsed="0.000479"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:33.641465" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:33.641179" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:33.641917" level="INFO">${flow_id} = 132</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:33.641646" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:33.642386" level="INFO">${flow_priority} = 9</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:33.642113" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:33.645198" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:33.642575" elapsed="0.002663"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:33.645854" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:33.645445" elapsed="0.000460"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:33.646512" level="INFO">${flow_id} = 132</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:33.646121" elapsed="0.000509"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:33.647231" level="INFO">${flow_priority} = 9</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:33.646828" elapsed="0.000456"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:33.647854" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:33.647479" elapsed="0.000430"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:33.648520" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:33.648120" elapsed="0.000457"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:33.649171" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3bff60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:33.648772" elapsed="0.000452"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:33.639646" elapsed="0.009645"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:33.650855" level="INFO">${req} = &lt;Element 'flow' at 0x7f5abfc1dfd0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:33.650436" elapsed="0.000452"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:33.651063" elapsed="0.000338"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:33.651604" elapsed="0.000297"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:33.652101" elapsed="0.000335"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:33.652620" elapsed="0.000405"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:33.653548" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfc1c040&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:33.653232" elapsed="0.000347"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:33.653760" elapsed="0.000289"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:33.654719" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;9&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf9&lt;/flow-name&gt;
    &lt;priority&gt;9&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:33.654247" elapsed="0.000553"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:33.655515" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:33.654980" elapsed="0.000572"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:34.129280" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1446', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;9&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf9&lt;/flow-name&gt;
    &lt;priority&gt;9&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:34.129563" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:34.129843" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:33.655718" elapsed="0.474187"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:34.134417" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:34.130374" elapsed="0.004106"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5acc3bff60&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:33.649995" elapsed="0.484574"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:33.649473" elapsed="0.485173"/>
</kw>
<var name="${flowfile}">f9.xml</var>
<status status="PASS" start="2026-05-25T01:54:33.634571" elapsed="0.500129"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:34.135423" level="INFO">f10.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:34.135042" elapsed="0.000444"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:34.140313" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f10.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f10.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:34.140552" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:34.140115" elapsed="0.000485"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:34.141487" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1f060&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:34.140815" elapsed="0.000716"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:34.141981" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:34.141696" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:34.142466" level="INFO">${flow_id} = 133</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:34.142192" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:34.142918" level="INFO">${flow_priority} = 10</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:34.142650" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:34.144097" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:34.143108" elapsed="0.001021"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:34.144641" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:34.144290" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:34.145230" level="INFO">${flow_id} = 133</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:34.144881" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:34.145741" level="INFO">${flow_priority} = 10</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:34.145427" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:34.146250" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:34.145933" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:34.146751" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:34.146446" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:34.147271" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1f060&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:34.146948" elapsed="0.000364"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:34.139609" elapsed="0.007758"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:34.148695" level="INFO">${req} = &lt;Element 'flow' at 0x7f5abfc1c400&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:34.148316" elapsed="0.000406"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:34.148867" elapsed="0.000279"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:34.149298" elapsed="0.000236"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:34.149682" elapsed="0.000281"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:34.150129" elapsed="0.000335"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:34.150884" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfc1d3a0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:34.150617" elapsed="0.000294"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:34.151058" elapsed="0.000263"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:34.151867" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;10&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf10&lt;/flow-name&gt;
    &lt;priority&gt;10&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:34.151474" elapsed="0.000459"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:34.152524" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:34.152093" elapsed="0.000463"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:34.630918" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1450', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;10&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf10&lt;/flow-name&gt;
    &lt;priority&gt;10&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:34.631153" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:34.631444" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:34.152691" elapsed="0.478817"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:34.636586" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:34.631965" elapsed="0.004723"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5abfc1f060&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:34.147947" elapsed="0.488950"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:34.147520" elapsed="0.489500"/>
</kw>
<var name="${flowfile}">f10.xml</var>
<status status="PASS" start="2026-05-25T01:54:34.134856" elapsed="0.502276"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:34.637966" level="INFO">f11.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:34.637611" elapsed="0.000419"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:34.642905" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f11.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f11.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:34.643229" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:34.642705" elapsed="0.000567"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:34.644137" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1f740&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:34.643488" elapsed="0.000691"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:34.644816" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:34.644405" elapsed="0.000449"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:34.645472" level="INFO">${flow_id} = 134</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:34.645087" elapsed="0.000422"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:34.646134" level="INFO">${flow_priority} = 11</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:34.645721" elapsed="0.000451"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:34.647705" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:34.646385" elapsed="0.001363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:34.648463" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:34.647975" elapsed="0.000548"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:34.649240" level="INFO">${flow_id} = 134</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:34.648774" elapsed="0.000526"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:34.649867" level="INFO">${flow_priority} = 11</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:34.649549" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:34.650382" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:34.650062" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:34.650891" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:34.650581" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:34.651427" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1f740&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:34.651104" elapsed="0.000372"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:34.642215" elapsed="0.009319"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:34.652860" level="INFO">${req} = &lt;Element 'flow' at 0x7f5abfc1db20&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:34.652488" elapsed="0.000400"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:34.653034" elapsed="0.000298"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:34.653486" elapsed="0.000238"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:34.653873" elapsed="0.000258"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:34.654285" elapsed="0.000332"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:34.655055" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfc1cd10&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:34.654769" elapsed="0.000337"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:34.655281" elapsed="0.000255"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:34.656104" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;1&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;27&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv4-match&gt;
            &lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;
            &lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;
        &lt;/icmpv4-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;11&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf11&lt;/flow-name&gt;
    &lt;priority&gt;11&lt;/priority&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:34.655685" elapsed="0.000520"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:34.656825" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:34.656360" elapsed="0.000502"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:35.132229" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1441', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;1&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;27&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv4-match&gt;
            &lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;
            &lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;
        &lt;/icmpv4-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;11&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf11&lt;/flow-name&gt;
    &lt;priority&gt;11&lt;/priority&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:35.132426" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:35.132716" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:34.656993" elapsed="0.475783"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:35.137737" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:35.133275" elapsed="0.004526"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5abfc1f740&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:34.652130" elapsed="0.485761"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:34.651686" elapsed="0.486282"/>
</kw>
<var name="${flowfile}">f11.xml</var>
<status status="PASS" start="2026-05-25T01:54:34.637379" elapsed="0.500641"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:35.138758" level="INFO">f14.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:35.138402" elapsed="0.000419"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:35.143729" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f14.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f14.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:35.143940" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:35.143532" elapsed="0.000448"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:35.144835" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4ba200&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:35.144215" elapsed="0.000660"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:35.145606" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:35.145216" elapsed="0.000417"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:35.146082" level="INFO">${flow_id} = 137</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:35.145789" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:35.146533" level="INFO">${flow_priority} = 14</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:35.146262" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:35.147665" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:35.146709" elapsed="0.000988"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:35.148202" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:35.147859" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:35.148716" level="INFO">${flow_id} = 137</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:35.148400" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:35.149322" level="INFO">${flow_priority} = 14</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:35.148973" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:35.149837" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:35.149528" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:35.150370" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:35.150041" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:35.150881" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4ba200&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:35.150570" elapsed="0.000354"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:35.143023" elapsed="0.007957"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:35.152317" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc0936a0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:35.151945" elapsed="0.000399"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:35.152489" elapsed="0.000261"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:35.152901" elapsed="0.000281"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:35.153335" elapsed="0.000241"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:35.153725" elapsed="0.000335"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:35.154501" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc093ba0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:35.154228" elapsed="0.000299"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:35.154674" elapsed="0.000244"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:35.155506" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x806&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;arp-op&gt;1&lt;/arp-op&gt;
        &lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;
        &lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;
        &lt;arp-source-hardware-address&gt;
            &lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;
        &lt;/arp-source-hardware-address&gt;
        &lt;arp-target-hardware-address&gt;
            &lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;
        &lt;/arp-target-hardware-address&gt;
    &lt;/match&gt;
    &lt;cookie&gt;14&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf14&lt;/flow-name&gt;
    &lt;priority&gt;14&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:35.155064" elapsed="0.000515"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:35.156166" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:35.155727" elapsed="0.000469"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:35.634426" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1669', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x806&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;arp-op&gt;1&lt;/arp-op&gt;
        &lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;
        &lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;
        &lt;arp-source-hardware-address&gt;
            &lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;
        &lt;/arp-source-hardware-address&gt;
        &lt;arp-target-hardware-address&gt;
            &lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;
        &lt;/arp-target-hardware-address&gt;
    &lt;/match&gt;
    &lt;cookie&gt;14&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf14&lt;/flow-name&gt;
    &lt;priority&gt;14&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:35.634762" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:35.635061" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:35.156326" elapsed="0.478836"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:35.640555" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:35.635645" elapsed="0.005029"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5acc4ba200&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:35.151594" elapsed="0.489233"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:35.151147" elapsed="0.489804"/>
</kw>
<var name="${flowfile}">f14.xml</var>
<status status="PASS" start="2026-05-25T01:54:35.138215" elapsed="0.502818"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:35.642311" level="INFO">f15.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:35.641690" elapsed="0.000723"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:35.648276" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f15.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f15.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:35.648445" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:35.648126" elapsed="0.000350"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:35.649108" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7f510&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:35.648633" elapsed="0.000506"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:35.649629" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:35.649326" elapsed="0.000331"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:35.650124" level="INFO">${flow_id} = 138</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:35.649815" elapsed="0.000336"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:35.650789" level="INFO">${flow_priority} = 15</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:35.650309" elapsed="0.000507"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:35.651694" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:35.650978" elapsed="0.000747"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:35.652255" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:35.651897" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:35.652771" level="INFO">${flow_id} = 138</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:35.652457" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:35.653353" level="INFO">${flow_priority} = 15</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:35.652989" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:35.653861" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:35.653554" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:35.654404" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:35.654091" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:35.654920" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7f510&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:35.654605" elapsed="0.000364"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:35.647736" elapsed="0.007290"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:35.656417" level="INFO">${req} = &lt;Element 'flow' at 0x7f5abfc1eb60&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:35.656045" elapsed="0.000403"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:35.656599" elapsed="0.000269"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:35.657032" elapsed="0.000309"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:35.657494" elapsed="0.000306"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:35.657954" elapsed="0.000369"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:35.658752" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfc1cf40&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:35.658479" elapsed="0.000300"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:35.658928" elapsed="0.000278"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:35.659748" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;15&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf15&lt;/flow-name&gt;
    &lt;priority&gt;15&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:35.659359" elapsed="0.000453"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:35.660395" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:35.659962" elapsed="0.000465"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:36.135574" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1234', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;15&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf15&lt;/flow-name&gt;
    &lt;priority&gt;15&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:36.135766" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:36.136047" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:35.660560" elapsed="0.475582"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:36.141585" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:36.136604" elapsed="0.005089"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5abff7f510&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:35.655678" elapsed="0.486153"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:35.655199" elapsed="0.486750"/>
</kw>
<var name="${flowfile}">f15.xml</var>
<status status="PASS" start="2026-05-25T01:54:35.641358" elapsed="0.500669"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:36.143204" level="INFO">f16.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:36.142597" elapsed="0.000710"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:36.148588" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f16.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f16.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:36.148757" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:36.148440" elapsed="0.000398"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:36.149450" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7ffb0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:36.148993" elapsed="0.000501"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:36.149944" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:36.149658" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:36.150417" level="INFO">${flow_id} = 139</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:36.150140" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:36.150870" level="INFO">${flow_priority} = 16</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:36.150595" elapsed="0.000301"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:36.151761" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:36.151048" elapsed="0.000745"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:36.152308" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:36.151953" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:36.152820" level="INFO">${flow_id} = 139</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:36.152508" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:36.153347" level="INFO">${flow_priority} = 16</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:36.153013" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:36.153951" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:36.153627" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:36.154508" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:36.154185" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:36.155018" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7ffb0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:36.154708" elapsed="0.000352"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:36.148082" elapsed="0.007050"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:36.156443" level="INFO">${req} = &lt;Element 'flow' at 0x7f5abfc1f5b0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:36.156083" elapsed="0.000387"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:36.156616" elapsed="0.000263"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:36.157030" elapsed="0.000252"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:36.157430" elapsed="0.000280"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:36.157859" elapsed="0.000350"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:36.158626" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfc1fce0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:36.158360" elapsed="0.000293"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:36.158798" elapsed="0.000402"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:36.159725" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    &lt;priority&gt;16&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:36.159350" elapsed="0.000472"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:36.160390" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    &lt;priority&gt;16&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:36.159971" elapsed="0.000450"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:36.635931" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1237', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    &lt;priority&gt;16&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:36.636175" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:36.636444" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:36.160551" elapsed="0.475954"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:36.641773" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:36.636961" elapsed="0.004937"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5abff7ffb0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:36.155717" elapsed="0.486382"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:36.155286" elapsed="0.486943"/>
</kw>
<var name="${flowfile}">f16.xml</var>
<status status="PASS" start="2026-05-25T01:54:36.142303" elapsed="0.500008"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:36.643448" level="INFO">f17.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:36.642844" elapsed="0.000705"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:36.648702" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f17.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f17.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:36.648866" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:36.648558" elapsed="0.000339"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:36.649505" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3bcc70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:36.649050" elapsed="0.000483"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:36.649987" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:36.649688" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:36.650455" level="INFO">${flow_id} = 140</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:36.650181" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:36.650904" level="INFO">${flow_priority} = 17</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:36.650633" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:36.651774" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:36.651096" elapsed="0.000709"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:36.652318" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:36.651966" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:36.652828" level="INFO">${flow_id} = 140</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:36.652516" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:36.653419" level="INFO">${flow_priority} = 17</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:36.653022" elapsed="0.000440"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:36.653971" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:36.653616" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:36.654502" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:36.654189" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:36.655014" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3bcc70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:36.654702" elapsed="0.000354"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:36.648201" elapsed="0.006928"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:36.656433" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc3bed40&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:36.656089" elapsed="0.000376"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:36.656614" elapsed="0.000263"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:36.657033" elapsed="0.000256"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:36.657439" elapsed="0.000244"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:36.657850" elapsed="0.000526"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:36.658804" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc3bce50&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:36.658532" elapsed="0.000299"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:36.658980" elapsed="0.000264"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:36.659761" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    &lt;priority&gt;17&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;protocol-match-fields&gt;
            &lt;mpls-label&gt;567&lt;/mpls-label&gt;
            &lt;mpls-tc&gt;3&lt;/mpls-tc&gt;
            &lt;mpls-bos&gt;1&lt;/mpls-bos&gt;
        &lt;/protocol-match-fields&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:36.659393" elapsed="0.000432"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:36.660384" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    &lt;priority&gt;17&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:36.659970" elapsed="0.000445"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:37.137374" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1197', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    &lt;priority&gt;17&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-mpls-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;protocol-match-fields&gt;
            &lt;mpls-label&gt;567&lt;/mpls-label&gt;
            &lt;mpls-tc&gt;3&lt;/mpls-tc&gt;
            &lt;mpls-bos&gt;1&lt;/mpls-bos&gt;
        &lt;/protocol-match-fields&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:37.137637" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:37.137877" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:36.660545" elapsed="0.477420"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:37.142949" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:37.138420" elapsed="0.004630"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5acc3bcc70&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:36.655719" elapsed="0.487502"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:36.655283" elapsed="0.488057"/>
</kw>
<var name="${flowfile}">f17.xml</var>
<status status="PASS" start="2026-05-25T01:54:36.642549" elapsed="0.500875"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:37.144550" level="INFO">f18.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:37.143953" elapsed="0.000698"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:37.149175" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f18.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f18.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:37.149325" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:37.149017" elapsed="0.000338"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:37.149917" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3bd350&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:37.149507" elapsed="0.000450"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:37.150422" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:37.150139" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:37.150873" level="INFO">${flow_id} = 141</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:37.150602" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:37.151339" level="INFO">${flow_priority} = 18</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:37.151050" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:37.152130" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:37.151520" elapsed="0.000641"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:37.152648" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:37.152324" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:37.153170" level="INFO">${flow_id} = 141</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:37.152845" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:37.153676" level="INFO">${flow_priority} = 18</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:37.153364" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:37.154204" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:37.153869" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:37.154714" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:37.154402" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:37.155236" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3bd350&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:37.154912" elapsed="0.000367"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:37.148669" elapsed="0.006665"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:37.156641" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc3bd080&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:37.156298" elapsed="0.000371"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:37.156818" elapsed="0.000285"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:37.157267" elapsed="0.000243"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:37.157700" elapsed="0.000278"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:37.158160" elapsed="0.000516"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:37.159124" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc4d86d0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:37.158834" elapsed="0.000318"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:37.159313" elapsed="0.000273"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:37.160120" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;18&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;18&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:37.159740" elapsed="0.000444"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:37.160724" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;18&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;p...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:37.160338" elapsed="0.000417"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:37.639052" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '951', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;18&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;18&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:37.639353" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:37.639669" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:37.160888" elapsed="0.478843"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:37.645023" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:37.640264" elapsed="0.004893"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5acc3bd350&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:37.155926" elapsed="0.489375"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:37.155486" elapsed="0.489935"/>
</kw>
<var name="${flowfile}">f18.xml</var>
<status status="PASS" start="2026-05-25T01:54:37.143663" elapsed="0.501841"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:37.646593" level="INFO">f19.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:37.646050" elapsed="0.000606"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:37.651282" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f19.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f19.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:37.651458" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:37.651130" elapsed="0.000357"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:37.652108" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe698f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:37.651645" elapsed="0.000493"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:37.652597" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:37.652298" elapsed="0.000391"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:37.653150" level="INFO">${flow_id} = 142</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:37.652849" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:37.653618" level="INFO">${flow_priority} = 19</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:37.653332" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:37.654481" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:37.653798" elapsed="0.000715"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:37.655028" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:37.654683" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:37.655569" level="INFO">${flow_id} = 142</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:37.655249" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:37.656107" level="INFO">${flow_priority} = 19</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:37.655766" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:37.656624" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:37.656307" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:37.657154" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:37.656824" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:37.657683" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe698f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:37.657365" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:37.650732" elapsed="0.007051"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:37.659177" level="INFO">${req} = &lt;Element 'flow' at 0x7f5abfe68310&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:37.658806" elapsed="0.000400"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:37.659361" elapsed="0.000282"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:37.659800" elapsed="0.000244"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:37.660215" elapsed="0.000251"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:37.660620" elapsed="0.000544"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:37.661600" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc3bd530&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:37.661324" elapsed="0.000303"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:37.661779" elapsed="0.000253"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:37.662586" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;19&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;19&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:37.662215" elapsed="0.000431"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:37.663191" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;19&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;p...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:37.662796" elapsed="0.000426"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:38.140000" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '920', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;19&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;19&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:38.140236" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:38.140515" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:37.663388" elapsed="0.477190"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:38.145651" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:38.141031" elapsed="0.004720"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5abfe698f0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:37.658442" elapsed="0.487448"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:37.657939" elapsed="0.488073"/>
</kw>
<var name="${flowfile}">f19.xml</var>
<status status="PASS" start="2026-05-25T01:54:37.645756" elapsed="0.500369"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:38.147319" level="INFO">f20.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:38.146722" elapsed="0.000692"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:38.152263" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f20.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f20.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:38.152470" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:38.152039" elapsed="0.000473"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:38.153324" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe69d50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:38.152723" elapsed="0.000641"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:38.153977" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:38.153585" elapsed="0.000427"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:38.154645" level="INFO">${flow_id} = 143</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:38.154245" elapsed="0.000436"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:38.155290" level="INFO">${flow_priority} = 20</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:38.154891" elapsed="0.000437"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:38.156405" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:38.155574" elapsed="0.000873"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:38.157152" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:38.156679" elapsed="0.000534"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:38.157872" level="INFO">${flow_id} = 143</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:38.157440" elapsed="0.000490"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:38.158648" level="INFO">${flow_priority} = 20</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:38.158164" elapsed="0.000549"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:38.159374" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:38.158926" elapsed="0.000511"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:38.159896" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:38.159589" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:38.160497" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe69d50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:38.160173" elapsed="0.000366"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:38.151552" elapsed="0.009041"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:38.161884" level="INFO">${req} = &lt;Element 'flow' at 0x7f5abfe69da0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:38.161559" elapsed="0.000353"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:38.162059" elapsed="0.000283"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:38.162506" elapsed="0.000240"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:38.162894" elapsed="0.000259"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:38.163305" elapsed="0.000505"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:38.164275" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfe68fe0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:38.163975" elapsed="0.000327"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:38.164458" elapsed="0.000247"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:38.165221" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;20&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;20&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xf0ff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:38.164853" elapsed="0.000429"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:38.165821" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;20&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;p...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:38.165445" elapsed="0.000407"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:38.640563" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '916', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;20&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;20&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xf0ff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:38.640745" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:38.641014" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:38.165982" elapsed="0.475125"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:38.645248" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:38.641596" elapsed="0.003717"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5abfe69d50&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:38.161198" elapsed="0.484206"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:38.160746" elapsed="0.484740"/>
</kw>
<var name="${flowfile}">f20.xml</var>
<status status="PASS" start="2026-05-25T01:54:38.146376" elapsed="0.499172"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:38.646290" level="INFO">f21.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:38.645898" elapsed="0.000532"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:38.651443" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:38.651658" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:38.651239" elapsed="0.000464"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:38.652552" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e58a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:38.651919" elapsed="0.000674"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:38.653251" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:38.652820" elapsed="0.000468"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:38.653911" level="INFO">${flow_id} = 144</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:38.653508" elapsed="0.000441"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:38.654578" level="INFO">${flow_priority} = 21</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:38.654188" elapsed="0.000426"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:38.655756" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:38.654879" elapsed="0.000909"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:38.656301" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:38.655952" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:38.656818" level="INFO">${flow_id} = 144</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:38.656504" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:38.657351" level="INFO">${flow_priority} = 21</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:38.657014" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:38.657860" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:38.657554" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:38.658390" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:38.658061" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:38.658944" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e58a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:38.658592" elapsed="0.000396"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:38.650719" elapsed="0.008325"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:38.660372" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc4e6ac0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:38.660005" elapsed="0.000395"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:38.660549" elapsed="0.000440"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:38.661164" elapsed="0.000245"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:38.661560" elapsed="0.000247"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:38.661956" elapsed="0.000354"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:38.662766" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc4e7510&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:38.662464" elapsed="0.000330"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:38.662944" elapsed="0.000266"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:38.663745" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:38.663361" elapsed="0.000486"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:38.664430" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;p...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:38.663997" elapsed="0.000464"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:39.141508" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1286', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:39.141709" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:39.141971" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:38.664594" elapsed="0.477438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:39.147450" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:39.142550" elapsed="0.004963"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5acc4e58a0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:38.659651" elapsed="0.487952"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:38.659214" elapsed="0.488463"/>
</kw>
<var name="${flowfile}">f21.xml</var>
<status status="PASS" start="2026-05-25T01:54:38.645709" elapsed="0.502019"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:39.148456" level="INFO">f22.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:39.148100" elapsed="0.000419"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:39.153408" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f22.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f22.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:39.153620" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:39.153206" elapsed="0.000455"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:39.154521" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e7dd0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:39.153873" elapsed="0.000688"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:39.155242" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:39.154779" elapsed="0.000502"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:39.155753" level="INFO">${flow_id} = 145</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:39.155478" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:39.156219" level="INFO">${flow_priority} = 22</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:39.155930" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:39.157154" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:39.156397" elapsed="0.000787"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:39.157676" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:39.157348" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:39.158212" level="INFO">${flow_id} = 145</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:39.157873" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:39.158800" level="INFO">${flow_priority} = 22</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:39.158476" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:39.159355" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:39.159026" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:39.159870" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:39.159556" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:39.160399" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e7dd0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:39.160083" elapsed="0.000363"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:39.152698" elapsed="0.007803"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:39.163399" level="INFO">${req} = &lt;Element 'flow' at 0x7f5abfe68540&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:39.161469" elapsed="0.001959"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:39.163582" elapsed="0.000275"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:39.164014" elapsed="0.000265"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:39.164432" elapsed="0.000253"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:39.164838" elapsed="0.000361"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:39.165631" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfe6a930&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:39.165354" elapsed="0.000305"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:39.165812" elapsed="0.000251"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:39.166621" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;22&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;22&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:39.166231" elapsed="0.000457"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:39.167305" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;22&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;p...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:39.166838" elapsed="0.000499"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:39.642933" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1284', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;22&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;22&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:39.643292" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:39.643584" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:39.167469" elapsed="0.476177"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:39.648682" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:39.644123" elapsed="0.004658"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5acc4e7dd0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:39.161109" elapsed="0.487810"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:39.160653" elapsed="0.488383"/>
</kw>
<var name="${flowfile}">f22.xml</var>
<status status="PASS" start="2026-05-25T01:54:39.147891" elapsed="0.501266"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:39.650281" level="INFO">f23.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:39.649691" elapsed="0.000689"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:39.654596" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f23.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f23.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:39.654776" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:39.654453" elapsed="0.000353"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:39.655446" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe69260&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:39.654961" elapsed="0.000514"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:39.655916" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:39.655632" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:39.656388" level="INFO">${flow_id} = 146</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:39.656113" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:39.656850" level="INFO">${flow_priority} = 23</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:39.656575" elapsed="0.000301"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:39.657816" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:39.657033" elapsed="0.000815"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:39.658362" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:39.658014" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:39.658881" level="INFO">${flow_id} = 146</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:39.658569" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:39.659422" level="INFO">${flow_priority} = 23</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:39.659094" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:39.660037" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:39.659619" elapsed="0.000481"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:39.660564" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:39.660256" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:39.661084" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe69260&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:39.660763" elapsed="0.000365"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:39.653922" elapsed="0.007262"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:39.662671" level="INFO">${req} = &lt;Element 'flow' at 0x7f5abfe6a4d0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:39.662316" elapsed="0.000382"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:39.662846" elapsed="0.000309"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:39.663320" elapsed="0.000242"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:39.663752" elapsed="0.000246"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:39.664165" elapsed="0.000335"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:39.664919" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfe69fd0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:39.664653" elapsed="0.000293"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:39.665109" elapsed="0.000243"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:39.665899" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;23&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;23&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:39.665506" elapsed="0.000458"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:39.666538" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;23&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;p...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:39.666126" elapsed="0.000443"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:40.144831" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1369', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;23&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;23&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:40.145022" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:40.145314" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:39.666698" elapsed="0.478677"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:40.150437" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:40.145833" elapsed="0.004706"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5abfe69260&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:39.661766" elapsed="0.488910"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:39.661336" elapsed="0.489460"/>
</kw>
<var name="${flowfile}">f23.xml</var>
<status status="PASS" start="2026-05-25T01:54:39.649402" elapsed="0.501474"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:40.152065" level="INFO">f24.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:40.151498" elapsed="0.000703"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:40.157188" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f24.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f24.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:40.157474" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:40.156970" elapsed="0.000547"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:40.158322" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3bfbf0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:40.157731" elapsed="0.000631"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:40.158972" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:40.158578" elapsed="0.000431"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:40.159667" level="INFO">${flow_id} = 147</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:40.159245" elapsed="0.000459"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:40.160323" level="INFO">${flow_priority} = 24</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:40.159920" elapsed="0.000440"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:40.161374" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:40.160575" elapsed="0.000842"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:40.162111" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:40.161641" elapsed="0.000530"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:40.162814" level="INFO">${flow_id} = 147</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:40.162388" elapsed="0.000483"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:40.163573" level="INFO">${flow_priority} = 24</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:40.163103" elapsed="0.000529"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:40.164287" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:40.163847" elapsed="0.000504"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:40.164912" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:40.164586" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:40.165430" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3bfbf0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:40.165122" elapsed="0.000350"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:40.156476" elapsed="0.009050"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:40.166986" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc3bd490&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:40.166659" elapsed="0.000355"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:40.167176" elapsed="0.000291"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:40.167619" elapsed="0.000244"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:40.168009" elapsed="0.000262"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:40.168421" elapsed="0.000332"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:40.169189" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc3bf1a0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:40.168905" elapsed="0.000311"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:40.169363" elapsed="0.000246"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:40.170116" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;24&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;24&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                        &lt;output-action&gt;
                        &lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:40.169757" elapsed="0.000457"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:40.170733" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;24&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;p...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:40.170362" elapsed="0.000402"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:40.646368" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '867', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;24&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;24&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                        &lt;output-action&gt;
                        &lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:40.646560" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:40.646817" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:40.170891" elapsed="0.475986"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:40.651961" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:40.647352" elapsed="0.004711"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5acc3bfbf0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:40.166126" elapsed="0.486119"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:40.165676" elapsed="0.486691"/>
</kw>
<var name="${flowfile}">f24.xml</var>
<status status="PASS" start="2026-05-25T01:54:40.151152" elapsed="0.501297"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:40.653583" level="INFO">f25.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:40.652982" elapsed="0.000702"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:40.658697" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f25.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f25.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:40.658879" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:40.658555" elapsed="0.000354"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:40.659539" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3bca40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:40.659061" elapsed="0.000506"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:40.660029" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:40.659743" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:40.660501" level="INFO">${flow_id} = 148</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:40.660227" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:40.660951" level="INFO">${flow_priority} = 25</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:40.660679" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:40.661933" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:40.661144" elapsed="0.000820"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:40.662472" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:40.662141" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:40.662977" level="INFO">${flow_id} = 148</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:40.662671" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:40.663498" level="INFO">${flow_priority} = 25</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:40.663187" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:40.664009" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:40.663708" elapsed="0.000428"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:40.664608" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:40.664292" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:40.665311" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3bca40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:40.664807" elapsed="0.000547"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:40.658196" elapsed="0.007213"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:40.666753" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc359e90&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:40.666395" elapsed="0.000385"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:40.666925" elapsed="0.000289"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:40.667368" elapsed="0.000260"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:40.667780" elapsed="0.000246"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:40.668191" elapsed="0.000342"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:40.668951" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc3bd8f0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:40.668685" elapsed="0.000293"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:40.669140" elapsed="0.000252"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:40.669943" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;25&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;25&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:40.669540" elapsed="0.000469"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:40.670589" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;25&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;p...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:40.670172" elapsed="0.000448"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:41.146546" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1394', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;25&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;25&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:41.146776" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:41.146964" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:40.670749" elapsed="0.476254"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:41.150332" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:41.147343" elapsed="0.003051"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5acc3bca40&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:40.666022" elapsed="0.484466"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:40.665566" elapsed="0.484999"/>
</kw>
<var name="${flowfile}">f25.xml</var>
<status status="PASS" start="2026-05-25T01:54:40.652687" elapsed="0.497930"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:41.151335" level="INFO">f31.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:41.150961" elapsed="0.000437"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:41.156262" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f31.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f31.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:41.156473" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:41.156042" elapsed="0.000473"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:41.157327" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7ccc0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:41.156726" elapsed="0.000641"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:41.157976" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:41.157583" elapsed="0.000432"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:41.158644" level="INFO">${flow_id} = 154</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:41.158254" elapsed="0.000427"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:41.159298" level="INFO">${flow_priority} = 31</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:41.158894" elapsed="0.000441"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:41.160490" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:41.159554" elapsed="0.000980"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:41.161491" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:41.160759" elapsed="0.000791"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:41.162224" level="INFO">${flow_id} = 154</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:41.161769" elapsed="0.000514"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:41.162931" level="INFO">${flow_priority} = 31</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:41.162496" elapsed="0.000492"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:41.163642" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:41.163222" elapsed="0.000482"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:41.164406" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:41.163950" elapsed="0.000519"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:41.165103" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7ccc0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:41.164683" elapsed="0.000463"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:41.155543" elapsed="0.009657"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:41.166486" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc305530&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:41.166150" elapsed="0.000363"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:41.166659" elapsed="0.000264"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:41.167091" elapsed="0.000240"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:41.167479" elapsed="0.000286"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:41.167927" elapsed="0.000354"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:41.168702" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc3044a0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:41.168435" elapsed="0.000294"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:41.168876" elapsed="0.000261"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:41.169651" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;31&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf31&lt;/flow-name&gt;
    &lt;priority&gt;31&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:41.169286" elapsed="0.000426"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:41.170259" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:41.169857" elapsed="0.000433"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:41.646927" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '976', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;31&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf31&lt;/flow-name&gt;
    &lt;priority&gt;31&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:41.647163" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:41.647452" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:41.170420" elapsed="0.477094"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:41.652598" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:41.647957" elapsed="0.004709"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5abff7ccc0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:41.165783" elapsed="0.486980"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:41.165350" elapsed="0.487495"/>
</kw>
<var name="${flowfile}">f31.xml</var>
<status status="PASS" start="2026-05-25T01:54:41.150777" elapsed="0.502122"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:41.653661" level="INFO">f36.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:41.653282" elapsed="0.000446"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:41.658883" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f36.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f36.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:41.659169" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:41.658676" elapsed="0.000541"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:41.660122" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7f560&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:41.659446" elapsed="0.000722"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:41.660704" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:41.660398" elapsed="0.000394"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:41.661243" level="INFO">${flow_id} = 159</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:41.660950" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:41.661700" level="INFO">${flow_priority} = 36</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:41.661422" elapsed="0.000304"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:41.662541" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:41.661879" elapsed="0.000693"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:41.663080" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:41.662735" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:41.663590" level="INFO">${flow_id} = 159</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:41.663280" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:41.664331" level="INFO">${flow_priority} = 36</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:41.663785" elapsed="0.000589"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:41.664840" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:41.664535" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:41.665360" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:41.665037" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:41.665864" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7f560&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:41.665557" elapsed="0.000349"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:41.658161" elapsed="0.007800"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:41.667262" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc3bdc60&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:41.666914" elapsed="0.000376"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:41.667437" elapsed="0.000265"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:41.667855" elapsed="0.000365"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:41.668402" elapsed="0.000254"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:41.668807" elapsed="0.000350"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:41.669576" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc3bc7c0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:41.669310" elapsed="0.000292"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:41.669750" elapsed="0.000241"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:41.670517" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;ip-match&gt;
                            &lt;ip-dscp&gt;1&lt;/ip-dscp&gt;
                        &lt;/ip-match&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;36&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf36&lt;/flow-name&gt;
    &lt;priority&gt;36&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:41.670153" elapsed="0.000424"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:41.671120" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:41.670722" elapsed="0.000429"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:42.153780" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1051', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;ip-match&gt;
                            &lt;ip-dscp&gt;1&lt;/ip-dscp&gt;
                        &lt;/ip-match&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;36&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf36&lt;/flow-name&gt;
    &lt;priority&gt;36&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:42.153960" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:42.154284" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:41.671315" elapsed="0.483028"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:42.158954" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:42.154771" elapsed="0.004271"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5abff7f560&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:41.666561" elapsed="0.492638"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:41.666126" elapsed="0.493189"/>
</kw>
<var name="${flowfile}">f36.xml</var>
<status status="PASS" start="2026-05-25T01:54:41.653065" elapsed="0.506328"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:42.160425" level="INFO">f38.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:42.159879" elapsed="0.000632"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:42.165729" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f38.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f38.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:42.165960" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:42.165527" elapsed="0.000476"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:42.166854" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7d4e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:42.166246" elapsed="0.000648"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:42.167560" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:42.167145" elapsed="0.000454"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:42.168110" level="INFO">${flow_id} = 161</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:42.167800" elapsed="0.000339"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:42.168642" level="INFO">${flow_priority} = 38</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:42.168337" elapsed="0.000332"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:42.169505" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:42.168824" elapsed="0.000720"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:42.170231" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:42.169768" elapsed="0.000523"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:42.170921" level="INFO">${flow_id} = 161</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:42.170501" elapsed="0.000475"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:42.171642" level="INFO">${flow_priority} = 38</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:42.171207" elapsed="0.000491"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:42.172621" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:42.171908" elapsed="0.000778"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:42.173422" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:42.172967" elapsed="0.000519"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:42.174145" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7d4e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:42.173699" elapsed="0.000505"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:42.165021" elapsed="0.009259"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:42.175835" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc1d43b0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:42.175490" elapsed="0.000372"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:42.176009" elapsed="0.000307"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:42.176472" elapsed="0.000252"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:42.176876" elapsed="0.000266"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:42.177293" elapsed="0.000344"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:42.178063" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc35ba10&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:42.177792" elapsed="0.000315"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:42.178258" elapsed="0.000248"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:42.179026" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-queue-action&gt;
                        &lt;queue-id&gt;1&lt;/queue-id&gt;
                    &lt;/set-queue-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;38&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf38&lt;/flow-name&gt;
    &lt;priority&gt;38&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:42.178654" elapsed="0.000451"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:42.179649" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;acti...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:42.179253" elapsed="0.000427"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:42.655682" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1074', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-queue-action&gt;
                        &lt;queue-id&gt;1&lt;/queue-id&gt;
                    &lt;/set-queue-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;38&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf38&lt;/flow-name&gt;
    &lt;priority&gt;38&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:42.655879" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:42.656199" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:42.179813" elapsed="0.476450"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:42.661392" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:42.656765" elapsed="0.004732"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5abff7d4e0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:42.175105" elapsed="0.486653"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:42.174488" elapsed="0.487393"/>
</kw>
<var name="${flowfile}">f38.xml</var>
<status status="PASS" start="2026-05-25T01:54:42.159624" elapsed="0.502341"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:42.663151" level="INFO">f43.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:42.662550" elapsed="0.000706"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:42.667959" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f43.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f43.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:42.668136" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:42.667815" elapsed="0.000351"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:42.668791" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc091a30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:42.668320" elapsed="0.000501"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:42.669285" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:42.668981" elapsed="0.000331"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:42.669740" level="INFO">${flow_id} = 166</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:42.669467" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:42.670210" level="INFO">${flow_priority} = 43</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:42.669920" elapsed="0.000317"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:42.671096" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:42.670390" elapsed="0.000739"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:42.671622" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:42.671293" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:42.672149" level="INFO">${flow_id} = 166</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:42.671821" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:42.672889" level="INFO">${flow_priority} = 43</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:42.672347" elapsed="0.000585"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:42.673420" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:42.673107" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:42.673935" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:42.673625" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:42.674462" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc091a30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:42.674150" elapsed="0.000355"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:42.667457" elapsed="0.007104"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:42.675866" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc3bd8f0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:42.675522" elapsed="0.000372"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:42.676041" elapsed="0.000282"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:42.676477" elapsed="0.000255"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:42.676883" elapsed="0.000262"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:42.677296" elapsed="0.000334"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:42.678052" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abff7e6b0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:42.677782" elapsed="0.000312"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:42.678283" elapsed="0.000251"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:42.679059" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;43&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf43&lt;/flow-name&gt;
    &lt;priority&gt;43&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:42.678685" elapsed="0.000453"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:42.679689" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:42.679286" elapsed="0.000434"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:43.156173" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1131', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;43&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf43&lt;/flow-name&gt;
    &lt;priority&gt;43&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:43.156345" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:43.156610" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:42.679852" elapsed="0.476821"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:43.161698" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:43.157183" elapsed="0.004614"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5acc091a30&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:42.675165" elapsed="0.486769"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:42.674713" elapsed="0.487339"/>
</kw>
<var name="${flowfile}">f43.xml</var>
<status status="PASS" start="2026-05-25T01:54:42.662253" elapsed="0.499913"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:43.163290" level="INFO">f45.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:43.162693" elapsed="0.000700"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:43.168000" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f45.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f45.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:43.168171" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:43.167858" elapsed="0.000343"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:43.168785" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc093ab0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:43.168354" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:43.169272" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:43.168972" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:43.169726" level="INFO">${flow_id} = 168</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:43.169455" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:43.170251" level="INFO">${flow_priority} = 45</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:43.169957" elapsed="0.000321"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:43.171061" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:43.170432" elapsed="0.000677"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:43.171605" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:43.171273" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:43.172130" level="INFO">${flow_id} = 168</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:43.171803" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:43.172643" level="INFO">${flow_priority} = 45</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:43.172327" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:43.173508" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:43.172918" elapsed="0.000644"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:43.174111" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:43.173743" elapsed="0.000440"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:43.174712" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc093ab0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:43.174373" elapsed="0.000390"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:43.167508" elapsed="0.007312"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:43.176251" level="INFO">${req} = &lt;Element 'flow' at 0x7f5abff7f600&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:43.175846" elapsed="0.000437"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:43.176458" elapsed="0.000335"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:43.176961" elapsed="0.000263"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:43.177376" elapsed="0.000251"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:43.177793" elapsed="0.000425"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:43.178642" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abff7db20&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:43.178374" elapsed="0.000295"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:43.178816" elapsed="0.000244"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:43.179743" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;1180719718&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xfff0ffff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
    &lt;cookie&gt;45&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf45&lt;/flow-name&gt;
    &lt;priority&gt;45&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:43.179286" elapsed="0.000520"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:43.180374" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;acti...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:43.179952" elapsed="0.000458"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:43.657302" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '922', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action /&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;1180719718&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xfff0ffff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
    &lt;cookie&gt;45&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf45&lt;/flow-name&gt;
    &lt;priority&gt;45&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:43.657549" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:43.657798" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:43.180568" elapsed="0.477289"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:43.662790" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:43.658274" elapsed="0.004615"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5acc093ab0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:43.175450" elapsed="0.487570"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:43.174972" elapsed="0.488198"/>
</kw>
<var name="${flowfile}">f45.xml</var>
<status status="PASS" start="2026-05-25T01:54:43.162402" elapsed="0.500847"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:43.664368" level="INFO">f101.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:43.663774" elapsed="0.000695"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:43.668569" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f101.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f101.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:43.668714" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:43.668428" elapsed="0.000315"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:43.669354" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc092430&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:43.668895" elapsed="0.000488"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:43.669827" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:43.669545" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:43.670296" level="INFO">${flow_id} = 224</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:43.670007" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:43.670745" level="INFO">${flow_priority} = 101</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:43.670476" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:43.671675" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:43.670921" elapsed="0.000785"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:43.672393" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:43.671868" elapsed="0.000569"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:43.672914" level="INFO">${flow_id} = 224</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:43.672598" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:43.673475" level="INFO">${flow_priority} = 101</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:43.673153" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:43.673975" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:43.673671" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:43.674499" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:43.674188" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:43.675006" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc092430&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:43.674697" elapsed="0.000350"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:43.668083" elapsed="0.007036"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:43.676417" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc305530&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:43.676051" elapsed="0.000393"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:43.676594" elapsed="0.000264"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:43.677020" elapsed="0.000254"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:43.677459" elapsed="0.000249"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:43.677858" elapsed="0.000352"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:43.678632" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc3beca0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:43.678364" elapsed="0.000295"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:43.678807" elapsed="0.000246"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:43.679606" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;101&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;101&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:43.679223" elapsed="0.000450"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:43.680244" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;101&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:43.679819" elapsed="0.000456"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:44.158251" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1454', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;101&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;101&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:44.158424" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:44.158680" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:43.680404" elapsed="0.478335"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:44.163669" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:44.159193" elapsed="0.004574"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5acc092430&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:43.675699" elapsed="0.488200"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:43.675272" elapsed="0.488745"/>
</kw>
<var name="${flowfile}">f101.xml</var>
<status status="PASS" start="2026-05-25T01:54:43.663482" elapsed="0.500647"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:44.165283" level="INFO">f102.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:44.164659" elapsed="0.000728"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:44.171188" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f102.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f102.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:44.171338" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:44.170976" elapsed="0.000392"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:44.171970" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1d260&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:44.171523" elapsed="0.000476"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:44.172467" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:44.172171" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:44.172916" level="INFO">${flow_id} = 225</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:44.172647" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:44.173417" level="INFO">${flow_priority} = 102</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:44.173127" elapsed="0.000316"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:44.174558" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:44.173595" elapsed="0.000994"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:44.175097" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:44.174753" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:44.175621" level="INFO">${flow_id} = 225</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:44.175301" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:44.176150" level="INFO">${flow_priority} = 102</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:44.175817" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:44.176669" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:44.176351" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:44.177282" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:44.176896" elapsed="0.000436"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:44.177820" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1d260&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:44.177495" elapsed="0.000369"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:44.170627" elapsed="0.007294"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:44.179294" level="INFO">${req} = &lt;Element 'flow' at 0x7f5abfc1f100&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:44.178909" elapsed="0.000413"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:44.179470" elapsed="0.000273"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:44.179898" elapsed="0.000259"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:44.180307" elapsed="0.000255"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:44.180712" elapsed="0.000341"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:44.181513" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfc1cea0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:44.181236" elapsed="0.000304"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:44.181690" elapsed="0.000249"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:44.182507" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;102&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;102&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:44.182105" elapsed="0.000505"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:44.183213" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;102&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:44.182762" elapsed="0.000483"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:44.659629" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1582', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;102&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;102&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;IN_PORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:44.659813" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:44.660116" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:44.183378" elapsed="0.476799"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:44.665152" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:44.660608" elapsed="0.004644"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5abfc1d260&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:44.178545" elapsed="0.486841"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:44.178095" elapsed="0.487446"/>
</kw>
<var name="${flowfile}">f102.xml</var>
<status status="PASS" start="2026-05-25T01:54:44.164364" elapsed="0.501256"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:44.666639" level="INFO">f103.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:44.666168" elapsed="0.000537"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:44.671440" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f103.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f103.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:44.671604" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:44.671299" elapsed="0.000334"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:44.672261" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e5350&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:44.671785" elapsed="0.000505"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:44.672733" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:44.672447" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:44.673202" level="INFO">${flow_id} = 226</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:44.672914" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:44.673667" level="INFO">${flow_priority} = 103</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:44.673383" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:44.674799" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:44.673846" elapsed="0.000984"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:44.675341" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:44.674997" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:44.675903" level="INFO">${flow_id} = 226</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:44.675589" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:44.676431" level="INFO">${flow_priority} = 103</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:44.676113" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:44.676926" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:44.676624" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:44.677458" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:44.677138" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:44.677964" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e5350&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:44.677656" elapsed="0.000349"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:44.670928" elapsed="0.007131"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:44.679399" level="INFO">${req} = &lt;Element 'flow' at 0x7f5abfc1f100&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:44.679016" elapsed="0.000410"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:44.679581" elapsed="0.000270"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:44.680003" elapsed="0.000258"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:44.680409" elapsed="0.000244"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:44.680801" elapsed="0.000350"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:44.681604" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfc1d8a0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:44.681305" elapsed="0.000326"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:44.681780" elapsed="0.000247"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:44.682585" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;103&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;103&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;1&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:44.682189" elapsed="0.000465"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:44.683246" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;103&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:44.682802" elapsed="0.000476"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:45.160839" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1576', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;103&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;103&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;1&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:45.161198" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:45.161496" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:44.683408" elapsed="0.478150"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:45.166796" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:45.162162" elapsed="0.004741"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5acc4e5350&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:44.678658" elapsed="0.488387"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:44.678227" elapsed="0.488981"/>
</kw>
<var name="${flowfile}">f103.xml</var>
<status status="PASS" start="2026-05-25T01:54:44.665853" elapsed="0.501439"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:45.168471" level="INFO">f104.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:45.167839" elapsed="0.000738"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:45.173150" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f104.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f104.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:45.173316" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:45.172989" elapsed="0.000357"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:45.173977" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e6f70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:45.173499" elapsed="0.000508"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:45.174467" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:45.174179" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:45.174919" level="INFO">${flow_id} = 227</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:45.174647" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:45.175388" level="INFO">${flow_priority} = 104</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:45.175113" elapsed="0.000301"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:45.177662" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:45.175565" elapsed="0.002129"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:45.178205" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:45.177857" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:45.178714" level="INFO">${flow_id} = 227</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:45.178403" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:45.179316" level="INFO">${flow_priority} = 104</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:45.178938" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:45.180352" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:45.179560" elapsed="0.000899"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:45.181554" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:45.180816" elapsed="0.000903"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:45.182739" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4e6f70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:45.182104" elapsed="0.000681"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:45.172623" elapsed="0.010236"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:45.184263" level="INFO">${req} = &lt;Element 'flow' at 0x7f5abfc1fd80&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:45.183886" elapsed="0.000405"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:45.184444" elapsed="0.000312"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:45.184939" elapsed="0.000290"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:45.185455" elapsed="0.000301"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:45.185931" elapsed="0.000388"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:45.186749" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfc1f330&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:45.186474" elapsed="0.000302"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:45.186923" elapsed="0.000259"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:45.187727" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;104&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;104&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:45.187330" elapsed="0.000462"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:45.188368" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;104&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:45.187938" elapsed="0.000460"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:45.662023" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1454', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;104&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;104&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:45.662259" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:45.662528" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:45.188529" elapsed="0.474058"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:45.667646" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:45.663013" elapsed="0.004735"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5acc4e6f70&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:45.183473" elapsed="0.484413"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:45.183015" elapsed="0.484994"/>
</kw>
<var name="${flowfile}">f104.xml</var>
<status status="PASS" start="2026-05-25T01:54:45.167539" elapsed="0.500584"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:45.669267" level="INFO">f105.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:45.668664" elapsed="0.000711"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:45.673624" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f105.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f105.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:45.673804" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:45.673404" elapsed="0.000474"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:45.674659" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1ec00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:45.674099" elapsed="0.000596"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:45.675197" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:45.674873" elapsed="0.000352"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:45.675667" level="INFO">${flow_id} = 228</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:45.675382" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:45.676143" level="INFO">${flow_priority} = 105</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:45.675848" elapsed="0.000323"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:45.721741" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:45.676325" elapsed="0.045468"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:45.722513" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:45.722064" elapsed="0.000496"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:45.723034" level="INFO">${flow_id} = 228</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:45.722720" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:45.723570" level="INFO">${flow_priority} = 105</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:45.723250" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:45.724084" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:45.723766" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:45.724595" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:45.724287" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:45.725142" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1ec00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:45.724796" elapsed="0.000389"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:45.673037" elapsed="0.052210"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:45.726653" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc439170&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:45.726289" elapsed="0.000392"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:45.726828" elapsed="0.000283"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:45.727265" elapsed="0.000251"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:45.727671" elapsed="0.000245"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:45.728087" elapsed="0.000359"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:45.728866" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc43b470&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:45.728599" elapsed="0.000293"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:45.729039" elapsed="0.000262"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:45.729840" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;105&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;105&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:45.729448" elapsed="0.000598"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:45.730649" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;105&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:45.730224" elapsed="0.000457"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:46.163463" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1460', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;105&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;105&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:46.163645" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:46.163919" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:45.730816" elapsed="0.433164"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:46.169278" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:46.164449" elapsed="0.004931"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5abfc1ec00&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:45.725869" elapsed="0.443649"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:45.725401" elapsed="0.444236"/>
</kw>
<var name="${flowfile}">f105.xml</var>
<status status="PASS" start="2026-05-25T01:54:45.668366" elapsed="0.501353"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:46.170861" level="INFO">f106.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:46.170290" elapsed="0.000673"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:46.176428" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f106.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f106.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:46.176600" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:46.176282" elapsed="0.000348"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:46.177253" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5accb4cb80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:46.176782" elapsed="0.000500"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:46.177718" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:46.177438" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:46.178210" level="INFO">${flow_id} = 229</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:46.177895" elapsed="0.000341"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:46.178657" level="INFO">${flow_priority} = 106</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:46.178388" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:46.179610" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:46.178834" elapsed="0.000807"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:46.180142" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:46.179802" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:46.180677" level="INFO">${flow_id} = 229</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:46.180341" elapsed="0.000434"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:46.181267" level="INFO">${flow_priority} = 106</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:46.180931" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:46.181770" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:46.181462" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:46.182355" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:46.181966" elapsed="0.000435"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:46.182881" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5accb4cb80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:46.182565" elapsed="0.000357"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:46.175910" elapsed="0.007067"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:46.184309" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc4ad850&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:46.183938" elapsed="0.000399"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:46.184482" elapsed="0.000265"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:46.184899" elapsed="0.000255"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:46.185304" elapsed="0.000248"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:46.185701" elapsed="0.000514"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:46.186640" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5accb4c5e0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:46.186370" elapsed="0.000315"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:46.186895" elapsed="0.000309"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:46.187767" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;106&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;106&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:46.187358" elapsed="0.000476"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:46.188424" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;106&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:46.187981" elapsed="0.000481"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:46.664342" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1465', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;106&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;106&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:46.664650" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:46.664920" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:46.188603" elapsed="0.476379"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:46.670048" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:46.665457" elapsed="0.004723"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5accb4cb80&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:46.183577" elapsed="0.486790"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:46.183144" elapsed="0.487348"/>
</kw>
<var name="${flowfile}">f106.xml</var>
<status status="PASS" start="2026-05-25T01:54:46.169952" elapsed="0.500602"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:46.671282" level="INFO">f107.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:46.670904" elapsed="0.000440"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:46.676205" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f107.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f107.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:46.676417" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:46.675988" elapsed="0.000470"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:46.677319" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1ce50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:46.676668" elapsed="0.000693"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:46.677970" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:46.677579" elapsed="0.000427"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:46.678618" level="INFO">${flow_id} = 230</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:46.678240" elapsed="0.000404"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:46.679063" level="INFO">${flow_priority} = 107</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:46.678796" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:46.680060" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:46.679261" elapsed="0.000844"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:46.680603" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:46.680270" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:46.681123" level="INFO">${flow_id} = 230</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:46.680800" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:46.681628" level="INFO">${flow_priority} = 107</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:46.681318" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:46.682135" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:46.681821" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:46.682651" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:46.682345" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:46.683168" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1ce50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:46.682847" elapsed="0.000363"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:46.675495" elapsed="0.007769"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:46.684746" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc090130&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:46.684213" elapsed="0.000561"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:46.684922" elapsed="0.000283"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:46.685359" elapsed="0.000239"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:46.685785" elapsed="0.000246"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:46.686199" elapsed="0.000362"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:46.686982" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abfc1cf90&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:46.686715" elapsed="0.000294"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:46.687175" elapsed="0.000245"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:46.687973" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;107&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;107&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:46.687574" elapsed="0.000467"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:46.688626" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;107&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:46.688203" elapsed="0.000454"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:47.165887" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1623', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;107&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;107&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:47.166135" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:47.166400" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:46.688785" elapsed="0.477675"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:47.171519" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:47.166937" elapsed="0.004682"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5abfc1ce50&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:46.683846" elapsed="0.487910"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:46.683414" elapsed="0.488461"/>
</kw>
<var name="${flowfile}">f107.xml</var>
<status status="PASS" start="2026-05-25T01:54:46.670719" elapsed="0.501235"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:47.173217" level="INFO">f108.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:47.172616" elapsed="0.000703"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:47.177998" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f108.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f108.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:47.178201" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:47.177856" elapsed="0.000376"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:47.178870" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4b8950&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:47.178384" elapsed="0.000514"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:47.179349" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:47.179051" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:47.179804" level="INFO">${flow_id} = 231</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:47.179529" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:47.180273" level="INFO">${flow_priority} = 108</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:47.179982" elapsed="0.000317"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:47.181257" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:47.180450" elapsed="0.000838"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:47.181774" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:47.181448" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:47.182297" level="INFO">${flow_id} = 231</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:47.181971" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:47.182834" level="INFO">${flow_priority} = 108</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:47.182490" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:47.183346" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:47.183028" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:47.183849" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:47.183544" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:47.184370" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4b8950&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:47.184046" elapsed="0.000364"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:47.177506" elapsed="0.006960"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:47.185954" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc4bade0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:47.185596" elapsed="0.000386"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:47.186143" elapsed="0.000264"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:47.186584" elapsed="0.000247"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:47.186980" elapsed="0.000261"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:47.187391" elapsed="0.000335"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:47.188164" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc4ba930&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:47.187878" elapsed="0.000313"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:47.188341" elapsed="0.000243"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:47.189146" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;108&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;108&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:47.188732" elapsed="0.000523"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:47.189905" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;108&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:47.189405" elapsed="0.000532"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:47.666726" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1630', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;108&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;108&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:47.666943" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:47.667225" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:47.190085" elapsed="0.477202"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:47.672253" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:47.667733" elapsed="0.004621"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5acc4b8950&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:47.185236" elapsed="0.487256"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:47.184616" elapsed="0.487996"/>
</kw>
<var name="${flowfile}">f108.xml</var>
<status status="PASS" start="2026-05-25T01:54:47.172323" elapsed="0.500369"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:47.673814" level="INFO">f109.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:47.673252" elapsed="0.000664"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:47.678536" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f109.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f109.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:47.678704" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:47.678375" elapsed="0.000359"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:47.679405" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d58a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:47.678911" elapsed="0.000530"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:47.679896" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:47.679602" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:47.680384" level="INFO">${flow_id} = 232</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:47.680096" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:47.680866" level="INFO">${flow_priority} = 109</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:47.680583" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:47.682052" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:47.681048" elapsed="0.001053"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:47.682642" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:47.682274" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:47.683280" level="INFO">${flow_id} = 232</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:47.682931" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:47.683826" level="INFO">${flow_priority} = 109</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:47.683498" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:47.684351" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:47.684024" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:47.684877" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:47.684564" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:47.685430" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d58a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:47.685095" elapsed="0.000380"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:47.677994" elapsed="0.007538"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:47.686897" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc4ba980&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:47.686511" elapsed="0.000415"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:47.687096" elapsed="0.000269"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:47.687533" elapsed="0.000244"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:47.687929" elapsed="0.000266"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:47.688346" elapsed="0.000357"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:47.689151" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc0904f0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:47.688859" elapsed="0.000319"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:47.689328" elapsed="0.000265"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:47.690167" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;109&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;109&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:47.689742" elapsed="0.000495"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:47.690873" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;109&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:47.690393" elapsed="0.000512"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:48.168317" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1626', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;109&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;109&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:48.168597" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:48.168866" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:47.691038" elapsed="0.477889"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:48.173890" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:48.169381" elapsed="0.004608"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5acc1d58a0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:47.686139" elapsed="0.488019"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:47.685685" elapsed="0.488593"/>
</kw>
<var name="${flowfile}">f109.xml</var>
<status status="PASS" start="2026-05-25T01:54:47.672927" elapsed="0.501429"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:48.175570" level="INFO">f110.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:48.174913" elapsed="0.000758"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:48.181302" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f110.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f110.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:48.181453" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:48.181156" elapsed="0.000327"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:48.182065" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d7ce0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:48.181634" elapsed="0.000476"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:48.182545" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:48.182266" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:48.183001" level="INFO">${flow_id} = 233</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:48.182722" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:48.183461" level="INFO">${flow_priority} = 110</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:48.183192" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:48.184511" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:48.183633" elapsed="0.000912"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:48.185029" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:48.184707" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:48.185551" level="INFO">${flow_id} = 233</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:48.185241" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:48.186053" level="INFO">${flow_priority} = 110</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:48.185744" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:48.186565" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:48.186265" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:48.187090" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:48.186760" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:48.187596" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d7ce0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:48.187289" elapsed="0.000349"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:48.180790" elapsed="0.006902"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:48.188979" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc093420&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:48.188638" elapsed="0.000369"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:48.189174" elapsed="0.000265"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:48.189590" elapsed="0.000304"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:48.190099" elapsed="0.000255"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:48.190508" elapsed="0.000336"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:48.191424" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc4bade0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:48.191148" elapsed="0.000303"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:48.191603" elapsed="0.000246"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:48.192392" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;110&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;110&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;push-vlan-action&gt;
                        &lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;
                        &lt;vlan-id&gt;1234&lt;/vlan-id&gt;
                    &lt;/push-vlan-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:48.191999" elapsed="0.000458"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:48.193023" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;110&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:48.192605" elapsed="0.000449"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:48.673633" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1336', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;110&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;110&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;push-vlan-action&gt;
                        &lt;ethernet-type&gt;33024&lt;/ethernet-type&gt;
                        &lt;vlan-id&gt;1234&lt;/vlan-id&gt;
                    &lt;/push-vlan-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:48.673829" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:48.674156" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:48.193203" elapsed="0.481020"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:48.679655" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:48.674698" elapsed="0.005057"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5acc1d7ce0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:48.188281" elapsed="0.491614"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:48.187841" elapsed="0.492173"/>
</kw>
<var name="${flowfile}">f110.xml</var>
<status status="PASS" start="2026-05-25T01:54:48.174592" elapsed="0.505537"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:48.681270" level="INFO">f113.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:48.680663" elapsed="0.000708"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:48.688283" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f113.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f113.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:48.688505" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:48.688136" elapsed="0.000399"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:48.689162" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d5bc0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:48.688689" elapsed="0.000504"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:48.689638" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:48.689349" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:48.690106" level="INFO">${flow_id} = 236</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:48.689818" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:48.690561" level="INFO">${flow_priority} = 113</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:48.690288" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:48.691717" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:48.690739" elapsed="0.001009"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:48.692258" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:48.691911" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:48.692773" level="INFO">${flow_id} = 236</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:48.692457" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:48.693313" level="INFO">${flow_priority} = 113</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:48.692978" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:48.693812" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:48.693507" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:48.694334" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:48.694010" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:48.694834" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d5bc0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:48.694530" elapsed="0.000345"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:48.687766" elapsed="0.007163"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:48.696313" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc0919e0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:48.695941" elapsed="0.000400"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:48.696486" elapsed="0.000260"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:48.696896" elapsed="0.000252"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:48.697295" elapsed="0.000241"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:48.697683" elapsed="0.000331"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:48.698449" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc090220&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:48.698181" elapsed="0.000294"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:48.698627" elapsed="0.000249"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:48.699468" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;113&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;113&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;push-mpls-action&gt;
                        &lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;
                    &lt;/push-mpls-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:48.699022" elapsed="0.000547"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:48.700155" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;113&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:48.699717" elapsed="0.000469"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:49.171147" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1571', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;113&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;113&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;push-mpls-action&gt;
                        &lt;ethernet-type&gt;34888&lt;/ethernet-type&gt;
                    &lt;/push-mpls-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:49.171349" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:49.171680" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:48.700316" elapsed="0.471426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:49.176792" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:49.172221" elapsed="0.004671"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5acc1d5bc0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:48.695589" elapsed="0.481443"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:48.695093" elapsed="0.482095"/>
</kw>
<var name="${flowfile}">f113.xml</var>
<status status="PASS" start="2026-05-25T01:54:48.680370" elapsed="0.496898"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:49.178436" level="INFO">f201.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:49.177838" elapsed="0.000698"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:49.183444" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f201.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f201.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:49.183619" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:49.183236" elapsed="0.000413"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:49.184279" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3889f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:49.183804" elapsed="0.000505"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:49.184746" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:49.184463" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:49.185210" level="INFO">${flow_id} = 324</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:49.184923" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:49.185653" level="INFO">${flow_priority} = 201</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:49.185386" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:49.186757" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:49.185827" elapsed="0.000961"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:49.187294" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:49.186949" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:49.187892" level="INFO">${flow_id} = 324</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:49.187577" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:49.188417" level="INFO">${flow_priority} = 201</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:49.188103" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:49.188907" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:49.188609" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:49.189426" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:49.189119" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:49.190000" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3889f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:49.189623" elapsed="0.000420"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:49.182796" elapsed="0.007321"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:49.191478" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc090b80&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:49.191081" elapsed="0.000426"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:49.191655" elapsed="0.000268"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:49.192090" elapsed="0.000242"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:49.192480" elapsed="0.000372"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:49.193058" elapsed="0.000489"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:49.194155" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc0924d0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:49.193758" elapsed="0.000435"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:49.194398" elapsed="0.000346"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:49.195558" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;201&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;201&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:49.194947" elapsed="0.000705"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:49.196476" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;201&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:49.195855" elapsed="0.000667"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:49.672162" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1356', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;201&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;201&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tcp-source-port&gt;2059&lt;/tcp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:49.672502" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:49.672819" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:49.196722" elapsed="0.476194"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:49.678649" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:49.673418" elapsed="0.005329"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5acc3889f0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:49.190715" elapsed="0.488168"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:49.190271" elapsed="0.488728"/>
</kw>
<var name="${flowfile}">f201.xml</var>
<status status="PASS" start="2026-05-25T01:54:49.177513" elapsed="0.501618"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:49.680340" level="INFO">f202.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:49.679727" elapsed="0.000713"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:49.684006" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f202.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f202.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:49.684189" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:49.683858" elapsed="0.000362"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:49.684821" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc389580&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:49.684376" elapsed="0.000475"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:49.685330" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:49.685007" elapsed="0.000351"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:49.685797" level="INFO">${flow_id} = 325</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:49.685514" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:49.686284" level="INFO">${flow_priority} = 202</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:49.685979" elapsed="0.000332"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:49.687391" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:49.686465" elapsed="0.000958"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:49.687935" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:49.687587" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:49.688481" level="INFO">${flow_id} = 325</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:49.688154" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:49.688998" level="INFO">${flow_priority} = 202</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:49.688680" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:49.689541" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:49.689230" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:49.690057" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:49.689746" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:49.690604" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc389580&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:49.690286" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:49.683481" elapsed="0.007223"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:49.692055" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc388680&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:49.691703" elapsed="0.000395"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:49.692249" elapsed="0.000274"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:49.692675" elapsed="0.000239"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:49.693123" elapsed="0.000269"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:49.693547" elapsed="0.000338"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:49.694335" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc38b740&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:49.694039" elapsed="0.000324"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:49.694513" elapsed="0.000247"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:49.695315" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;202&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;202&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:49.694909" elapsed="0.000475"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:49.695964" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;202&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:49.695532" elapsed="0.000463"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:50.173744" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1366', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;202&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;202&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tcp-destination-port&gt;1234&lt;/tcp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:50.173932" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:50.174254" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:49.696143" elapsed="0.478175"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:50.179673" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:50.174796" elapsed="0.004983"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5acc389580&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:49.691321" elapsed="0.488641"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:49.690857" elapsed="0.489259"/>
</kw>
<var name="${flowfile}">f202.xml</var>
<status status="PASS" start="2026-05-25T01:54:49.679380" elapsed="0.500869"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:50.181463" level="INFO">f203.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:50.180841" elapsed="0.000723"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:50.187025" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f203.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f203.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:50.187273" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:50.186878" elapsed="0.000426"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:50.187923" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7dc60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:50.187458" elapsed="0.000494"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:50.188411" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:50.188123" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:50.188867" level="INFO">${flow_id} = 326</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:50.188593" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:50.189335" level="INFO">${flow_priority} = 203</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:50.189046" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:50.190313" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:50.189513" elapsed="0.000832"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:50.190843" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:50.190509" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:50.191371" level="INFO">${flow_id} = 326</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:50.191041" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:50.191891" level="INFO">${flow_priority} = 203</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:50.191566" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:50.192410" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:50.192104" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:50.192920" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:50.192607" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:50.193448" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7dc60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:50.193134" elapsed="0.000356"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:50.186508" elapsed="0.007037"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:50.194849" level="INFO">${req} = &lt;Element 'flow' at 0x7f5abff7ef70&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:50.194501" elapsed="0.000375"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:50.195020" elapsed="0.000282"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:50.195452" elapsed="0.000238"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:50.195864" elapsed="0.000264"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:50.196280" elapsed="0.000340"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:50.197041" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abff7f060&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:50.196776" elapsed="0.000307"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:50.197234" elapsed="0.000245"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:50.198158" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;203&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;203&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:50.197626" elapsed="0.000632"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:50.198819" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;203&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:50.198407" elapsed="0.000443"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:50.677501" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1357', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;203&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;203&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;udp-source-port&gt;2059&lt;/udp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:50.677686" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:50.677967" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:50.198980" elapsed="0.479048"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:50.683095" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:50.678505" elapsed="0.004694"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5abff7dc60&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:50.194147" elapsed="0.489193"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:50.193694" elapsed="0.489765"/>
</kw>
<var name="${flowfile}">f203.xml</var>
<status status="PASS" start="2026-05-25T01:54:50.180518" elapsed="0.503021"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:50.684672" level="INFO">f204.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:50.684142" elapsed="0.000594"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:50.689567" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f204.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f204.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:50.689779" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:50.689370" elapsed="0.000449"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:50.690670" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38a340&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:50.690033" elapsed="0.000679"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:50.691351" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:50.690931" elapsed="0.000457"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:50.691986" level="INFO">${flow_id} = 327</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:50.691603" elapsed="0.000420"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:50.692655" level="INFO">${flow_priority} = 204</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:50.692298" elapsed="0.000383"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:50.693570" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:50.692833" elapsed="0.000769"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:50.694111" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:50.693768" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:50.694631" level="INFO">${flow_id} = 327</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:50.694314" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:50.695216" level="INFO">${flow_priority} = 204</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:50.694882" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:50.695731" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:50.695420" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:50.696311" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:50.695933" elapsed="0.000443"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:50.696848" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38a340&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:50.696534" elapsed="0.000356"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:50.688862" elapsed="0.008083"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:50.698267" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc389e40&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:50.697902" elapsed="0.000392"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:50.698439" elapsed="0.000261"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:50.698851" elapsed="0.000252"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:50.699251" elapsed="0.000242"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:50.699640" elapsed="0.001776"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:50.701849" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abff7e020&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:50.701575" elapsed="0.000302"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:50.702025" elapsed="0.000264"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:50.702816" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;204&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;204&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:50.702437" elapsed="0.000444"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:50.703443" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;204&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:50.703025" elapsed="0.000449"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:51.176640" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1367', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;204&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;204&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;udp-destination-port&gt;1234&lt;/udp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:51.177009" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:51.177369" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:50.703602" elapsed="0.473833"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:51.182670" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:51.177886" elapsed="0.004893"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5acc38a340&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:50.697545" elapsed="0.485375"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:50.697111" elapsed="0.485929"/>
</kw>
<var name="${flowfile}">f204.xml</var>
<status status="PASS" start="2026-05-25T01:54:50.683778" elapsed="0.499379"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:51.184320" level="INFO">f205.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:51.183692" elapsed="0.000733"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:51.190314" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f205.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f205.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:51.190477" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:51.190167" elapsed="0.000339"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:51.191131" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7cc20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:51.190658" elapsed="0.000503"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:51.191603" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:51.191319" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:51.192053" level="INFO">${flow_id} = 328</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:51.191782" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:51.192554" level="INFO">${flow_priority} = 205</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:51.192247" elapsed="0.000335"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:51.193555" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:51.192743" elapsed="0.000843"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:51.194092" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:51.193750" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:51.194594" level="INFO">${flow_id} = 328</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:51.194289" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:51.195110" level="INFO">${flow_priority} = 205</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:51.194785" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:51.195601" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:51.195303" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:51.196115" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:51.195795" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:51.196632" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7cc20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:51.196324" elapsed="0.000349"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:51.189724" elapsed="0.007003"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:51.198303" level="INFO">${req} = &lt;Element 'flow' at 0x7f5abff7f010&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:51.197781" elapsed="0.000559"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:51.198542" elapsed="0.000364"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:51.199138" elapsed="0.000329"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:51.199671" elapsed="0.000779"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:51.200649" elapsed="0.000339"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:51.201426" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5abff7d0d0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:51.201158" elapsed="0.000295"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:51.201600" elapsed="0.000245"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:51.202404" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;205&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;
    &lt;priority&gt;205&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:51.201992" elapsed="0.000480"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:51.203039" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:51.202622" elapsed="0.000461"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:51.677926" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1563', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;sctp-source-port&gt;1111&lt;/sctp-source-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;205&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;
    &lt;priority&gt;205&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:51.678102" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:51.678305" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:51.203250" elapsed="0.475094"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:51.681601" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:51.678669" elapsed="0.002999"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5abff7cc20&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:51.197359" elapsed="0.484398"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:51.196877" elapsed="0.484957"/>
</kw>
<var name="${flowfile}">f205.xml</var>
<status status="PASS" start="2026-05-25T01:54:51.183397" elapsed="0.498487"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:51.682607" level="INFO">f206.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:51.682251" elapsed="0.000419"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:51.689263" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f206.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f206.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:51.689577" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:51.688909" elapsed="0.000715"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:51.690489" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38a890&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:51.689842" elapsed="0.000690"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:51.691169" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:51.690750" elapsed="0.000457"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:51.691804" level="INFO">${flow_id} = 329</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:51.691421" elapsed="0.000419"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:51.692498" level="INFO">${flow_priority} = 206</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:51.692056" elapsed="0.000489"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:51.693789" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:51.692767" elapsed="0.001053"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:51.694334" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:51.693984" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:51.694850" level="INFO">${flow_id} = 329</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:51.694535" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:51.695380" level="INFO">${flow_priority} = 206</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:51.695046" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:51.695878" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:51.695575" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:51.696402" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:51.696091" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:51.696931" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38a890&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:51.696619" elapsed="0.000355"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:51.687759" elapsed="0.009271"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:51.698553" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc389da0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:51.697999" elapsed="0.000582"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:51.698731" elapsed="0.000267"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:51.699168" elapsed="0.000244"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:51.699560" elapsed="0.000246"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:51.699956" elapsed="0.000356"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:51.700771" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc4b8950&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:51.700467" elapsed="0.000331"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:51.700947" elapsed="0.000262"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:51.701754" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;206&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;
    &lt;priority&gt;206&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:51.701356" elapsed="0.000504"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:51.702449" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
    ...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:51.702006" elapsed="0.000473"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:52.179261" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1571', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;sctp-destination-port&gt;1111&lt;/sctp-destination-port&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;206&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;
    &lt;priority&gt;206&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:52.179464" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:52.179744" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:51.702609" elapsed="0.477204"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:52.185159" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:52.180294" elapsed="0.004968"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5acc38a890&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:51.697643" elapsed="0.487761"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:51.697199" elapsed="0.488324"/>
</kw>
<var name="${flowfile}">f206.xml</var>
<status status="PASS" start="2026-05-25T01:54:51.682042" elapsed="0.503556"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:52.186329" level="INFO">f209.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:52.185951" elapsed="0.000441"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:52.191309" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f209.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f209.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:52.191525" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;co...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:52.191106" elapsed="0.000460"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:52.192425" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d7a60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:52.191784" elapsed="0.000681"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:52.193113" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:52.192699" elapsed="0.000452"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:52.193754" level="INFO">${flow_id} = 332</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:52.193371" elapsed="0.000419"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:52.194412" level="INFO">${flow_priority} = 209</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:52.194002" elapsed="0.000447"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:52.195695" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/co...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:52.194661" elapsed="0.001077"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:52.196436" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:52.195962" elapsed="0.000534"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:52.197288" level="INFO">${flow_id} = 332</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:52.196825" elapsed="0.000522"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:52.197896" level="INFO">${flow_priority} = 209</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:52.197562" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:52.198410" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;co...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:52.198104" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:52.198919" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/co...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:52.198610" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:52.199452" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d7a60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:52.199133" elapsed="0.000362"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:52.190592" elapsed="0.008957"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:52.201057" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc1d4ae0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:52.200694" elapsed="0.000405"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:52.201250" elapsed="0.000265"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:52.201673" elapsed="0.000236"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:52.202057" elapsed="0.000260"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:52.202468" elapsed="0.000331"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:52.203233" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc1d4c70&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:52.202951" elapsed="0.000309"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:52.203408" elapsed="0.000241"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:52.204201" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;209&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;209&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tunnel&gt;
                            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;
                        &lt;/tunnel&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:52.203795" elapsed="0.000473"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:52.204851" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;209&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/tab...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:52.204414" elapsed="0.000468"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:52.680289" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1451', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;209&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;209&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
                        &lt;tunnel&gt;
                            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;
                        &lt;/tunnel&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:52.680499" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:52.680680" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:52.205013" elapsed="0.475702"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:52.683827" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:52.681054" elapsed="0.002833"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5acc1d7a60&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:52.200150" elapsed="0.483818"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:52.199701" elapsed="0.484340"/>
</kw>
<var name="${flowfile}">f209.xml</var>
<status status="PASS" start="2026-05-25T01:54:52.185766" elapsed="0.498342"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:52.684744" level="INFO">f214.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:52.684424" elapsed="0.000381"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:52.690705" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f214.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f214.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:52.690900" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:52.690525" elapsed="0.000415"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:52.691717" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d4b80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:52.691162" elapsed="0.000593"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:52.692320" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:52.691951" elapsed="0.000401"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:52.692883" level="INFO">${flow_id} = 337</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:52.692546" elapsed="0.000382"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:52.693468" level="INFO">${flow_priority} = 214</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:52.693131" elapsed="0.000370"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:52.694606" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:52.693699" elapsed="0.000947"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:52.695290" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:52.694858" elapsed="0.000484"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:52.695923" level="INFO">${flow_id} = 337</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:52.695540" elapsed="0.000436"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:52.696582" level="INFO">${flow_priority} = 214</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:52.696190" elapsed="0.000444"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:52.697266" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:52.696832" elapsed="0.000494"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:52.698167" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:52.697521" elapsed="0.000707"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:52.698811" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d4b80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:52.698424" elapsed="0.000444"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:52.690063" elapsed="0.008867"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:52.700733" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc1d54e0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:52.700286" elapsed="0.000483"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:52.700958" elapsed="0.000357"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:52.701492" elapsed="0.000282"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:52.702003" elapsed="0.000333"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:52.702526" elapsed="0.000418"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:52.703512" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc1d7ba0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:52.703162" elapsed="0.000384"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:52.703739" elapsed="0.000307"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:52.704738" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;214&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;214&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
		    &lt;ip-match&gt;
        		&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
		    &lt;/ip-match&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
		&lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
	    &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:52.704255" elapsed="0.000565"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:52.705552" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;214&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:52.705023" elapsed="0.000568"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:53.182514" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1157', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;214&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;214&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;set-field&gt;
		    &lt;ip-match&gt;
        		&lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
		    &lt;/ip-match&gt;
                    &lt;/set-field&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
		&lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
	    &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:53.182707" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:53.183007" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:52.705756" elapsed="0.477341"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:53.188158" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:53.183569" elapsed="0.004692"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5acc1d4b80&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:52.699660" elapsed="0.488742"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:52.699128" elapsed="0.489394"/>
</kw>
<var name="${flowfile}">f214.xml</var>
<status status="PASS" start="2026-05-25T01:54:52.684256" elapsed="0.504346"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:53.189754" level="INFO">f218.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:53.189181" elapsed="0.000674"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:53.195584" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f218.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f218.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:53.195746" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:53.195436" elapsed="0.000339"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:53.196441" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d7600&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:53.195992" elapsed="0.000479"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:53.196917" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:53.196632" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:53.197402" level="INFO">${flow_id} = 341</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:53.197122" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:53.197860" level="INFO">${flow_priority} = 218</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:53.197582" elapsed="0.000304"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:53.198643" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:53.198040" elapsed="0.000633"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:53.199180" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:53.198836" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:53.199691" level="INFO">${flow_id} = 341</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:53.199377" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:53.200227" level="INFO">${flow_priority} = 218</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:53.199891" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:53.200719" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:53.200421" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:53.201272" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:53.200916" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:53.201955" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d7600&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:53.201469" elapsed="0.000529"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:53.195065" elapsed="0.006989"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:53.203343" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc1d46d0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:53.203005" elapsed="0.000365"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:53.203515" elapsed="0.000264"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:53.203930" elapsed="0.000262"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:53.204342" elapsed="0.000241"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:53.204731" elapsed="0.000332"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:53.205511" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc1d7740&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:53.205246" elapsed="0.000292"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:53.205689" elapsed="0.000240"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:53.206443" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;go-to-table&gt;
                &lt;table_id&gt;3&lt;/table_id&gt;
            &lt;/go-to-table&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-mask&gt;0xfff0&lt;/tunnel-mask&gt;
            &lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
    &lt;cookie&gt;218&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;
    &lt;priority&gt;218&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:53.206091" elapsed="0.000410"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:53.207017" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;go-to-table&gt;
                &lt;table_...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:53.206647" elapsed="0.000451"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:53.682590" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '841', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;go-to-table&gt;
                &lt;table_id&gt;3&lt;/table_id&gt;
            &lt;/go-to-table&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-mask&gt;0xfff0&lt;/tunnel-mask&gt;
            &lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
    &lt;cookie&gt;218&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;
    &lt;priority&gt;218&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:53.682739" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:53.682984" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:53.207234" elapsed="0.475810"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:53.687981" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:53.683472" elapsed="0.004637"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5acc1d7600&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:53.202654" elapsed="0.485591"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:53.202222" elapsed="0.486140"/>
</kw>
<var name="${flowfile}">f218.xml</var>
<status status="PASS" start="2026-05-25T01:54:53.188842" elapsed="0.499598"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:53.689589" level="INFO">f219.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:53.688962" elapsed="0.000728"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:53.697451" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f219.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f219.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:53.697672" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;c...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:53.697053" elapsed="0.000649"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:53.698285" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d76f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:53.697854" elapsed="0.000461"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:53.698744" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:53.698467" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:53.699218" level="INFO">${flow_id} = 342</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:53.698920" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:53.699662" level="INFO">${flow_priority} = 219</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:53.699395" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:53.700514" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:53.699834" elapsed="0.000711"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:53.701030" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:53.700709" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:53.701572" level="INFO">${flow_id} = 342</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:53.701244" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:53.702268" level="INFO">${flow_priority} = 219</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:53.701766" elapsed="0.000544"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:53.702769" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;c...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:53.702464" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:53.703372" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:53.703025" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:53.703889" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d76f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:53.703575" elapsed="0.000364"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:53.696304" elapsed="0.007689"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:53.705299" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc1d5940&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:53.704944" elapsed="0.000396"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:53.705490" elapsed="0.000263"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:53.705905" elapsed="0.000252"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:53.706305" elapsed="0.000242"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:53.706700" elapsed="0.000331"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:53.707468" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc1d5170&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:53.707201" elapsed="0.000294"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:53.707642" elapsed="0.000243"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:53.708417" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
		&lt;/clear-actions&gt;
	&lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;10&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;219&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;
    &lt;priority&gt;219&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:53.708038" elapsed="0.000442"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:53.709017" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;action&gt;
                    &lt;order&gt;0&lt;/o...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:53.708625" elapsed="0.000423"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:54.183700" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '1142', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;
                        &lt;max-length&gt;60&lt;/max-length&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
		&lt;/clear-actions&gt;
	&lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;10&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;219&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;
    &lt;priority&gt;219&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:54.183891" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:54.184209" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:53.709196" elapsed="0.475079"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:54.189463" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:54.184832" elapsed="0.004767"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5acc1d76f0&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:53.704590" elapsed="0.485165"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:53.704158" elapsed="0.485749"/>
</kw>
<var name="${flowfile}">f219.xml</var>
<status status="PASS" start="2026-05-25T01:54:53.688672" elapsed="0.501320"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:54.191259" level="INFO">f220.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:54.190658" elapsed="0.000701"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:54.197511" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f220.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f220.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:54.197757" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:54.197313" elapsed="0.000485"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:54.198641" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc091210&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:54.198015" elapsed="0.000676"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:54.199190" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:54.198889" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:54.199643" level="INFO">${flow_id} = 343</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:54.199371" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:54.200113" level="INFO">${flow_priority} = 220</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:54.199824" elapsed="0.000316"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:54.200898" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:54.200292" elapsed="0.000636"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:54.201438" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:54.201107" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:54.201967" level="INFO">${flow_id} = 343</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:54.201650" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:54.202494" level="INFO">${flow_priority} = 220</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:54.202178" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:54.202993" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:54.202690" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:54.203711" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:54.203207" elapsed="0.000551"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:54.204245" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc091210&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:54.203914" elapsed="0.000373"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:54.196802" elapsed="0.007541"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Delete Flow Via RPC" owner="FlowLib">
<kw name="Copy Element" owner="XML">
<msg time="2026-05-25T01:54:54.205663" level="INFO">${req} = &lt;Element 'flow' at 0x7f5acc1d4f40&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:54.205300" elapsed="0.000391"/>
</kw>
<kw name="Remove Element" owner="XML">
<arg>${req}</arg>
<arg>id</arg>
<arg>clear_tail=True</arg>
<doc>Removes the element matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:54:54.205837" elapsed="0.000281"/>
</kw>
<kw name="Set Element Tag" owner="XML">
<arg>${req}</arg>
<arg>input</arg>
<doc>Sets the tag of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:54.206273" elapsed="0.000239"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${req}</arg>
<arg>xmlns</arg>
<arg>urn:opendaylight:flow:service</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:54.206662" elapsed="0.000267"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${req}</arg>
<arg>&lt;node&gt;/inv:nodes/inv:node[inv:id="openflow:${node_id}"]&lt;/node&gt;</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:54.207110" elapsed="0.000335"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-05-25T01:54:54.207867" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7f5acc1d46d0&gt;</msg>
<var>${nodeelm}</var>
<arg>${req}</arg>
<arg>node</arg>
<doc>Returns an element in the ``source`` matching the ``xpath``.</doc>
<status status="PASS" start="2026-05-25T01:54:54.207599" elapsed="0.000332"/>
</kw>
<kw name="Set Element Attribute" owner="XML">
<arg>${nodeelm}</arg>
<arg>xmlns:inv</arg>
<arg>urn:opendaylight:inventory</arg>
<doc>Sets attribute ``name`` of the specified element to ``value``.</doc>
<status status="PASS" start="2026-05-25T01:54:54.208097" elapsed="0.000250"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-05-25T01:54:54.208855" level="INFO">&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;write-metadata&gt;
                &lt;metadata-mask&gt;12&lt;/metadata-mask&gt;
                &lt;metadata&gt;10&lt;/metadata&gt;
            &lt;/write-metadata&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;220&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;
    &lt;priority&gt;220&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt;</msg>
<arg>${req}</arg>
<doc>Logs the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:54.208495" elapsed="0.000421"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:54:54.209457" level="INFO">${strxml} = &lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;write-metadata&gt;
                &lt;met...</msg>
<var>${strxml}</var>
<arg>${req}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:54:54.209061" elapsed="0.000427"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:54.685252" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 path_url=/rests/operations/sal-flow:remove-flow 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Content-Length': '978', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;input xmlns="urn:opendaylight:flow:service"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;write-metadata&gt;
                &lt;metadata-mask&gt;12&lt;/metadata-mask&gt;
                &lt;metadata&gt;10&lt;/metadata&gt;
            &lt;/write-metadata&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;220&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;
    &lt;priority&gt;220&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;node xmlns:inv="urn:opendaylight:inventory"&gt;/inv:nodes/inv:node[inv:id="openflow:1"]&lt;/node&gt;&lt;/input&gt; 
 </msg>
<msg time="2026-05-25T01:54:54.685385" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:54.685601" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=/rests/operations/sal-flow:remove-flow</arg>
<arg>data=${strxml}</arg>
<arg>expected_status=204</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:54.209634" elapsed="0.476007"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:54.688894" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:54.685992" elapsed="0.002965"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7f5acc091210&gt; is usually a variable created by
Create Flow Variables For Suite From XML File keyword from this library.</doc>
<status status="PASS" start="2026-05-25T01:54:54.204925" elapsed="0.484122"/>
</kw>
<arg>Delete Flow Via RPC</arg>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:54:54.204495" elapsed="0.484651"/>
</kw>
<var name="${flowfile}">f220.xml</var>
<status status="PASS" start="2026-05-25T01:54:54.190357" elapsed="0.498842"/>
</iter>
<var>${flowfile}</var>
<value>@{flowlist0}</value>
<status status="PASS" start="2026-05-25T01:54:29.577037" elapsed="25.112212"/>
</for>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.690174" level="INFO">Slept 3 seconds.</msg>
<arg>${flow_update_time}</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-05-25T01:54:54.689465" elapsed="3.000944"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:54:57.697039" level="INFO">dpctl dump-flows -O OpenFlow13</msg>
<arg>dpctl dump-flows -O OpenFlow13</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:54:57.690950" elapsed="0.006327"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:54:57.723245" level="INFO">*** s1 ------------------------------------------------------------------------
 cookie=0xa, duration=132.327s, table=0, n_packets=18, n_bytes=1380, send_flow_rem priority=0 actions=CONTROLLER:65535
mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:54:57.697634" elapsed="0.025676"/>
</kw>
<doc>Delete all flows and waits for SM to collect data</doc>
<status status="PASS" start="2026-05-25T01:54:29.576678" elapsed="28.146788"/>
</test>
<test id="s1-s3-s2-t103" name="Test Is Flow 1 Deleted" line="274">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:57.737033" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f1.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f1.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:57.737230" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:57.736881" elapsed="0.000444"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:57.737973" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc092480&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:57.737485" elapsed="0.000516"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:57.738461" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:57.738172" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:57.738916" level="INFO">${flow_id} = 124</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:57.738640" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:57.739394" level="INFO">${flow_priority} = 1</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:57.739120" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:57.740440" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:57.739573" elapsed="0.000899"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.740984" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:57.740639" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.741525" level="INFO">${flow_id} = 124</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:57.741198" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.742049" level="INFO">${flow_priority} = 1</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:57.741720" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.742576" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:57.742260" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.743116" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:57.742773" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.743634" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc092480&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:57.743314" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:57.736533" elapsed="0.007198"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.744307" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:57.743884" elapsed="0.000453"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.744732" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;124&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.1.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;1&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf1&lt;/flow-name&gt;
    &lt;priority&gt;1&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:57.744489" elapsed="0.000300"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.752560" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:57.752242" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:57.757890" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=124?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=124?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:57.758227" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=124?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:57.758428" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:57.752720" elapsed="0.005746"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.759096" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:57.758699" elapsed="0.000465"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.762278" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:57.759372" elapsed="0.002978"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:57.764974" elapsed="0.000051"/>
</return>
<status status="PASS" start="2026-05-25T01:54:57.762458" elapsed="0.002643"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:57.762424" elapsed="0.002723"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:57.765353" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:57.765676" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:57.765483" elapsed="0.000268"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:57.765459" elapsed="0.000323"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:57.765826" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:54:57.768119" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:57.768167" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 124 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:57.751900" elapsed="0.016291"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:57.770388" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:57.768740" elapsed="0.001695"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:57.768722" elapsed="0.001735"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.771052" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:57.770606" elapsed="0.000496"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.771631" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:57.771270" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:57.771728" elapsed="0.000035"/>
</return>
<msg time="2026-05-25T01:54:57.771928" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:57.768409" elapsed="0.003548"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:57.772142" elapsed="0.000405"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:57.751317" elapsed="0.021295"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.780482" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:57.780177" elapsed="0.000332"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:57.785463" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:57.785578" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:54:57.785682" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:57.780642" elapsed="0.005072"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.786387" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:57.785970" elapsed="0.000482"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.789782" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:57.786656" elapsed="0.003256"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:57.792547" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:57.790017" elapsed="0.002600"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:57.789988" elapsed="0.002661"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:57.799056" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:54:57.799128" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:57.792850" elapsed="0.006303"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:57.800993" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:57.799234" elapsed="0.001817"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:57.799214" elapsed="0.001883"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:57.801135" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:54:57.801336" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:54:57.801389" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 124 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:57.779773" elapsed="0.021641"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:57.803641" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:57.801976" elapsed="0.001711"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:57.801957" elapsed="0.001752"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.804305" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:57.803874" elapsed="0.000459"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.804879" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:57.804509" elapsed="0.000398"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:57.804957" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:54:57.805167" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:57.801637" elapsed="0.003557"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:57.805355" elapsed="0.000406"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:57.779151" elapsed="0.026676"/>
</kw>
<arg>f1.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:57.730875" elapsed="0.075011"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:57.723848" elapsed="0.082157"/>
</test>
<test id="s1-s3-s2-t104" name="Test Is Flow 2 Deleted" line="276">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:57.817036" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f2.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f2.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:57.817194" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:57.816892" elapsed="0.000333"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:57.817794" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4ae8e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:57.817380" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:57.818284" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:57.817980" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:57.818760" level="INFO">${flow_id} = 125</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:57.818469" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:57.819271" level="INFO">${flow_priority} = 2</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:57.818943" elapsed="0.000355"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:57.820262" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:57.819453" elapsed="0.000841"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.820808" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:57.820456" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.821415" level="INFO">${flow_id} = 125</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:57.821056" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.821960" level="INFO">${flow_priority} = 2</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:57.821620" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.822509" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:57.822176" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.823063" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:57.822718" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.823618" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4ae8e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:57.823289" elapsed="0.000372"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:57.816552" elapsed="0.007174"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.824297" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:57.823881" elapsed="0.000447"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.824737" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;125&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.0.0.1/32&lt;/ipv4-source&gt;
    &lt;/match&gt;
    &lt;cookie&gt;2&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf2&lt;/flow-name&gt;
    &lt;priority&gt;2&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:57.824483" elapsed="0.000317"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.832793" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:57.832491" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:57.837605" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=125?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=125?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:57.837866" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=125?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:57.838017" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:57.832959" elapsed="0.005096"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.838672" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:57.838315" elapsed="0.000423"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.841882" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:57.838951" elapsed="0.003003"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:57.844563" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:54:57.842065" elapsed="0.002589"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:57.842035" elapsed="0.002653"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:57.844894" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:57.845311" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:57.845111" elapsed="0.000275"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:57.845052" elapsed="0.000366"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:57.845463" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:54:57.847767" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:57.847814" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 125 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:57.832171" elapsed="0.015666"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:57.849992" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:57.848409" elapsed="0.001630"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:57.848390" elapsed="0.001670"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.850635" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:57.850233" elapsed="0.000430"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.851228" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:57.850827" elapsed="0.000429"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:57.851307" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:54:57.851487" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:57.848051" elapsed="0.003461"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:57.851672" elapsed="0.000385"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:57.831583" elapsed="0.020558"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.860009" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:57.859711" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:57.864345" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:57.864456" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:54:57.864554" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:57.860184" elapsed="0.004395"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.864991" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:57.864739" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.867613" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:57.865207" elapsed="0.002470"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:57.870291" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:57.867784" elapsed="0.002576"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:57.867755" elapsed="0.002638"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:57.874155" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:54:57.874221" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:57.870603" elapsed="0.003651"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:57.876486" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:57.874364" elapsed="0.002182"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:57.874335" elapsed="0.002242"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:57.876616" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:54:57.876813" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:54:57.876858" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 125 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:57.859329" elapsed="0.017552"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:57.879110" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:57.877492" elapsed="0.001665"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:57.877474" elapsed="0.001705"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.879750" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:57.879328" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.880320" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:57.879944" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:57.880398" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:54:57.880580" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:57.877156" elapsed="0.003452"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:57.880774" elapsed="0.000407"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:57.858669" elapsed="0.022578"/>
</kw>
<arg>f2.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:57.813256" elapsed="0.068049"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:57.806307" elapsed="0.075109"/>
</test>
<test id="s1-s3-s2-t105" name="Test Is Flow 3 Deleted" line="278">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:57.892446" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f3.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f3.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:57.892582" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:57.892309" elapsed="0.000302"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:57.893198" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1d030&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:57.892767" elapsed="0.000459"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:57.893666" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:57.893382" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:57.894149" level="INFO">${flow_id} = 126</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:57.893854" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:57.894603" level="INFO">${flow_priority} = 3</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:57.894329" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:57.896924" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:57.894779" elapsed="0.002194"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.897516" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:57.897168" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.898110" level="INFO">${flow_id} = 126</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:57.897720" elapsed="0.000439"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.898654" level="INFO">${flow_priority} = 3</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:57.898318" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.899291" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:57.898852" elapsed="0.000486"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.899853" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:57.899495" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.900529" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1d030&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:57.900194" elapsed="0.000378"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:57.891958" elapsed="0.008670"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.901229" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:57.900778" elapsed="0.000483"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.901661" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;126&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:00:01&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;3&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf3&lt;/flow-name&gt;
    &lt;priority&gt;3&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:57.901415" elapsed="0.000304"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.909641" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:57.909332" elapsed="0.000336"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:57.913873" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=126?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=126?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:57.914099" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=126?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:57.914240" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:57.909805" elapsed="0.004473"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.914699" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:57.914442" elapsed="0.000303"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.917034" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:57.914895" elapsed="0.002215"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:57.918972" elapsed="0.000031"/>
</return>
<status status="PASS" start="2026-05-25T01:54:57.917186" elapsed="0.001856"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:57.917164" elapsed="0.001955"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:57.919278" elapsed="0.000033"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:57.919549" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:57.919410" elapsed="0.000191"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:57.919388" elapsed="0.000236"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:57.919663" elapsed="0.000018"/>
</return>
<msg time="2026-05-25T01:54:57.922007" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:57.922092" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 126 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:57.908945" elapsed="0.013184"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:57.925280" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:57.922961" elapsed="0.002384"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:57.922935" elapsed="0.002440"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.926223" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:57.925627" elapsed="0.000684"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.927181" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:57.926586" elapsed="0.000634"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:57.927292" elapsed="0.000041"/>
</return>
<msg time="2026-05-25T01:54:57.927559" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:57.922488" elapsed="0.005107"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:57.927821" elapsed="0.000415"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:57.908384" elapsed="0.019919"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.936262" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:57.935942" elapsed="0.000347"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:57.941548" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:57.941663" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:54:57.941758" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:57.936420" elapsed="0.005363"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.942219" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:57.941941" elapsed="0.000322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.945012" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:57.942406" elapsed="0.002702"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:57.947674" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:57.945210" elapsed="0.002536"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:57.945182" elapsed="0.002596"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:57.951496" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:54:57.951561" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:57.947983" elapsed="0.003612"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:57.953491" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:57.951721" elapsed="0.001828"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:57.951687" elapsed="0.001886"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:57.953606" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:54:57.953809" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:54:57.953853" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 126 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:57.935523" elapsed="0.018353"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:57.956060" elapsed="0.000033"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:57.954450" elapsed="0.001677"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:57.954433" elapsed="0.001716"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.956709" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:57.956299" elapsed="0.000437"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.957283" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:57.956899" elapsed="0.000411"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:57.957362" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:57.957586" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:57.954115" elapsed="0.003498"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:57.957772" elapsed="0.000416"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:57.934851" elapsed="0.023404"/>
</kw>
<arg>f3.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:57.888579" elapsed="0.069735"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:57.881678" elapsed="0.076758"/>
</test>
<test id="s1-s3-s2-t106" name="Test Is Flow 4 Deleted" line="280">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:57.969625" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f4.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f4.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:57.969779" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:57.969481" elapsed="0.000327"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:57.970405" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc092340&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:57.969961" elapsed="0.000473"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:57.970877" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:57.970591" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:57.971400" level="INFO">${flow_id} = 127</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:57.971059" elapsed="0.000368"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:57.971865" level="INFO">${flow_priority} = 4</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:57.971582" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:57.972881" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:57.972045" elapsed="0.000868"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.973437" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:57.973089" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.973967" level="INFO">${flow_id} = 127</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:57.973639" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.974522" level="INFO">${flow_priority} = 4</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:57.974182" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.975035" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:57.974718" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.975602" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:57.975267" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.976143" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc092340&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:57.975805" elapsed="0.000382"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:57.969138" elapsed="0.007105"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.976799" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:57.976404" elapsed="0.000425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.977250" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;127&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;4&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf4&lt;/flow-name&gt;
    &lt;priority&gt;4&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:57.976982" elapsed="0.000363"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.985164" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:57.984803" elapsed="0.000389"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:57.989508" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=127?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=127?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:57.989733" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=127?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:57.989836" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:57.985326" elapsed="0.004536"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.990310" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:57.990024" elapsed="0.000332"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.992598" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:57.990503" elapsed="0.002160"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:57.994491" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-05-25T01:54:57.992737" elapsed="0.001821"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:57.992717" elapsed="0.001866"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:57.994741" elapsed="0.000024"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:57.994973" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:57.994836" elapsed="0.000190"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:57.994819" elapsed="0.000230"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:57.995138" elapsed="0.000017"/>
</return>
<msg time="2026-05-25T01:54:57.996776" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:57.996823" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 127 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:57.984465" elapsed="0.012381"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:57.999004" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:57.997408" elapsed="0.001642"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:57.997390" elapsed="0.001748"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:57.999722" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:57.999313" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.000518" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.000003" elapsed="0.000552"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:58.000625" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:54:58.000876" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:57.997058" elapsed="0.003852"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:58.001148" elapsed="0.000530"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:57.983886" elapsed="0.017881"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.012353" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:58.012044" elapsed="0.000336"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:58.017439" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:58.017583" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:54:58.017682" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:58.012510" elapsed="0.005199"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.018143" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.017870" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.020809" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.018332" elapsed="0.002548"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.023436" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.020978" elapsed="0.002526"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.020950" elapsed="0.002586"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:58.027208" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:54:58.027272" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:58.023730" elapsed="0.003576"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:58.029187" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:58.027414" elapsed="0.001830"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.027387" elapsed="0.001880"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:58.029300" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:58.029491" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:54:58.029534" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 127 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:58.011645" elapsed="0.017912"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.031695" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.030117" elapsed="0.001623"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.030098" elapsed="0.001664"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.032327" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.031907" elapsed="0.000448"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.032872" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.032517" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:58.032949" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:58.033148" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:58.029773" elapsed="0.003401"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:58.033332" elapsed="0.000379"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:58.010749" elapsed="0.023026"/>
</kw>
<arg>f4.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:57.965830" elapsed="0.068000"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:57.958734" elapsed="0.075207"/>
</test>
<test id="s1-s3-s2-t107" name="Test Is Flow 5 Deleted" line="282">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:58.044919" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f5.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f5.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:58.045049" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:58.044784" elapsed="0.000310"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:58.045653" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d4360&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:58.045248" elapsed="0.000433"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.046176" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.045836" elapsed="0.000367"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.046631" level="INFO">${flow_id} = 128</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.046358" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.047093" level="INFO">${flow_priority} = 5</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.046809" elapsed="0.000320"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:58.048114" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:58.047282" elapsed="0.000865"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.048639" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.048305" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.049174" level="INFO">${flow_id} = 128</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.048836" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.049698" level="INFO">${flow_priority} = 5</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.049372" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.050220" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.049892" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.050737" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.050418" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.051290" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d4360&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.050934" elapsed="0.000398"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:58.044457" elapsed="0.006931"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.051918" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.051538" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.052359" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;128&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:00:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;5&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;5&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.052117" elapsed="0.000302"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.060214" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:58.059899" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:58.064518" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=128?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=128?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:58.064716" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=128?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:58.064846" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:58.060370" elapsed="0.004503"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.065322" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.065035" elapsed="0.000335"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.067614" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.065515" elapsed="0.002155"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:58.070236" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:54:58.067769" elapsed="0.002558"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.067735" elapsed="0.002630"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:58.070577" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:58.070895" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:58.070705" elapsed="0.000261"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:58.070682" elapsed="0.000316"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.071042" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:58.073389" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:58.073451" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 128 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:58.059586" elapsed="0.013897"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.076287" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.074253" elapsed="0.002081"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.074227" elapsed="0.002128"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.076897" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.076501" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.077449" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.077099" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:58.077534" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:54:58.077714" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:58.073771" elapsed="0.003968"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:58.077895" elapsed="0.000400"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:58.058982" elapsed="0.019375"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.086148" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:58.085834" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:58.091353" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:58.091461" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:54:58.091557" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:58.086306" elapsed="0.005275"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.092151" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.091779" elapsed="0.000435"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.095452" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.092414" elapsed="0.003167"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.098174" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.095684" elapsed="0.002557"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.095654" elapsed="0.002618"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:58.102057" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:54:58.102143" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:58.098483" elapsed="0.003693"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:58.104479" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:58.102284" elapsed="0.002251"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.102257" elapsed="0.002301"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:58.104590" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:58.104788" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:54:58.104832" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 128 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:58.085458" elapsed="0.019397"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.107023" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.105411" elapsed="0.001673"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.105392" elapsed="0.001715"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.107720" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.107275" elapsed="0.000476"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.108327" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.107916" elapsed="0.000437"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:58.108403" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:58.108581" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:58.105079" elapsed="0.003527"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:58.108762" elapsed="0.000399"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:58.084834" elapsed="0.024391"/>
</kw>
<arg>f5.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:58.041162" elapsed="0.068120"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:58.034373" elapsed="0.075022"/>
</test>
<test id="s1-s3-s2-t108" name="Test Is Flow 6 Deleted" line="284">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:58.120201" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f6.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f6.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:58.120336" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:58.120049" elapsed="0.000315"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:58.120921" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38b510&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:58.120516" elapsed="0.000433"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.121395" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.121117" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.121842" level="INFO">${flow_id} = 129</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.121573" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.122345" level="INFO">${flow_priority} = 6</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.122034" elapsed="0.000338"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:58.123381" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:58.122525" elapsed="0.000888"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.123913" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.123571" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.124494" level="INFO">${flow_id} = 129</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.124167" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.125015" level="INFO">${flow_priority} = 6</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.124690" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.125539" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.125225" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.126051" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.125735" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.126584" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38b510&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.126263" elapsed="0.000363"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:58.119718" elapsed="0.006962"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.127251" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.126829" elapsed="0.000452"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.127675" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;129&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;40.4.0.0/16&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;6&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf5&lt;/flow-name&gt;
    &lt;priority&gt;6&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.127433" elapsed="0.000302"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.135375" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:58.135034" elapsed="0.000369"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:58.139578" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=129?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=129?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:58.139777" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=129?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:58.139876" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:58.135534" elapsed="0.004367"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.140349" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.140061" elapsed="0.000333"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.142580" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.140539" elapsed="0.002092"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:58.144828" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-05-25T01:54:58.142701" elapsed="0.002219"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.142681" elapsed="0.002273"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:58.145219" elapsed="0.000033"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:58.145538" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:58.145350" elapsed="0.000259"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:58.145327" elapsed="0.000314"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.145686" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:58.148047" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:58.148137" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 129 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:58.134719" elapsed="0.013453"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.151307" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.148979" elapsed="0.002393"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.148952" elapsed="0.002453"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.152126" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.151657" elapsed="0.000496"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.152682" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.152318" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:58.152760" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:54:58.152938" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:58.148508" elapsed="0.004456"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:58.153140" elapsed="0.000443"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:58.134163" elapsed="0.019504"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.161608" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:58.161299" elapsed="0.000336"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:58.167120" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:58.167262" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:54:58.167372" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:58.161765" elapsed="0.005634"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.167822" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.167559" elapsed="0.000309"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.169983" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.168012" elapsed="0.002024"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.171991" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.170125" elapsed="0.001934"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.170104" elapsed="0.002008"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:58.175995" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:54:58.176060" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:58.172311" elapsed="0.003806"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:58.179140" elapsed="0.000085"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:58.176228" elapsed="0.003060"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.176200" elapsed="0.003131"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:58.179383" elapsed="0.000044"/>
</return>
<msg time="2026-05-25T01:54:58.179742" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:54:58.179799" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 129 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:58.160898" elapsed="0.018930"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.182202" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.180519" elapsed="0.001731"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.180498" elapsed="0.001774"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.182888" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.182424" elapsed="0.000497"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.183521" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.183131" elapsed="0.000418"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:58.183600" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:54:58.183818" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:58.180125" elapsed="0.003722"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:58.184007" elapsed="0.000420"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:58.160284" elapsed="0.024207"/>
</kw>
<arg>f6.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:58.116377" elapsed="0.068173"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:58.109567" elapsed="0.075106"/>
</test>
<test id="s1-s3-s2-t109" name="Test Is Flow 7 Deleted" line="286">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:58.195549" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f7.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f7.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:58.195704" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:58.195407" elapsed="0.000326"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:58.196340" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7d9e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:58.195887" elapsed="0.000481"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.196808" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.196525" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.197281" level="INFO">${flow_id} = 130</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.196989" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.197733" level="INFO">${flow_priority} = 7</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.197461" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:58.198849" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:58.197911" elapsed="0.000969"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.199492" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.199041" elapsed="0.000496"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.200056" level="INFO">${flow_id} = 130</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.199696" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.200596" level="INFO">${flow_priority} = 7</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.200270" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.201118" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.200793" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.201634" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.201315" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.202208" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7d9e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.201872" elapsed="0.000379"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:58.195040" elapsed="0.007266"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.202843" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.202456" elapsed="0.000417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.203294" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;130&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:ff:aa&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;15&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;7&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf7&lt;/flow-name&gt;
    &lt;priority&gt;7&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.203022" elapsed="0.000335"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.210973" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:58.210677" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:58.215465" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=130?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=130?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:58.215679" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=130?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:58.215777" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:58.211147" elapsed="0.004656"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.216242" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.215964" elapsed="0.000323"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.218584" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.216432" elapsed="0.002204"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:58.220474" elapsed="0.000032"/>
</return>
<status status="PASS" start="2026-05-25T01:54:58.218715" elapsed="0.001829"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.218693" elapsed="0.001876"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:58.220716" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:58.220943" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:58.220808" elapsed="0.000186"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:58.220791" elapsed="0.000226"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.221049" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:58.222654" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:58.222700" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 130 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:58.210363" elapsed="0.012361"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.224923" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.223352" elapsed="0.001618"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.223334" elapsed="0.001658"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.225568" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.225157" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.226180" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.225794" elapsed="0.000413"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:58.226257" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:54:58.226439" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:58.222938" elapsed="0.003528"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:58.226623" elapsed="0.000389"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:58.209797" elapsed="0.017295"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.235010" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:58.234708" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:58.240713" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:58.240828" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:54:58.240937" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:58.235215" elapsed="0.005748"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.241405" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.241150" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.243629" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.241597" elapsed="0.002084"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.246205" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.243751" elapsed="0.002521"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.243731" elapsed="0.002572"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:58.250148" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:54:58.250215" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:58.246494" elapsed="0.003753"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:58.252484" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:58.250354" elapsed="0.002186"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.250328" elapsed="0.002236"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:58.252597" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:58.252794" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:54:58.252837" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 130 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:58.234327" elapsed="0.018533"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.254988" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.253414" elapsed="0.001619"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.253397" elapsed="0.001658"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.255635" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.255238" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.256237" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.255865" elapsed="0.000399"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:58.256315" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:58.256492" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:58.253084" elapsed="0.003433"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:58.256675" elapsed="0.000387"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:58.233691" elapsed="0.023452"/>
</kw>
<arg>f7.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:58.191786" elapsed="0.065414"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:58.184870" elapsed="0.072450"/>
</test>
<test id="s1-s3-s2-t110" name="Test Is Flow 8 Deleted" line="288">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:58.268212" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f8.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f8.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:58.268356" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:58.268054" elapsed="0.000331"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:58.268969" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38ab10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:58.268537" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.269455" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.269169" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.269905" level="INFO">${flow_id} = 131</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.269633" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.270373" level="INFO">${flow_priority} = 8</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.270100" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:58.271342" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:58.270551" elapsed="0.000822"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.271867" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.271532" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.272404" level="INFO">${flow_id} = 131</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.272078" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.272924" level="INFO">${flow_priority} = 8</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.272599" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.273454" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.273138" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.273969" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.273651" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.274503" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38ab10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.274183" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:58.267723" elapsed="0.006876"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.275150" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.274750" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.275641" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;131&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:00&lt;/address&gt;
                &lt;mask&gt;ff:ff:ff:ff:ff:00&lt;/mask&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;8&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf8&lt;/flow-name&gt;
    &lt;priority&gt;8&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.275395" elapsed="0.000310"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.283394" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:58.283037" elapsed="0.000384"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:58.287884" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=131?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=131?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:58.288096" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=131?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:58.288205" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:58.283552" elapsed="0.004679"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.288645" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.288393" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.291035" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.288832" elapsed="0.002271"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:58.293477" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-05-25T01:54:58.291173" elapsed="0.002395"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.291154" elapsed="0.002448"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:58.293801" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:58.294137" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:58.293927" elapsed="0.000283"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:58.293904" elapsed="0.000338"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.294286" elapsed="0.000021"/>
</return>
<msg time="2026-05-25T01:54:58.296596" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:58.296660" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 131 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:58.282722" elapsed="0.013971"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.299719" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.297472" elapsed="0.002320"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.297445" elapsed="0.002386"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.300451" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.300032" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.300997" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.300644" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:58.301132" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:54:58.301316" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:58.296988" elapsed="0.004354"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:58.301498" elapsed="0.000392"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:58.282170" elapsed="0.019784"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.309773" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:58.309472" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:58.315395" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:58.315503" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:54:58.315597" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:58.309934" elapsed="0.005688"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.316281" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.315843" elapsed="0.000502"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.319303" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.316546" elapsed="0.002827"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.321877" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.319469" elapsed="0.002475"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.319442" elapsed="0.002532"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:58.325810" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:54:58.325873" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:58.322184" elapsed="0.003721"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:58.329884" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:58.326011" elapsed="0.003930"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.325985" elapsed="0.003981"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:58.329999" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:58.330207" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:54:58.330252" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 131 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:58.309088" elapsed="0.021187"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.332403" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.330813" elapsed="0.001635"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.330796" elapsed="0.001674"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.333014" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.332617" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.333570" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.333220" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:58.333645" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:58.333819" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:58.330486" elapsed="0.003358"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:58.333998" elapsed="0.000397"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:58.308460" elapsed="0.026035"/>
</kw>
<arg>f8.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:58.264291" elapsed="0.070260"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:58.257507" elapsed="0.077153"/>
</test>
<test id="s1-s3-s2-t111" name="Test Is Flow 9 Deleted" line="290">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:58.345369" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f9.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f9.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:58.345499" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:58.345235" elapsed="0.000292"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:58.346111" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc304b30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:58.345678" elapsed="0.000461"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.346571" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.346293" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.347017" level="INFO">${flow_id} = 132</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.346748" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.347502" level="INFO">${flow_priority} = 9</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.347211" elapsed="0.000317"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:58.348420" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:58.347678" elapsed="0.000773"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.348946" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.348609" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.349480" level="INFO">${flow_id} = 132</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.349158" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.349998" level="INFO">${flow_priority} = 9</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.349674" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.350519" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.350207" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.351032" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.350715" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.351591" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc304b30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.351267" elapsed="0.000365"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:58.344895" elapsed="0.006791"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.352231" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.351836" elapsed="0.000425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.352654" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;132&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.1.0.0/16&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.5.0/24&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;9&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf9&lt;/flow-name&gt;
    &lt;priority&gt;9&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.352412" elapsed="0.000340"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.360585" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:58.360289" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:58.364998" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=132?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=132?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:58.365216" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=132?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:58.365315" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:58.360742" elapsed="0.004599"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.365752" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.365499" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.368173" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.365940" elapsed="0.002304"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:58.370753" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:54:58.368342" elapsed="0.002501"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.368314" elapsed="0.002563"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:58.371092" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:58.371422" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:58.371220" elapsed="0.000274"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:58.371197" elapsed="0.000328"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.371569" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:58.373813" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:58.373875" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 132 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:58.359957" elapsed="0.013950"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.376626" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.374680" elapsed="0.001991"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.374655" elapsed="0.002038"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.377253" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.376841" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.377790" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.377442" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:58.377865" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:58.378040" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:58.374219" elapsed="0.003863"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:58.378241" elapsed="0.000384"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:58.359406" elapsed="0.019281"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.386400" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:58.386104" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:58.392803" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:58.392956" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:54:58.393053" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:58.386555" elapsed="0.006545"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.393513" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.393261" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.395855" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.393699" elapsed="0.002230"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.398497" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.396050" elapsed="0.002514"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.396015" elapsed="0.002581"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:58.402465" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:54:58.402529" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:58.398789" elapsed="0.003772"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:58.404791" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:58.402667" elapsed="0.002180"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.402641" elapsed="0.002230"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:58.404904" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:58.405117" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:54:58.405162" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 132 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:58.385709" elapsed="0.019475"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.407326" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.405726" elapsed="0.001645"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.405708" elapsed="0.001685"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.407941" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.407540" elapsed="0.000428"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.408495" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.408145" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:58.408570" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:58.408746" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:58.405398" elapsed="0.003372"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:58.408927" elapsed="0.000400"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:58.385101" elapsed="0.024290"/>
</kw>
<arg>f9.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:58.341602" elapsed="0.067844"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:58.334831" elapsed="0.074729"/>
</test>
<test id="s1-s3-s2-t112" name="Test Is Flow 10 Deleted" line="292">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:58.420296" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f10.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f10.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:58.420437" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:58.420157" elapsed="0.000309"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:58.421045" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7d6c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:58.420620" elapsed="0.000468"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.421565" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.421281" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.422018" level="INFO">${flow_id} = 133</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.421744" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.422486" level="INFO">${flow_priority} = 10</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.422212" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:58.423604" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:58.422661" elapsed="0.000975"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.424145" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.423795" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.424665" level="INFO">${flow_id} = 133</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.424343" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.425200" level="INFO">${flow_priority} = 10</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.424860" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.425706" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.425394" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.426233" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.425900" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.426750" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7d6c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.426430" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:58.419814" elapsed="0.007031"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.427414" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.426993" elapsed="0.000451"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.427835" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;133&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;10&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf10&lt;/flow-name&gt;
    &lt;priority&gt;10&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.427596" elapsed="0.000302"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.435547" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:58.435226" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:58.440508" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=133?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=133?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:58.440707" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=133?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:58.440836" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:58.435703" elapsed="0.005160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.441300" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.441023" elapsed="0.000323"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.443593" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.441489" elapsed="0.002162"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:58.446217" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:54:58.443742" elapsed="0.002566"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.443712" elapsed="0.002629"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:58.446538" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:58.446853" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:58.446664" elapsed="0.000260"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:58.446641" elapsed="0.000314"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.446999" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:58.449369" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:58.449432" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 133 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:58.434893" elapsed="0.014570"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.452386" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.450240" elapsed="0.002191"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.450215" elapsed="0.002238"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.452992" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.452599" elapsed="0.000420"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.453551" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.453200" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:58.453627" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:58.453803" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:58.449759" elapsed="0.004069"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:58.453984" elapsed="0.000397"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:58.434343" elapsed="0.020100"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.462185" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:58.461873" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:58.467201" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:58.467341" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:54:58.467448" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:58.462341" elapsed="0.005132"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.467967" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.467633" elapsed="0.000396"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.470991" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.468253" elapsed="0.002877"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.473680" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.471232" elapsed="0.002521"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.471204" elapsed="0.002580"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:58.477192" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:54:58.477238" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:58.473977" elapsed="0.003284"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:58.479027" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:58.477338" elapsed="0.001759"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.477320" elapsed="0.001802"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:58.479156" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:58.479360" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:54:58.479403" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 133 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:58.461493" elapsed="0.017933"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.481562" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.479972" elapsed="0.001634"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.479953" elapsed="0.001675"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.482190" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.481776" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.482734" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.482382" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:58.482811" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:58.482990" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:58.479636" elapsed="0.003379"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:58.483189" elapsed="0.000413"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:58.460869" elapsed="0.022797"/>
</kw>
<arg>f10.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:58.416555" elapsed="0.067167"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:58.409742" elapsed="0.074087"/>
</test>
<test id="s1-s3-s2-t113" name="Test Is Flow 11 Deleted" line="294">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:58.494545" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f11.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f11.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:58.494676" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:58.494411" elapsed="0.000294"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:58.495286" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38aed0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:58.494853" elapsed="0.000475"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.495755" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.495480" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.496218" level="INFO">${flow_id} = 134</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.495932" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.496663" level="INFO">${flow_priority} = 11</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.496397" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:58.497761" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:58.496837" elapsed="0.000955"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.498296" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.497949" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.498864" level="INFO">${flow_id} = 134</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.498536" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.499428" level="INFO">${flow_priority} = 11</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.499060" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.499937" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.499623" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.500468" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.500148" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.500985" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38aed0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.500665" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:58.494081" elapsed="0.007017"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.501634" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.501253" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.502061" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;134&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x800&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;1&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;27&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv4-match&gt;
            &lt;icmpv4-type&gt;6&lt;/icmpv4-type&gt;
            &lt;icmpv4-code&gt;3&lt;/icmpv4-code&gt;
        &lt;/icmpv4-match&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;11&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf11&lt;/flow-name&gt;
    &lt;priority&gt;11&lt;/priority&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.501821" elapsed="0.000320"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.509775" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:58.509481" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:58.515909" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=134?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=134?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:58.516223" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=134?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:58.516360" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:58.509932" elapsed="0.006463"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.516964" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.516615" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.520120" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.517247" elapsed="0.002946"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:58.522772" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-05-25T01:54:58.520329" elapsed="0.002535"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.520262" elapsed="0.002637"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:58.523119" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:58.523455" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:58.523249" elapsed="0.000280"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:58.523226" elapsed="0.000335"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.523606" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:58.525893" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:58.525956" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 134 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:58.509164" elapsed="0.016825"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.528706" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.526762" elapsed="0.001990"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.526737" elapsed="0.002038"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.529331" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.528920" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.529870" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.529520" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:58.529946" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:58.530141" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:58.526301" elapsed="0.003866"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:58.530324" elapsed="0.000379"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:58.508591" elapsed="0.022181"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.538671" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:58.538376" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:58.544842" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:58.544993" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:54:58.545167" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:58.538828" elapsed="0.006375"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.545776" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.545425" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.548792" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.546035" elapsed="0.002826"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.551423" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.548957" elapsed="0.002533"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.548929" elapsed="0.002592"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:58.554540" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:54:58.554587" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:58.551714" elapsed="0.002896"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:58.556402" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:58.554687" elapsed="0.001809"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.554668" elapsed="0.001855"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:58.556557" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:58.556751" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:54:58.556794" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 134 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:58.537981" elapsed="0.018836"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.558956" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.557377" elapsed="0.001624"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.557359" elapsed="0.001665"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.559610" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.559185" elapsed="0.000453"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.560170" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.559803" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:58.560247" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:58.560424" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:58.557029" elapsed="0.003420"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:58.560605" elapsed="0.000383"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:58.537371" elapsed="0.023680"/>
</kw>
<arg>f11.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:58.490771" elapsed="0.070355"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:58.484000" elapsed="0.077236"/>
</test>
<test id="s1-s3-s2-t114" name="Test Is Flow 14 Deleted" line="296">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:58.572093" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f14.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f14.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:58.572225" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:58.571944" elapsed="0.000310"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:58.572824" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc388720&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:58.572406" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.573301" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.573005" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.573751" level="INFO">${flow_id} = 137</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.573480" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.574215" level="INFO">${flow_priority} = 14</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.573928" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:58.575137" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:58.574393" elapsed="0.000774"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.575689" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.575355" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.576225" level="INFO">${flow_id} = 137</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.575887" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.576749" level="INFO">${flow_priority} = 14</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.576423" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.577273" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.576943" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.577833" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.577509" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.578373" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc388720&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.578031" elapsed="0.000384"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:58.571612" elapsed="0.006858"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.579003" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.578621" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.579458" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;137&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;0x806&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:ff:ff:FF:ff&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:FC:01:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;arp-op&gt;1&lt;/arp-op&gt;
        &lt;arp-source-transport-address&gt;192.168.4.1/32&lt;/arp-source-transport-address&gt;
        &lt;arp-target-transport-address&gt;10.21.22.23/32&lt;/arp-target-transport-address&gt;
        &lt;arp-source-hardware-address&gt;
            &lt;address&gt;12:34:56:78:98:AB&lt;/address&gt;
        &lt;/arp-source-hardware-address&gt;
        &lt;arp-target-hardware-address&gt;
            &lt;address&gt;FE:DC:BA:98:76:54&lt;/address&gt;
        &lt;/arp-target-hardware-address&gt;
    &lt;/match&gt;
    &lt;cookie&gt;14&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf14&lt;/flow-name&gt;
    &lt;priority&gt;14&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.579201" elapsed="0.000321"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.587165" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:58.586853" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:58.593115" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=137?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=137?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:58.593388" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=137?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:58.593539" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:58.587323" elapsed="0.006252"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.594176" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.593802" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.597531" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.594450" elapsed="0.003152"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:58.600169" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-05-25T01:54:58.597700" elapsed="0.002561"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.597673" elapsed="0.002622"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:58.600491" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:58.600803" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:58.600617" elapsed="0.000258"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:58.600594" elapsed="0.000313"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.600951" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:58.603277" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:58.603602" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 137 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:58.586538" elapsed="0.017204"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.606012" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.604433" elapsed="0.001626"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.604414" elapsed="0.001683"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.606653" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.606248" elapsed="0.000432"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.607213" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.606845" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:58.607291" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:58.607483" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:58.604057" elapsed="0.003451"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:58.607666" elapsed="0.000380"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:58.585969" elapsed="0.022158"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.615852" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:58.615556" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:58.621876" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:58.622028" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:54:58.622190" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:58.616008" elapsed="0.006219"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.622798" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.622451" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.625805" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.623057" elapsed="0.002822"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.628424" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.625976" elapsed="0.002515"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.625948" elapsed="0.002574"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:58.632252" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:54:58.632316" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:58.628711" elapsed="0.003637"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:58.635038" elapsed="0.000055"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:58.632454" elapsed="0.002688"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.632428" elapsed="0.002748"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:58.635223" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:54:58.635524" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:54:58.635586" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 137 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:58.615167" elapsed="0.020451"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.637839" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.636273" elapsed="0.001651"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.636255" elapsed="0.001695"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.638515" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.638116" elapsed="0.000426"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.639052" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.638703" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:58.639146" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:58.639323" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:58.635925" elapsed="0.003432"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:58.639514" elapsed="0.000382"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:58.614541" elapsed="0.025418"/>
</kw>
<arg>f14.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:58.568176" elapsed="0.071839"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:58.561407" elapsed="0.078732"/>
</test>
<test id="s1-s3-s2-t115" name="Test Is Flow 15 Deleted" line="298">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:58.650784" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f15.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f15.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:58.650912" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:58.650645" elapsed="0.000297"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:58.651549" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d4220&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:58.651109" elapsed="0.000468"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.652006" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.651730" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.652470" level="INFO">${flow_id} = 138</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.652201" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.652918" level="INFO">${flow_priority} = 15</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.652645" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:58.653766" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:58.653108" elapsed="0.000688"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.654296" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.653951" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.654808" level="INFO">${flow_id} = 138</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.654489" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.655340" level="INFO">${flow_priority} = 15</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.654998" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.655896" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.655549" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.656422" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.656105" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.656932" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d4220&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.656615" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:58.650317" elapsed="0.006711"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.657625" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.657240" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.658048" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;138&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;15&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf15&lt;/flow-name&gt;
    &lt;priority&gt;15&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.657808" elapsed="0.000321"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.666122" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:58.665806" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:58.672544" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=138?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=138?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:58.672742" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=138?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:58.672839" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:58.666282" elapsed="0.006582"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.673301" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.673024" elapsed="0.000321"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.675572" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.673490" elapsed="0.002134"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:58.678186" elapsed="0.000038"/>
</return>
<status status="PASS" start="2026-05-25T01:54:58.675709" elapsed="0.002568"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.675684" elapsed="0.002627"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:58.678508" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:58.678823" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:58.678635" elapsed="0.000258"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:58.678612" elapsed="0.000313"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.678968" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:54:58.681277" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:58.681340" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 138 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:58.665492" elapsed="0.015880"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.684307" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.682146" elapsed="0.002207"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.682120" elapsed="0.002255"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.684915" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.684519" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.685505" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.685151" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:58.685582" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:58.685759" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:58.681664" elapsed="0.004120"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:58.685939" elapsed="0.000399"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:58.664925" elapsed="0.021477"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.694053" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:58.693759" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:58.699922" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:58.700031" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:54:58.700146" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:58.694227" elapsed="0.005946"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.700589" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.700332" elapsed="0.000302"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.702900" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.700781" elapsed="0.002170"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.705275" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.703021" elapsed="0.002322"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.703002" elapsed="0.002372"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:58.709100" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:54:58.709168" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:58.705570" elapsed="0.003631"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:58.711687" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:58.709308" elapsed="0.002438"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.709282" elapsed="0.002487"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:58.711802" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:58.711994" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:54:58.712037" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 138 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:58.693383" elapsed="0.018677"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.714199" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.712613" elapsed="0.001631"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.712596" elapsed="0.001670"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.714806" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.714411" elapsed="0.000421"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.715363" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.714994" elapsed="0.000406"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:58.715451" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:54:58.715629" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:58.712288" elapsed="0.003366"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:58.715854" elapsed="0.000404"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:58.692756" elapsed="0.023566"/>
</kw>
<arg>f15.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:58.647045" elapsed="0.069333"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:58.640311" elapsed="0.076177"/>
</test>
<test id="s1-s3-s2-t116" name="Test Is Flow 16 Deleted" line="300">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:58.727192" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f16.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f16.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:58.727333" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:58.727042" elapsed="0.000321"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:58.727945" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35bfb0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:58.727545" elapsed="0.000428"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.728419" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.728142" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.728868" level="INFO">${flow_id} = 139</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.728599" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.729329" level="INFO">${flow_priority} = 16</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.729045" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:58.731664" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:58.729504" elapsed="0.002192"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.732235" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.731883" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.732753" level="INFO">${flow_id} = 139</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.732430" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.733293" level="INFO">${flow_priority} = 16</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.732945" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.733795" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.733484" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.734327" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.733989" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.734845" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35bfb0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.734521" elapsed="0.000365"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:58.726717" elapsed="0.008224"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.735509" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.735102" elapsed="0.000438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.735932" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf16&lt;/flow-name&gt;
    &lt;id&gt;139&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;16&lt;/cookie&gt;
    &lt;priority&gt;16&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;78&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.735692" elapsed="0.000335"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.743692" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:58.743366" elapsed="0.000353"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:58.749844" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:58.750038" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:58.750168" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:58.743848" elapsed="0.006346"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.750607" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.750353" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.753382" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.750799" elapsed="0.002655"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:58.756008" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-05-25T01:54:58.753552" elapsed="0.002569"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.753524" elapsed="0.002632"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:58.756354" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:58.756665" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:58.756479" elapsed="0.000257"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:58.756456" elapsed="0.000312"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.756812" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:58.759082" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:58.759148" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 139 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:58.743034" elapsed="0.016147"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.762191" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.759965" elapsed="0.002289"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.759940" elapsed="0.002345"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.763039" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.762489" elapsed="0.000609"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.763940" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.763325" elapsed="0.000642"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:58.764018" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:54:58.764219" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:58.759497" elapsed="0.004747"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:58.764403" elapsed="0.000383"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:58.742483" elapsed="0.022367"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.772653" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:58.772358" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:58.778439" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:58.778587" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:54:58.778686" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:58.772810" elapsed="0.005906"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.779152" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.778876" elapsed="0.000323"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.781527" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.779344" elapsed="0.002235"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.783394" elapsed="0.000026"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.781650" elapsed="0.001805"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.781630" elapsed="0.001848"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:58.786117" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:54:58.786164" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:58.783617" elapsed="0.002571"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:58.787985" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:58.786264" elapsed="0.001778"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.786245" elapsed="0.001834"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:58.788115" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:58.788309" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:54:58.788352" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 139 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:58.771966" elapsed="0.016409"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.790503" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.788922" elapsed="0.001626"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.788904" elapsed="0.001666"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.791136" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.790715" elapsed="0.000448"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.791695" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.791326" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:58.791771" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:58.791947" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:58.788587" elapsed="0.003385"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:58.792144" elapsed="0.000382"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:58.771324" elapsed="0.021267"/>
</kw>
<arg>f16.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:58.723481" elapsed="0.069166"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:58.716659" elapsed="0.076099"/>
</test>
<test id="s1-s3-s2-t117" name="Test Is Flow 17 Deleted" line="302">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:58.803458" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f17.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f17.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:58.803596" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:58.803300" elapsed="0.000324"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:58.804201" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc091b70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:58.803775" elapsed="0.000454"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.804705" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.804421" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.805178" level="INFO">${flow_id} = 140</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.804887" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.805629" level="INFO">${flow_priority} = 17</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.805357" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:58.806643" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:58.805805" elapsed="0.000870"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.807184" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.806833" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.807719" level="INFO">${flow_id} = 140</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.807382" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.808256" level="INFO">${flow_priority} = 17</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.807915" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.808762" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.808448" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.809293" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.808956" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.809815" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc091b70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.809491" elapsed="0.000365"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:58.802957" elapsed="0.006954"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.810458" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.810060" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.810878" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;flow-name&gt;FooXf17&lt;/flow-name&gt;
    &lt;id&gt;140&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;17&lt;/cookie&gt;
    &lt;priority&gt;17&lt;/priority&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34887&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;protocol-match-fields&gt;
            &lt;mpls-label&gt;567&lt;/mpls-label&gt;
            &lt;mpls-tc&gt;3&lt;/mpls-tc&gt;
            &lt;mpls-bos&gt;1&lt;/mpls-bos&gt;
        &lt;/protocol-match-fields&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.810639" elapsed="0.000299"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.818583" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:58.818286" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:58.824786" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=140?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=140?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:58.824977" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=140?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:58.825129" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:58.818739" elapsed="0.006417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.825568" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.825317" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.827823" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.825758" elapsed="0.002124"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:58.829683" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-05-25T01:54:58.827952" elapsed="0.001801"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.827932" elapsed="0.001846"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:58.829919" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:58.830159" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:58.830009" elapsed="0.000203"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:58.829993" elapsed="0.000241"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.830265" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:54:58.831880" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:58.831925" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 140 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:58.817953" elapsed="0.013995"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.834083" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.832507" elapsed="0.001624"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.832489" elapsed="0.001664"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.834689" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.834297" elapsed="0.000418"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.835241" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.834874" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:58.835316" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:58.835506" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:58.832176" elapsed="0.003356"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:58.835687" elapsed="0.000403"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:58.817397" elapsed="0.018758"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.843894" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:58.843590" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:58.850036" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:58.850165" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:54:58.850260" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:58.844050" elapsed="0.006236"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.850695" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.850445" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.853041" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.850881" elapsed="0.002348"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.855118" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.853303" elapsed="0.001864"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.853283" elapsed="0.001906"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:58.857944" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:54:58.857991" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:58.855330" elapsed="0.002684"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:58.859820" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:58.858106" elapsed="0.001774"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.858085" elapsed="0.001819"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:58.859936" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:58.860144" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:54:58.860188" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 140 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:58.843203" elapsed="0.017008"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.862326" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.860750" elapsed="0.001621"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.860732" elapsed="0.001660"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.862934" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.862539" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.863522" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.863141" elapsed="0.000408"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:58.863599" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:58.863776" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:58.860421" elapsed="0.003381"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:58.863957" elapsed="0.000400"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:58.842582" elapsed="0.021839"/>
</kw>
<arg>f17.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:58.799731" elapsed="0.064746"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:58.792935" elapsed="0.071652"/>
</test>
<test id="s1-s3-s2-t118" name="Test Is Flow 18 Deleted" line="304">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:58.875324" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f18.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f18.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:58.875467" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:58.875188" elapsed="0.000309"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:58.876045" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3061b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:58.875649" elapsed="0.000439"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.876521" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.876244" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.876970" level="INFO">${flow_id} = 141</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.876701" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.877434" level="INFO">${flow_priority} = 18</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.877163" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:58.878370" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:58.877611" elapsed="0.000790"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.878894" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.878560" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.879505" level="INFO">${flow_id} = 141</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.879151" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.880036" level="INFO">${flow_priority} = 18</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.879706" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.880568" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.880251" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.881102" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.880768" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.881625" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3061b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.881303" elapsed="0.000363"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:58.874841" elapsed="0.006880"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.882269" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.881871" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.882691" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf18&lt;/flow-name&gt;
    &lt;id&gt;141&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;18&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;18&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;aabb:1234:2acf:e9ff::/64&lt;/ipv6-destination&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.882451" elapsed="0.000298"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.890439" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:58.890129" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:58.895844" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=141?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=141?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:58.896034" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=141?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:58.896154" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:58.890597" elapsed="0.005583"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.896587" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.896338" elapsed="0.000293"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.898816" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.896774" elapsed="0.002092"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:58.900688" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-05-25T01:54:58.898935" elapsed="0.001818"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.898915" elapsed="0.001863"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:58.900919" elapsed="0.000021"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:58.901196" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:58.901042" elapsed="0.000206"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:58.901024" elapsed="0.000247"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.901303" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:54:58.902913" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:58.902959" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 141 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:58.889775" elapsed="0.013206"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.905136" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.903551" elapsed="0.001631"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.903534" elapsed="0.001670"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.905746" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.905352" elapsed="0.000421"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.906300" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.905936" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:58.906376" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:58.906552" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:58.903206" elapsed="0.003371"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:58.906733" elapsed="0.000397"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:58.889221" elapsed="0.017974"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.914957" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:58.914664" elapsed="0.000320"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:58.920086" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:58.920197" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:54:58.920292" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:58.915130" elapsed="0.005187"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.920727" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.920477" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.923039" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.920916" elapsed="0.002189"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.924945" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.923176" elapsed="0.001817"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.923156" elapsed="0.001859"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:58.927713" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:54:58.927759" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:58.925169" elapsed="0.002613"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:58.929572" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:58.927868" elapsed="0.001760"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.927849" elapsed="0.001802"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:58.929683" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:58.929874" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:54:58.929917" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 141 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:58.914283" elapsed="0.015656"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.932139" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.930537" elapsed="0.001647"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.930519" elapsed="0.001687"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.932750" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.932352" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.933308" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.932940" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:58.933385" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:58.933562" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:58.930207" elapsed="0.003381"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:58.933743" elapsed="0.000397"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:58.913661" elapsed="0.020544"/>
</kw>
<arg>f18.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:58.871530" elapsed="0.062730"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:58.864758" elapsed="0.069612"/>
</test>
<test id="s1-s3-s2-t119" name="Test Is Flow 19 Deleted" line="306">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:58.945028" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f19.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f19.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:58.945173" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:58.944895" elapsed="0.000308"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:58.945735" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3594e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:58.945353" elapsed="0.000410"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.946207" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.945914" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.946659" level="INFO">${flow_id} = 142</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.946386" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:58.947118" level="INFO">${flow_priority} = 19</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:58.946834" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:58.947872" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:58.947294" elapsed="0.000609"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.948748" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.948061" elapsed="0.000730"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.949294" level="INFO">${flow_id} = 142</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.948950" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.949815" level="INFO">${flow_priority} = 19</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.949489" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.950339" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.950009" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.950860" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.950536" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.951460" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3594e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:58.951137" elapsed="0.000379"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:58.944565" elapsed="0.007013"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.952130" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.951728" elapsed="0.000432"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.952551" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf19&lt;/flow-name&gt;
    &lt;id&gt;142&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;19&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;19&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.952311" elapsed="0.000295"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.960284" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:58.959947" elapsed="0.000365"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:58.965710" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=142?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=142?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:58.966106" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=142?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:58.966289" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:58.960442" elapsed="0.005894"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.967012" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.966632" elapsed="0.000425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.969282" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.967216" elapsed="0.002117"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:58.971135" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-05-25T01:54:58.969403" elapsed="0.001797"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.969383" elapsed="0.001841"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:58.971363" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:58.971619" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:58.971453" elapsed="0.000219"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:58.971437" elapsed="0.000257"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.971726" elapsed="0.000015"/>
</return>
<msg time="2026-05-25T01:54:58.973344" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:58.973389" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 142 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:58.959622" elapsed="0.013790"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.975556" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.973948" elapsed="0.001653"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.973930" elapsed="0.001693"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.976183" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.975769" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.976774" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:58.976419" elapsed="0.000382"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:58.976851" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:58.977030" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:58.973619" elapsed="0.003435"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:58.977230" elapsed="0.000386"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:58.959045" elapsed="0.018634"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.985512" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:58.985216" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:58.991316" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:58.991424" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:54:58.991535" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:58.985696" elapsed="0.005865"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.991972" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.991718" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:58.994295" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:58.992174" elapsed="0.002172"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:58.996187" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:58.994416" elapsed="0.001820"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.994396" elapsed="0.001862"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:58.999644" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:54:58.999712" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:58.996396" elapsed="0.003349"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:59.002216" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:58.999860" elapsed="0.002434"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:58.999826" elapsed="0.002500"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:59.002372" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:54:59.002639" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:54:59.002704" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 142 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:58.984822" elapsed="0.017915"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.005538" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.003544" elapsed="0.002039"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.003484" elapsed="0.002124"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.006183" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.005756" elapsed="0.000454"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.006723" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.006373" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:59.006804" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:59.006979" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:59.003030" elapsed="0.003974"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:59.007216" elapsed="0.000398"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:58.984214" elapsed="0.023465"/>
</kw>
<arg>f19.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:58.941335" elapsed="0.066400"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:58.934541" elapsed="0.073305"/>
</test>
<test id="s1-s3-s2-t120" name="Test Is Flow 20 Deleted" line="308">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:59.018644" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f20.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f20.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:59.018776" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:59.018507" elapsed="0.000299"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:59.019377" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3891c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:59.018960" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.019879" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.019595" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.020353" level="INFO">${flow_id} = 143</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.020060" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.020824" level="INFO">${flow_priority} = 20</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.020531" elapsed="0.000320"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:59.021580" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:59.021003" elapsed="0.000608"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.022139" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.021786" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.022848" level="INFO">${flow_id} = 143</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.022340" elapsed="0.000550"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.023407" level="INFO">${flow_priority} = 20</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.023046" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.023953" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.023623" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.024494" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.024170" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.025029" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3891c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.024700" elapsed="0.000388"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:59.018177" elapsed="0.006969"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.025684" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.025298" elapsed="0.000416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.026124" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;20&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;20&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xf0ff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.025867" elapsed="0.000350"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.033957" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:59.033659" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:59.039321" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=143?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=143?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:59.039789" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=143?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:59.039945" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:59.034128" elapsed="0.005843"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.040405" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.040149" elapsed="0.000302"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.043506" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.040596" elapsed="0.003002"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:59.046201" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-05-25T01:54:59.043701" elapsed="0.002595"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.043673" elapsed="0.002656"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:59.046529" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:59.046856" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:59.046664" elapsed="0.000265"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:59.046641" elapsed="0.000321"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.047006" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:59.049342" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:59.049398" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 143 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:59.033344" elapsed="0.016086"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.051723" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.050110" elapsed="0.001659"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.050087" elapsed="0.001705"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.052361" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.051940" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.052923" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.052554" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:59.053000" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:59.053198" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:59.049690" elapsed="0.003535"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:59.053384" elapsed="0.000389"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:59.032774" elapsed="0.021064"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.061901" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:59.061591" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:59.066403" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:59.066568" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:54:59.066667" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:59.062058" elapsed="0.004635"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.067134" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.066852" elapsed="0.000330"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.069887" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.067328" elapsed="0.002630"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.072539" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.070057" elapsed="0.002549"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.070029" elapsed="0.002609"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:59.076314" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:54:59.076378" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:59.072844" elapsed="0.003567"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:59.078387" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:59.076519" elapsed="0.001924"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.076492" elapsed="0.001975"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:59.078500" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:59.078702" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:54:59.078747" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 143 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:59.061207" elapsed="0.017563"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.081011" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.079399" elapsed="0.001657"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.079380" elapsed="0.001714"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.081647" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.081244" elapsed="0.000430"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.082211" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.081838" elapsed="0.000400"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:59.082289" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:59.082468" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:59.079002" elapsed="0.003492"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:59.082675" elapsed="0.000425"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:59.060529" elapsed="0.022637"/>
</kw>
<arg>f20.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:59.014824" elapsed="0.068398"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:59.008017" elapsed="0.075316"/>
</test>
<test id="s1-s3-s2-t121" name="Test Is Flow 21 Deleted" line="310">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:59.094177" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:59.094307" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:59.094023" elapsed="0.000313"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:59.094900" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7f0b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:59.094487" elapsed="0.000441"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.095420" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.095136" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.095914" level="INFO">${flow_id} = 144</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.095623" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.096388" level="INFO">${flow_priority} = 21</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.096112" elapsed="0.000302"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:59.097450" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:59.096567" elapsed="0.000916"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.098002" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.097644" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.098551" level="INFO">${flow_id} = 144</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.098224" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.099099" level="INFO">${flow_priority} = 21</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.098753" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.099642" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.099296" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.100194" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.099845" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.100730" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7f0b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.100395" elapsed="0.000379"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:59.093693" elapsed="0.007137"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.101390" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.100982" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.101819" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.101575" elapsed="0.000306"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.109651" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:59.109352" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:59.114362" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:59.114563" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:59.114697" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:59.109809" elapsed="0.004917"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.115186" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.114890" elapsed="0.000345"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.117849" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.115381" elapsed="0.002543"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:59.120488" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-05-25T01:54:59.118023" elapsed="0.002559"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.117995" elapsed="0.002621"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:59.120829" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:59.121175" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:59.120960" elapsed="0.000290"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:59.120937" elapsed="0.000345"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.121327" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:54:59.123616" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:59.123684" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:59.109012" elapsed="0.014704"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.126716" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.124501" elapsed="0.002284"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.124476" elapsed="0.002340"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.127697" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.127021" elapsed="0.000719"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.128513" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.127982" elapsed="0.000568"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:59.128620" elapsed="0.000041"/>
</return>
<msg time="2026-05-25T01:54:59.128895" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:59.124014" elapsed="0.004907"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:59.129092" elapsed="0.000383"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:59.108419" elapsed="0.021119"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.137222" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:59.136912" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:59.141328" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:59.141436" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:54:59.141530" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:59.137379" elapsed="0.004176"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.141961" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.141713" elapsed="0.000292"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.144381" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.142163" elapsed="0.002315"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.146950" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.144552" elapsed="0.002467"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.144532" elapsed="0.002517"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:59.151118" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:54:59.151184" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:59.147272" elapsed="0.003946"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:59.153470" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:59.151327" elapsed="0.002199"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.151301" elapsed="0.002249"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:59.153583" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:59.153775" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:54:59.153820" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:59.136536" elapsed="0.017307"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.156020" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.154425" elapsed="0.001640"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.154406" elapsed="0.001697"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.156667" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.156260" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.157256" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.156879" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:59.157333" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:59.157511" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:59.154092" elapsed="0.003445"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:59.157695" elapsed="0.000404"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:59.135918" elapsed="0.022246"/>
</kw>
<arg>f21.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:59.090426" elapsed="0.067796"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:59.083517" elapsed="0.074815"/>
</test>
<test id="s1-s3-s2-t122" name="Test Is Flow 22 Deleted" line="312">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:59.169153" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f22.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f22.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:59.169287" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:59.168999" elapsed="0.000318"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:59.169885" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d73d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:59.169471" elapsed="0.000442"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.170367" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.170083" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.170825" level="INFO">${flow_id} = 145</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.170548" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.171301" level="INFO">${flow_priority} = 22</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.171006" elapsed="0.000322"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:59.173904" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:59.171482" elapsed="0.002454"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.174456" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.174114" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.175047" level="INFO">${flow_id} = 145</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.174711" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.175630" level="INFO">${flow_priority} = 22</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.175276" elapsed="0.000419"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.176226" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.175875" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.176779" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.176428" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.177338" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d73d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.176987" elapsed="0.000402"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:59.168654" elapsed="0.008798"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.178120" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.177646" elapsed="0.000513"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.178607" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;22&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;22&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.178328" elapsed="0.000342"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.186689" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:59.186374" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:59.191356" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=145?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=145?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:59.191571" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=145?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:59.191701" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:59.186850" elapsed="0.004877"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.192154" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.191886" elapsed="0.000313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.194381" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.192341" elapsed="0.002090"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:59.196275" elapsed="0.000032"/>
</return>
<status status="PASS" start="2026-05-25T01:54:59.194506" elapsed="0.001877"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.194482" elapsed="0.001928"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:59.196553" elapsed="0.000021"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:59.196826" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:59.196642" elapsed="0.000270"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:59.196625" elapsed="0.000319"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.196987" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:59.199262" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:59.199325" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 145 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:59.186034" elapsed="0.013323"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.202350" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.200157" elapsed="0.002257"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.200132" elapsed="0.002313"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.203229" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.202648" elapsed="0.000619"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.204026" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.203493" elapsed="0.000570"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:59.204158" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:54:59.204406" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:59.199673" elapsed="0.004769"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:59.204662" elapsed="0.000491"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:59.185450" elapsed="0.019767"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.212908" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:59.212614" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:59.217573" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:59.217690" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:54:59.217789" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:59.213062" elapsed="0.004752"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.218249" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.217972" elapsed="0.000322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.220647" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.218438" elapsed="0.002260"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.222554" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.220773" elapsed="0.001830"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.220751" elapsed="0.001875"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:59.225848" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:54:59.225914" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:59.222769" elapsed="0.003178"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:59.228501" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:59.226053" elapsed="0.002526"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.226027" elapsed="0.002585"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:59.228705" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:54:59.228978" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:54:59.229039" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 145 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:59.212237" elapsed="0.016854"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.232170" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.229853" elapsed="0.002381"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.229828" elapsed="0.002437"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.233017" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.232470" elapsed="0.000574"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.233575" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.233225" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:59.233653" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:59.233831" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:59.229388" elapsed="0.004469"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:59.234015" elapsed="0.000402"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:59.211609" elapsed="0.022872"/>
</kw>
<arg>f22.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:59.165352" elapsed="0.069186"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:59.158519" elapsed="0.076138"/>
</test>
<test id="s1-s3-s2-t123" name="Test Is Flow 23 Deleted" line="314">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:59.245620" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f23.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f23.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:59.245796" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:59.245481" elapsed="0.000344"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:59.246417" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc389670&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:59.245978" elapsed="0.000467"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.246877" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.246598" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.247341" level="INFO">${flow_id} = 146</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.247055" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.247817" level="INFO">${flow_priority} = 23</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.247517" elapsed="0.000325"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:59.248909" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:59.247992" elapsed="0.000949"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.249449" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.249113" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.249971" level="INFO">${flow_id} = 146</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.249645" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.250505" level="INFO">${flow_priority} = 23</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.250179" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.251011" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.250697" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.251543" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.251225" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.252132" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc389670&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.251791" elapsed="0.000383"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:59.245149" elapsed="0.007081"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.252761" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.252381" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.253199" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;23&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;23&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.252941" elapsed="0.000320"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.260880" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:59.260586" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:59.265382" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=146?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=146?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:59.265570" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=146?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:59.265669" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:59.261036" elapsed="0.004664"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.266326" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.265943" elapsed="0.000446"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.269437" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.266587" elapsed="0.002920"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:59.272025" elapsed="0.000056"/>
</return>
<status status="PASS" start="2026-05-25T01:54:59.269603" elapsed="0.002532"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.269575" elapsed="0.002594"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:59.272365" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:59.272676" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:59.272490" elapsed="0.000255"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:59.272468" elapsed="0.000308"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.272821" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:54:59.275087" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:59.275152" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 146 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:59.260273" elapsed="0.014912"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.277885" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.276025" elapsed="0.001905"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.276000" elapsed="0.001952"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.278510" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.278114" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.279048" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.278698" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:59.279141" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:59.279320" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:59.275525" elapsed="0.003821"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:59.279501" elapsed="0.000396"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:59.259705" elapsed="0.020255"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.287669" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:59.287363" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:59.294210" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:59.294362" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:54:59.294506" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:59.287826" elapsed="0.006715"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.295135" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.294763" elapsed="0.000435"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.298157" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.295399" elapsed="0.002831"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.300774" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.298328" elapsed="0.002512"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.298300" elapsed="0.002571"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:59.304797" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:54:59.304861" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:59.301062" elapsed="0.003831"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:59.307398" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:59.304999" elapsed="0.002477"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.304973" elapsed="0.002536"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:59.307556" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:54:59.307876" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:54:59.307938" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 146 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:59.286973" elapsed="0.020997"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.310386" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.308772" elapsed="0.001659"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.308742" elapsed="0.001711"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.311035" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.310600" elapsed="0.000463"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.311598" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.311243" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:59.311686" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:54:59.311865" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:59.308287" elapsed="0.003604"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:59.312047" elapsed="0.000400"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:59.286367" elapsed="0.026144"/>
</kw>
<arg>f23.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:59.241800" elapsed="0.070767"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:59.234844" elapsed="0.077832"/>
</test>
<test id="s1-s3-s2-t124" name="Test Is Flow 24 Deleted" line="316">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:59.323319" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f24.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f24.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:59.323446" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:59.323185" elapsed="0.000289"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:59.324036" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc358810&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:59.323650" elapsed="0.000414"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.324511" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.324235" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.324959" level="INFO">${flow_id} = 147</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.324690" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.325426" level="INFO">${flow_priority} = 24</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.325154" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:59.326331" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:59.325601" elapsed="0.000761"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.326852" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.326521" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.327391" level="INFO">${flow_id} = 147</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.327047" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.327929" level="INFO">${flow_priority} = 24</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.327585" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.328451" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.328137" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.328963" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.328647" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.329492" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc358810&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.329174" elapsed="0.000359"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:59.322844" elapsed="0.006742"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.330129" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.329734" elapsed="0.000460"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.330590" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf24&lt;/flow-name&gt;
    &lt;id&gt;147&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;24&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;24&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                        &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-id&gt;2591&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.330349" elapsed="0.000296"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.338320" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:59.338010" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:59.343176" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=147?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=147?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:59.343368" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=147?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:59.343466" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:59.338476" elapsed="0.005015"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.343933" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.343666" elapsed="0.000311"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.346191" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.344137" elapsed="0.002105"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:59.348062" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-05-25T01:54:59.346311" elapsed="0.001831"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.346291" elapsed="0.001875"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:59.348309" elapsed="0.000021"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:59.348534" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:59.348398" elapsed="0.000187"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:59.348381" elapsed="0.000227"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.348640" elapsed="0.000018"/>
</return>
<msg time="2026-05-25T01:54:59.350910" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:59.350973" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 147 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:59.337693" elapsed="0.013311"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.354002" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.351800" elapsed="0.002282"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.351775" elapsed="0.002340"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.354867" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.354317" elapsed="0.000588"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.355672" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.355152" elapsed="0.000560"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:59.355787" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:54:59.356035" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:59.351313" elapsed="0.004778"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:59.356346" elapsed="0.000600"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:59.337143" elapsed="0.019867"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.364720" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:59.364426" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:59.369920" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:59.370028" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:54:59.370144" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:59.364875" elapsed="0.005295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.370587" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.370330" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.372924" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.370775" elapsed="0.002200"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.374780" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.373045" elapsed="0.001783"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.373025" elapsed="0.001825"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:59.377722" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:54:59.377786" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:59.374993" elapsed="0.002825"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:59.380360" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:59.377924" elapsed="0.002513"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.377898" elapsed="0.002571"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:59.380515" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:54:59.380781" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:54:59.380841" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 147 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:59.364034" elapsed="0.016838"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.383885" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.381646" elapsed="0.002302"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.381622" elapsed="0.002356"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.384781" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.384201" elapsed="0.000627"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.385388" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.385009" elapsed="0.000405"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:59.385464" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:59.385645" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:59.381188" elapsed="0.004482"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:59.385826" elapsed="0.000399"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:59.363415" elapsed="0.022874"/>
</kw>
<arg>f24.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:59.319609" elapsed="0.066734"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:59.312850" elapsed="0.073640"/>
</test>
<test id="s1-s3-s2-t125" name="Test Is Flow 25 Deleted" line="318">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:59.397294" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f25.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f25.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:59.397423" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:59.397158" elapsed="0.000294"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:59.398024" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc307fb0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:59.397603" elapsed="0.000449"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.398508" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.398227" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.398960" level="INFO">${flow_id} = 148</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.398689" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.399426" level="INFO">${flow_priority} = 25</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.399154" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:59.400536" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:59.399602" elapsed="0.000966"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.401056" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.400726" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.401590" level="INFO">${flow_id} = 148</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.401269" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.402122" level="INFO">${flow_priority} = 25</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.401782" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.402629" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.402316" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.403158" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.402824" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.403695" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc307fb0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.403355" elapsed="0.000383"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:59.396814" elapsed="0.006979"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.404343" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.403943" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.404767" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf25&lt;/flow-name&gt;
    &lt;id&gt;148&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;25&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;25&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;6&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;3&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.404526" elapsed="0.000337"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.412533" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:59.412238" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:59.419867" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=148?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=148?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:59.420058" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=148?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:59.420180" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:59.412694" elapsed="0.007512"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.420617" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.420367" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.423748" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.420877" elapsed="0.002943"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:59.426376" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:54:59.423918" elapsed="0.002549"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.423890" elapsed="0.002611"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:59.426697" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:59.427010" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:59.426822" elapsed="0.000280"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:59.426800" elapsed="0.000336"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.427181" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:59.429336" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:59.429381" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 148 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:59.411904" elapsed="0.017499"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.431530" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.429940" elapsed="0.001635"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.429922" elapsed="0.001675"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.432173" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.431760" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.432711" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.432362" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:59.432786" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:59.432962" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:59.429612" elapsed="0.003375"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:59.433160" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:59.411326" elapsed="0.022279"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.441447" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:59.441151" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:59.447361" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:59.447511" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:54:59.447609" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:59.441604" elapsed="0.006030"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.448091" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.447816" elapsed="0.000323"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.450542" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.448283" elapsed="0.002313"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.452442" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.450668" elapsed="0.001823"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.450647" elapsed="0.001866"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:59.456376" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:54:59.456440" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:59.452652" elapsed="0.003821"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:59.458952" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:59.456580" elapsed="0.002449"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.456554" elapsed="0.002507"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:59.459137" elapsed="0.000041"/>
</return>
<msg time="2026-05-25T01:54:59.459407" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:54:59.459467" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 148 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:59.440757" elapsed="0.018742"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.462119" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.460337" elapsed="0.001828"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.460312" elapsed="0.001875"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.462744" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.462337" elapsed="0.000435"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.463308" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.462937" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:59.463386" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:59.463563" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:59.459842" elapsed="0.003747"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:59.463780" elapsed="0.000421"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:59.440149" elapsed="0.024118"/>
</kw>
<arg>f25.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:59.393443" elapsed="0.070882"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:59.386660" elapsed="0.077779"/>
</test>
<test id="s1-s3-s2-t126" name="Test Is Flow 31 Deleted" line="320">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:59.475127" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f31.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f31.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:59.475288" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:59.474974" elapsed="0.000344"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:59.475904" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc091d00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:59.475472" elapsed="0.000461"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.476429" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.476143" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.476882" level="INFO">${flow_id} = 154</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.476611" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.477360" level="INFO">${flow_priority} = 31</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.477060" elapsed="0.000326"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:59.478367" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:59.477537" elapsed="0.000860"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.478888" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.478555" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.479421" level="INFO">${flow_id} = 154</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.479099" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.479960" level="INFO">${flow_priority} = 31</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.479615" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.480483" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.480167" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.480995" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.480677" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.481529" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc091d00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.481208" elapsed="0.000363"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:59.474647" elapsed="0.006980"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.482171" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.481775" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.482592" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;154&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;31&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf31&lt;/flow-name&gt;
    &lt;priority&gt;31&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.482352" elapsed="0.000301"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.490319" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:59.490000" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:59.495672" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=154?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=154?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:59.495911" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=154?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:59.496052" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:59.490476" elapsed="0.005626"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.496519" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.496265" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.498759" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.496708" elapsed="0.002102"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:59.500921" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-05-25T01:54:59.498880" elapsed="0.002143"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.498860" elapsed="0.002198"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:59.501299" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:59.501617" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:59.501427" elapsed="0.000261"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:59.501404" elapsed="0.000316"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.501764" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:59.504053" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:59.504135" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 154 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:59.489684" elapsed="0.014483"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.507141" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.504918" elapsed="0.002287"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.504894" elapsed="0.002342"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.508028" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.507439" elapsed="0.000649"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.508812" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.508319" elapsed="0.000529"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:59.508926" elapsed="0.000047"/>
</return>
<msg time="2026-05-25T01:54:59.509198" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:59.504459" elapsed="0.004765"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:59.509381" elapsed="0.000383"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:59.489128" elapsed="0.020699"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.517565" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:59.517269" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:59.522507" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:59.522615" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:54:59.522710" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:59.517721" elapsed="0.005014"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.523175" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.522897" elapsed="0.000324"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.525930" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.523364" elapsed="0.002738"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.528660" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.526205" elapsed="0.002525"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.526177" elapsed="0.002586"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:59.532516" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:54:59.532581" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:59.528957" elapsed="0.003658"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:59.534489" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:59.532742" elapsed="0.001802"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.532709" elapsed="0.001859"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:59.534601" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:59.534793" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:54:59.534836" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 154 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:59.516876" elapsed="0.017983"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.537010" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.535417" elapsed="0.001637"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.535399" elapsed="0.001691"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.537637" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.537239" elapsed="0.000426"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.538195" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.537827" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:59.538271" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:59.538449" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:59.535084" elapsed="0.003391"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:59.538631" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:59.516265" elapsed="0.022829"/>
</kw>
<arg>f31.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:59.471410" elapsed="0.067742"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:59.464624" elapsed="0.074638"/>
</test>
<test id="s1-s3-s2-t127" name="Test Is Flow 36 Deleted" line="322">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:59.549917" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f36.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f36.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:59.550058" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:59.549780" elapsed="0.000322"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:59.550653" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d4810&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:59.550256" elapsed="0.000425"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.551126" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.550833" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.551576" level="INFO">${flow_id} = 159</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.551306" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.552053" level="INFO">${flow_priority} = 36</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.551778" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:59.553025" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:59.552252" elapsed="0.000804"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.553565" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.553231" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.554144" level="INFO">${flow_id} = 159</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.553802" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.554670" level="INFO">${flow_priority} = 36</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.554343" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.555192" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.554864" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.555708" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.555390" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.556256" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d4810&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.555920" elapsed="0.000378"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:59.549452" elapsed="0.006900"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.556880" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.556502" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.557319" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;159&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;36&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf36&lt;/flow-name&gt;
    &lt;priority&gt;36&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.557060" elapsed="0.000315"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.565879" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:59.565553" elapsed="0.000357"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:59.570727" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=159?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=159?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:59.570927" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=159?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:59.571025" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:59.566042" elapsed="0.005009"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.571486" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.571234" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.573750" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.571676" elapsed="0.002126"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:59.575609" elapsed="0.000027"/>
</return>
<status status="PASS" start="2026-05-25T01:54:59.573873" elapsed="0.001801"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.573852" elapsed="0.001846"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:59.575885" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:59.576138" elapsed="0.000085"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:59.575976" elapsed="0.000282"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:59.575960" elapsed="0.000322"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.576315" elapsed="0.000015"/>
</return>
<msg time="2026-05-25T01:54:59.578466" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:59.578530" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 159 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:59.565227" elapsed="0.013335"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.581580" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.579357" elapsed="0.002287"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.579332" elapsed="0.002343"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.582454" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.581879" elapsed="0.000613"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.583230" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.582719" elapsed="0.000547"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:59.583337" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:54:59.583586" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:59.578867" elapsed="0.004754"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:59.583877" elapsed="0.000559"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:59.564507" elapsed="0.020021"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.592433" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:59.592135" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:59.597331" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:59.597439" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:54:59.597534" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:59.592590" elapsed="0.004969"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.597974" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.597718" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.600359" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.598189" elapsed="0.002221"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.602877" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.600480" elapsed="0.002464"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.600460" elapsed="0.002516"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:59.606627" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:54:59.606691" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:59.603189" elapsed="0.003534"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:59.609180" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:59.606831" elapsed="0.002406"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.606804" elapsed="0.002457"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:59.609294" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:59.609486" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:54:59.609530" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 159 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:59.591711" elapsed="0.017841"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.611714" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.610152" elapsed="0.001620"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.610134" elapsed="0.001663"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.612360" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.611943" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.612901" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.612552" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:59.612978" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:59.613172" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:59.609805" elapsed="0.003393"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:59.613355" elapsed="0.000382"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:59.591102" elapsed="0.022699"/>
</kw>
<arg>f36.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:59.546229" elapsed="0.067629"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:59.539444" elapsed="0.074524"/>
</test>
<test id="s1-s3-s2-t128" name="Test Is Flow 38 Deleted" line="324">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:59.624660" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f38.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f38.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:59.624810" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:59.624526" elapsed="0.000313"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:59.625404" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4e91c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:59.624991" elapsed="0.000441"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.625862" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.625584" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.626327" level="INFO">${flow_id} = 161</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.626040" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.626771" level="INFO">${flow_priority} = 38</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.626504" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:59.629539" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:59.626945" elapsed="0.002626"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.630084" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.629732" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.630610" level="INFO">${flow_id} = 161</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.630284" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.631150" level="INFO">${flow_priority} = 38</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.630806" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.631663" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.631347" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.632210" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.631873" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.632737" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4e91c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.632410" elapsed="0.000402"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:59.624200" elapsed="0.008669"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.633424" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.633020" elapsed="0.000435"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.633849" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;161&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;38&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf38&lt;/flow-name&gt;
    &lt;priority&gt;38&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.633607" elapsed="0.000300"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.641580" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:59.641283" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:59.645998" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=161?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=161?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:59.646237" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=161?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:59.646347" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:59.641735" elapsed="0.004638"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.646827" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.646532" elapsed="0.000372"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.650022" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.647134" elapsed="0.002979"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:59.652654" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-05-25T01:54:59.650216" elapsed="0.002532"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.650187" elapsed="0.002594"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:59.652978" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:59.653313" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:59.653124" elapsed="0.000261"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:59.653099" elapsed="0.000318"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.653460" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:59.655711" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:59.655805" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 161 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:59.640950" elapsed="0.014890"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.658396" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.656614" elapsed="0.001827"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.656589" elapsed="0.001874"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.659045" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.658610" elapsed="0.000476"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.659639" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.659288" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:59.659715" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:59.659909" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:59.656153" elapsed="0.003781"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:59.660106" elapsed="0.000386"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:59.640396" elapsed="0.020158"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.668324" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:59.668011" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:59.673542" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:59.673693" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:54:59.673824" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:59.668480" elapsed="0.005379"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.674459" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.674107" elapsed="0.000414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.677704" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.674719" elapsed="0.003055"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.680336" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.677871" elapsed="0.002533"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.677843" elapsed="0.002591"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:59.684115" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:54:59.684180" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:59.680628" elapsed="0.003584"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:59.686668" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:59.684319" elapsed="0.002425"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.684292" elapsed="0.002485"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:59.686823" elapsed="0.000037"/>
</return>
<msg time="2026-05-25T01:54:59.687110" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:54:59.687172" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 161 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:59.667619" elapsed="0.019585"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.689936" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.687987" elapsed="0.001995"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.687961" elapsed="0.002043"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.690577" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.690177" elapsed="0.000427"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.691311" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.690772" elapsed="0.000566"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:59.691389" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:54:59.691567" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:59.687495" elapsed="0.004098"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:59.691816" elapsed="0.000469"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:59.666994" elapsed="0.025367"/>
</kw>
<arg>f38.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:59.620936" elapsed="0.071482"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:59.614169" elapsed="0.078378"/>
</test>
<test id="s1-s3-s2-t129" name="Test Is Flow 43 Deleted" line="326">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:59.703606" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f43.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f43.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:59.703759" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:59.703469" elapsed="0.000346"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:59.704402" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d5620&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:59.703976" elapsed="0.000455"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.704865" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.704585" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.705329" level="INFO">${flow_id} = 166</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.705042" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.705772" level="INFO">${flow_priority} = 43</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.705506" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:59.706791" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:59.705947" elapsed="0.000876"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.707333" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.706981" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.707863" level="INFO">${flow_id} = 166</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.707529" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.708410" level="INFO">${flow_priority} = 43</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.708078" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.708920" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.708605" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.709451" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.709131" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.709973" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d5620&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.709647" elapsed="0.000368"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:59.703139" elapsed="0.006945"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.710626" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.710239" elapsed="0.000417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.711044" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;166&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;icmpv6-match&gt;
            &lt;icmpv6-type&gt;135&lt;/icmpv6-type&gt;
            &lt;icmpv6-code&gt;1&lt;/icmpv6-code&gt;
        &lt;/icmpv6-match&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;58&lt;/ip-protocol&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;43&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf43&lt;/flow-name&gt;
    &lt;priority&gt;43&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.710806" elapsed="0.000351"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.718796" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:59.718499" elapsed="0.000332"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:59.723526" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=166?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=166?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:59.723722" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=166?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:59.723834" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:59.718961" elapsed="0.004902"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.724304" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.724027" elapsed="0.000322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.726529" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.724493" elapsed="0.002087"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:59.728419" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-05-25T01:54:59.726651" elapsed="0.001834"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.726631" elapsed="0.001879"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:59.728651" elapsed="0.000026"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:59.728994" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:59.728762" elapsed="0.000323"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:59.728741" elapsed="0.000378"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.729165" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:59.731424" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:59.731487" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 166 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:59.718181" elapsed="0.013338"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.734529" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.732319" elapsed="0.002273"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.732294" elapsed="0.002328"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.735532" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.734854" elapsed="0.000721"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.736498" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.735889" elapsed="0.000651"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:59.736622" elapsed="0.000053"/>
</return>
<msg time="2026-05-25T01:54:59.736921" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:59.731826" elapsed="0.005124"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:59.737159" elapsed="0.000460"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:59.717614" elapsed="0.020086"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.746120" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:59.745809" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:59.751557" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:59.751772" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:54:59.751888" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:59.746277" elapsed="0.005636"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.752348" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.752093" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.754694" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.752536" elapsed="0.002222"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.756662" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.754846" elapsed="0.001883"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.754821" elapsed="0.001941"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:59.760500" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:54:59.760564" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:59.756959" elapsed="0.003638"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:59.763146" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:59.760716" elapsed="0.002509"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.760684" elapsed="0.002574"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:59.763303" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:54:59.763571" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:54:59.763632" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 166 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:59.745433" elapsed="0.018230"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.766124" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.764480" elapsed="0.001689"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.764455" elapsed="0.001736"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.766737" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.766338" elapsed="0.000427"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.767294" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.766928" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:59.767371" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:59.767546" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:59.764000" elapsed="0.003571"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:59.767726" elapsed="0.000416"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:59.744808" elapsed="0.023399"/>
</kw>
<arg>f43.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:59.699759" elapsed="0.068504"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:59.692742" elapsed="0.075636"/>
</test>
<test id="s1-s3-s2-t130" name="Test Is Flow 45 Deleted" line="328">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:59.779129" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f45.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f45.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:59.779271" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:59.778976" elapsed="0.000324"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:59.779862" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc093e20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:59.779451" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.780390" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.780049" elapsed="0.000368"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.780845" level="INFO">${flow_id} = 168</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.780572" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.781312" level="INFO">${flow_priority} = 45</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.781021" elapsed="0.000317"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:59.782288" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:59.781490" elapsed="0.000829"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.782810" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.782476" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.783346" level="INFO">${flow_id} = 168</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.783006" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.783896" level="INFO">${flow_priority} = 45</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.783540" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.784426" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.784110" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.784937" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.784621" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.785474" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc093e20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.785147" elapsed="0.000367"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:59.778647" elapsed="0.006922"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.786202" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.785717" elapsed="0.000516"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.786630" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;max-length&gt;60&lt;/max-length&gt;&lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;168&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;1180719718&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xfff0ffff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
    &lt;cookie&gt;45&lt;/cookie&gt;
    &lt;flow-name&gt;FooXf45&lt;/flow-name&gt;
    &lt;priority&gt;45&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.786388" elapsed="0.000300"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.794535" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:59.794233" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:59.799994" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=168?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=168?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:59.800214" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=168?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:59.800313" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:59.794694" elapsed="0.005644"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.800799" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.800546" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.803740" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.800987" elapsed="0.002823"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:59.806566" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:54:59.803997" elapsed="0.002660"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.803968" elapsed="0.002723"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:59.806889" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:59.807226" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:59.807016" elapsed="0.000283"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:59.806993" elapsed="0.000339"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.807377" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:54:59.809481" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:59.809527" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 168 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:59.793900" elapsed="0.015649"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.811681" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.810106" elapsed="0.001619"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.810087" elapsed="0.001660"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.812321" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.811907" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.812859" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.812509" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:59.812935" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:59.813129" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:59.809759" elapsed="0.003395"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:59.813310" elapsed="0.000381"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:59.793339" elapsed="0.020417"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.821568" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:59.821271" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:59.826579" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:59.826688" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:54:59.826826" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:59.821725" elapsed="0.005136"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.827465" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.827113" elapsed="0.000414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.830757" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.827728" elapsed="0.003147"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.833460" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.830976" elapsed="0.002551"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.830947" elapsed="0.002611"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:59.837162" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:54:59.837208" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:59.833755" elapsed="0.003476"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:59.839001" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:59.837308" elapsed="0.001749"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.837289" elapsed="0.001807"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:59.839131" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:59.839323" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:54:59.839367" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 168 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:59.820873" elapsed="0.018516"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.841528" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.839943" elapsed="0.001630"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.839925" elapsed="0.001670"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.842158" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.841744" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.842698" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.842349" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:59.842773" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:59.842948" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:59.839600" elapsed="0.003372"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:59.843145" elapsed="0.000383"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:59.820228" elapsed="0.023364"/>
</kw>
<arg>f45.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:59.775378" elapsed="0.068270"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:59.768564" elapsed="0.075196"/>
</test>
<test id="s1-s3-s2-t131" name="Test Is Flow 101 Deleted" line="330">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:59.854475" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f101.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f101.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:59.854629" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:59.854340" elapsed="0.000318"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:59.855246" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc304220&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:59.854810" elapsed="0.000463"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.855705" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.855427" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.856185" level="INFO">${flow_id} = 224</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.855894" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.856634" level="INFO">${flow_priority} = 101</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.856362" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:59.857723" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:59.856811" elapsed="0.000943"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.858267" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.857914" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.858839" level="INFO">${flow_id} = 224</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.858511" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.859385" level="INFO">${flow_priority} = 101</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.859036" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.859920" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.859580" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.860458" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.860135" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.861015" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc304220&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.860659" elapsed="0.000397"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:59.853997" elapsed="0.007134"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.861681" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.861286" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.862122" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf101&lt;/flow-name&gt;
    &lt;id&gt;224&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;101&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;101&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.861863" elapsed="0.000322"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.870255" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:59.869870" elapsed="0.000416"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:59.874924" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=224?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=224?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:59.875189" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=224?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:59.875295" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:59.870435" elapsed="0.004886"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.875761" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.875493" elapsed="0.000315"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.878775" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.875997" elapsed="0.002854"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:59.881684" elapsed="0.000054"/>
</return>
<status status="PASS" start="2026-05-25T01:54:59.878968" elapsed="0.002909"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.878933" elapsed="0.002985"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:59.882157" elapsed="0.000034"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:59.882495" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:59.882294" elapsed="0.000279"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:59.882269" elapsed="0.000339"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.882656" elapsed="0.000021"/>
</return>
<msg time="2026-05-25T01:54:59.885023" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:59.885084" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 224 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:59.869517" elapsed="0.015593"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.887271" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.885689" elapsed="0.001627"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.885670" elapsed="0.001668"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.887915" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.887491" elapsed="0.000455"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.888478" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.888125" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:59.888556" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:59.888733" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:59.885347" elapsed="0.003412"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:59.888918" elapsed="0.000412"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:59.868815" elapsed="0.020583"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.897453" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:59.897143" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:59.903170" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:59.903291" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:54:59.903387" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:59.897615" elapsed="0.005797"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.904094" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.903571" elapsed="0.000571"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.906865" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.904292" elapsed="0.002644"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.909499" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.907035" elapsed="0.002531"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.907007" elapsed="0.002591"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:59.913433" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:54:59.913479" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:59.909794" elapsed="0.003708"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:59.915285" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:59.913580" elapsed="0.001760"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.913560" elapsed="0.001804"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:59.915440" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:54:59.915636" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:54:59.915681" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 224 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:59.896745" elapsed="0.018959"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.917856" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.916289" elapsed="0.001613"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.916271" elapsed="0.001653"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.918492" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.918092" elapsed="0.000427"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.919031" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.918683" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:59.919124" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:54:59.919300" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:59.915936" elapsed="0.003389"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:59.919482" elapsed="0.000396"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:59.896118" elapsed="0.023824"/>
</kw>
<arg>f101.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:59.850748" elapsed="0.069255"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:59.843965" elapsed="0.076180"/>
</test>
<test id="s1-s3-s2-t132" name="Test Is Flow 102 Deleted" line="332">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:54:59.930930" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f102.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f102.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:54:59.931099" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:54:59.930788" elapsed="0.000341"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:54:59.931720" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc389a30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:54:59.931286" elapsed="0.000463"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.932231" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.931928" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.932687" level="INFO">${flow_id} = 225</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.932413" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:54:59.933153" level="INFO">${flow_priority} = 102</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:54:59.932865" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:54:59.934277" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:54:59.933331" elapsed="0.000977"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.934809" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.934470" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.935353" level="INFO">${flow_id} = 225</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.935009" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.936139" level="INFO">${flow_priority} = 102</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.935552" elapsed="0.000694"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.936799" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.936453" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.937342" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.937001" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.937905" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc389a30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:54:59.937579" elapsed="0.000368"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:54:59.930459" elapsed="0.007543"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.938556" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.938170" elapsed="0.000416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.938982" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf102&lt;/flow-name&gt;
    &lt;id&gt;225&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;102&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;102&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.938738" elapsed="0.000308"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.946732" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:59.946434" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:59.951750" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=225?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=225?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:59.951962" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=225?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:54:59.952063" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:59.946891" elapsed="0.005219"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.952527" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.952274" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.954811" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.952716" elapsed="0.002147"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:54:59.956785" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-05-25T01:54:59.954932" elapsed="0.001918"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.954912" elapsed="0.001963"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:54:59.957018" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:59.957264" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:59.957125" elapsed="0.000190"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:54:59.957107" elapsed="0.000231"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.957370" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:54:59.959017" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:54:59.959062" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 225 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:59.946120" elapsed="0.013012"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.961596" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.959681" elapsed="0.001978"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.959664" elapsed="0.002028"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.962477" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.961901" elapsed="0.000613"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.963252" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.962743" elapsed="0.000546"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:59.963358" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:54:59.963605" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:59.959347" elapsed="0.004294"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:59.963860" elapsed="0.000570"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:59.945541" elapsed="0.018977"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.973638" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:54:59.973341" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:54:59.978901" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:54:59.979009" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:54:59.979140" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:54:59.973795" elapsed="0.005371"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.979581" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.979328" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.981794" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:54:59.979776" elapsed="0.002069"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.983654" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.981914" elapsed="0.001788"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.981894" elapsed="0.001831"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:54:59.986500" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:54:59.986546" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:54:59.983864" elapsed="0.002705"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:54:59.988394" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:54:59.986645" elapsed="0.001805"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.986626" elapsed="0.001848"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:54:59.988506" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:54:59.988703" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:54:59.988770" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 225 and 1</doc>
<status status="PASS" start="2026-05-25T01:54:59.972945" elapsed="0.015856"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:54:59.991778" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:54:59.989581" elapsed="0.002260"/>
</branch>
<status status="PASS" start="2026-05-25T01:54:59.989557" elapsed="0.002314"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.992719" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.992162" elapsed="0.000595"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:54:59.993503" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:54:59.992985" elapsed="0.000555"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:54:59.993610" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:54:59.993863" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:54:59.989119" elapsed="0.004780"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:54:59.994142" elapsed="0.000540"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:54:59.972331" elapsed="0.022440"/>
</kw>
<arg>f102.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:54:59.927220" elapsed="0.067630"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:59.920345" elapsed="0.074658"/>
</test>
<test id="s1-s3-s2-t133" name="Test Is Flow 103 Deleted" line="334">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:00.006486" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f103.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f103.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:00.006617" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:00.006350" elapsed="0.000296"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:00.007243" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4e40e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:00.006797" elapsed="0.000474"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.007712" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.007428" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.008202" level="INFO">${flow_id} = 226</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.007897" elapsed="0.000331"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.008656" level="INFO">${flow_priority} = 103</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.008382" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:55:00.009579" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:55:00.008832" elapsed="0.000778"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.010116" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.009767" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.010636" level="INFO">${flow_id} = 226</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.010314" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.011171" level="INFO">${flow_priority} = 103</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.010829" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.011677" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.011364" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.012234" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.011871" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.012750" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5ace4e40e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.012431" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:55:00.006001" elapsed="0.006845"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.013395" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.012995" elapsed="0.000474"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.013872" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf103&lt;/flow-name&gt;
    &lt;id&gt;226&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;103&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;103&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;2&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;25364&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.013625" elapsed="0.000311"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.021649" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:00.021353" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:00.025785" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=226?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=226?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:00.025976" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=226?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:55:00.026104" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:00.021812" elapsed="0.004320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.026543" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.026292" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.029043" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.026735" elapsed="0.002402"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:55:00.031662" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:55:00.029236" elapsed="0.002516"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.029208" elapsed="0.002577"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:00.032002" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:00.032340" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:00.032150" elapsed="0.000261"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:00.032126" elapsed="0.000317"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.032486" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:55:00.034743" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:55:00.034806" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 226 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:00.021023" elapsed="0.013814"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.037587" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.035602" elapsed="0.002030"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.035577" elapsed="0.002076"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.038206" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.037796" elapsed="0.000437"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.038778" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.038427" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:00.038855" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:55:00.039031" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:00.035146" elapsed="0.003910"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:00.039229" elapsed="0.000380"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:00.020468" elapsed="0.019204"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.047464" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:00.047169" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:00.060361" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:00.060470" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:55:00.060566" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:00.047620" elapsed="0.012971"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.061445" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.060825" elapsed="0.000720"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.066369" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.061869" elapsed="0.004613"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.070566" elapsed="0.000034"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.066637" elapsed="0.004036"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.066593" elapsed="0.004129"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:55:00.074578" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:55:00.074623" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:55:00.071029" elapsed="0.003617"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:00.078190" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:00.074722" elapsed="0.003525"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.074704" elapsed="0.003566"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:55:00.078304" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:55:00.078495" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:55:00.078539" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 226 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:00.046780" elapsed="0.031782"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.080711" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.079114" elapsed="0.001642"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.079095" elapsed="0.001683"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.081336" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.080923" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.081888" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.081526" elapsed="0.000388"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:00.081965" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:55:00.082158" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:00.078771" elapsed="0.003451"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:00.082383" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:00.046171" elapsed="0.036660"/>
</kw>
<arg>f103.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:55:00.002560" elapsed="0.080326"/>
</kw>
<status status="PASS" start="2026-05-25T01:54:59.995368" elapsed="0.087628"/>
</test>
<test id="s1-s3-s2-t134" name="Test Is Flow 104 Deleted" line="336">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:00.093855" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f104.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f104.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:00.093987" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:00.093720" elapsed="0.000296"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:00.094606" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3f5850&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:00.094189" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.095079" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.094788" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.095527" level="INFO">${flow_id} = 227</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.095260" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.095991" level="INFO">${flow_priority} = 104</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.095703" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:55:00.096887" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:55:00.096183" elapsed="0.000734"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.097416" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.097085" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.097968" level="INFO">${flow_id} = 227</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.097608" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.098507" level="INFO">${flow_priority} = 104</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.098180" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.099008" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.098698" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.099536" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.099218" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.100060" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3f5850&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.099729" elapsed="0.000388"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:55:00.093394" elapsed="0.006779"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.100700" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.100321" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.101152" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf104&lt;/flow-name&gt;
    &lt;id&gt;227&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;104&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;104&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.100881" elapsed="0.000407"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.109114" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:00.108803" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:00.113796" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=227?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=227?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:00.114111" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=227?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:55:00.114249" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:00.109273" elapsed="0.005012"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.114857" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.114505" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.118038" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.115142" elapsed="0.002988"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:55:00.120660" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-05-25T01:55:00.118229" elapsed="0.002527"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.118202" elapsed="0.002588"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:00.120985" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:00.121324" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:00.121135" elapsed="0.000260"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:00.121110" elapsed="0.000317"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.121470" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:55:00.123724" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:55:00.123787" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 227 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:00.108489" elapsed="0.015330"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.126322" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.124694" elapsed="0.001673"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.124669" elapsed="0.001720"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.126928" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.126533" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.127486" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.127136" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:00.127562" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:55:00.127739" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:00.124228" elapsed="0.003536"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:00.127921" elapsed="0.000465"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:00.107910" elapsed="0.020540"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.136231" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:00.135907" elapsed="0.000351"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:00.142415" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:00.142614" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:55:00.142750" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:00.136387" elapsed="0.006401"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.143383" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.143008" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.146643" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.143647" elapsed="0.003067"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.149306" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.146816" elapsed="0.002557"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.146786" elapsed="0.002619"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:55:00.153310" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:55:00.153375" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:55:00.149599" elapsed="0.003810"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:00.155894" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:00.153516" elapsed="0.002487"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.153489" elapsed="0.002549"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:55:00.156103" elapsed="0.000041"/>
</return>
<msg time="2026-05-25T01:55:00.156376" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:55:00.156437" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 227 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:00.135532" elapsed="0.020936"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.158704" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.157141" elapsed="0.001608"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.157122" elapsed="0.001649"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.159327" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.158915" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.159863" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.159517" elapsed="0.000371"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:00.159938" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:55:00.160152" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:00.156781" elapsed="0.003396"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:00.160334" elapsed="0.000382"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:00.134910" elapsed="0.025874"/>
</kw>
<arg>f104.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:55:00.090147" elapsed="0.070693"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:00.083252" elapsed="0.077696"/>
</test>
<test id="s1-s3-s2-t135" name="Test Is Flow 105 Deleted" line="338">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:00.171774" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f105.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f105.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:00.171903" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:00.171641" elapsed="0.000291"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:00.172540" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3597b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:00.172122" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.173038" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.172757" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.173508" level="INFO">${flow_id} = 228</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.173236" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.173957" level="INFO">${flow_priority} = 105</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.173687" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:55:00.175107" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:55:00.174151" elapsed="0.000990"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.175671" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.175310" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.176262" level="INFO">${flow_id} = 228</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.175888" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.176791" level="INFO">${flow_priority} = 105</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.176463" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.177326" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.176988" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.177843" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.177524" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.178381" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3597b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.178041" elapsed="0.000382"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:55:00.171314" elapsed="0.007166"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.179011" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.178629" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.179458" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf105&lt;/flow-name&gt;
    &lt;id&gt;228&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;105&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;105&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A000::/84&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.179212" elapsed="0.000309"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.187255" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:00.186935" elapsed="0.000347"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:00.192729" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=228?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=228?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:00.192932" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=228?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:55:00.193090" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:00.187414" elapsed="0.005705"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.193541" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.193287" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.195765" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.193731" elapsed="0.002085"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:55:00.197961" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-05-25T01:55:00.195887" elapsed="0.002167"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.195867" elapsed="0.002242"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:00.198310" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:00.198624" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:00.198438" elapsed="0.000258"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:00.198415" elapsed="0.000317"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.198776" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:55:00.201048" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:55:00.201130" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 228 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:00.186615" elapsed="0.014549"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.204171" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.201916" elapsed="0.002319"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.201891" elapsed="0.002374"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.204929" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.204465" elapsed="0.000490"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.205483" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.205132" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:00.205559" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:55:00.205735" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:00.201456" elapsed="0.004304"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:00.205915" elapsed="0.000398"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:00.186040" elapsed="0.020338"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.214019" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:00.213724" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:00.219258" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:00.219371" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:55:00.219477" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:00.214191" elapsed="0.005312"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.219922" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.219666" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.222146" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.220155" elapsed="0.002082"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.224113" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.222312" elapsed="0.001852"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.222290" elapsed="0.001896"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:55:00.227926" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:55:00.227991" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:55:00.224327" elapsed="0.003713"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:00.230620" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:00.228171" elapsed="0.002526"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.228144" elapsed="0.002586"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:55:00.230775" elapsed="0.000041"/>
</return>
<msg time="2026-05-25T01:55:00.231047" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:55:00.231131" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 228 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:00.213350" elapsed="0.017814"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.233830" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.231927" elapsed="0.001948"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.231902" elapsed="0.001995"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.234460" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.234042" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.234999" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.234651" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:00.235088" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:00.235269" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:00.231463" elapsed="0.003832"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:00.235452" elapsed="0.000390"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:00.212729" elapsed="0.023176"/>
</kw>
<arg>f105.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:55:00.168079" elapsed="0.067882"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:00.161201" elapsed="0.074908"/>
</test>
<test id="s1-s3-s2-t136" name="Test Is Flow 106 Deleted" line="340">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:00.246948" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f106.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f106.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:00.247106" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:00.246809" elapsed="0.000328"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:00.247714" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38afc0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:00.247290" elapsed="0.000452"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.248220" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.247895" elapsed="0.000352"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.248675" level="INFO">${flow_id} = 229</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.248404" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.249139" level="INFO">${flow_priority} = 106</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.248852" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:55:00.250222" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:55:00.249315" elapsed="0.000938"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.250750" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.250413" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.251332" level="INFO">${flow_id} = 229</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.250987" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.251855" level="INFO">${flow_priority} = 106</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.251528" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.252397" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.252060" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.252913" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.252594" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.253448" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38afc0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.253124" elapsed="0.000366"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:55:00.246478" elapsed="0.007068"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.254095" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.253697" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.254519" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf106&lt;/flow-name&gt;
    &lt;id&gt;229&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;106&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;106&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDCD:A987:6000::/100&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;45&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;2&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;20345&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;80&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.254278" elapsed="0.000303"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.262232" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:00.261916" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:00.267327" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=229?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=229?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:00.267520" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=229?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:55:00.267618" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:00.262389" elapsed="0.005254"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.268091" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.267804" elapsed="0.000335"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.270322" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.268286" elapsed="0.002087"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:55:00.272195" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-05-25T01:55:00.270442" elapsed="0.001855"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.270422" elapsed="0.001903"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:00.272473" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:00.272706" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:00.272564" elapsed="0.000205"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:00.272547" elapsed="0.000261"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.272863" elapsed="0.000024"/>
</return>
<msg time="2026-05-25T01:55:00.275199" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:55:00.275263" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 229 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:00.261601" elapsed="0.013693"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.278291" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.276088" elapsed="0.002266"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.276045" elapsed="0.002340"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.279167" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.278589" elapsed="0.000617"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.279921" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.279436" elapsed="0.000522"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:00.280058" elapsed="0.000063"/>
</return>
<msg time="2026-05-25T01:55:00.280339" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:00.275586" elapsed="0.004788"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:00.280594" elapsed="0.000420"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:00.261035" elapsed="0.020058"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.288984" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:00.288689" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:00.293556" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:00.293663" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:55:00.293768" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:00.289156" elapsed="0.004637"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.294228" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.293951" elapsed="0.000322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.296402" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.294415" elapsed="0.002037"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.298875" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.296521" elapsed="0.002421"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.296502" elapsed="0.002470"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:55:00.302872" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:55:00.302937" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:55:00.299183" elapsed="0.003787"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:00.305290" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:00.303100" elapsed="0.002245"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.303049" elapsed="0.002320"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:55:00.305435" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:55:00.305633" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:55:00.305677" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 229 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:00.288309" elapsed="0.017391"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.307828" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.306263" elapsed="0.001610"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.306245" elapsed="0.001650"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.308465" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.308051" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.309011" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.308655" elapsed="0.000382"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:00.309103" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:00.309282" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:00.305915" elapsed="0.003392"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:00.309462" elapsed="0.000380"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:00.287660" elapsed="0.022245"/>
</kw>
<arg>f106.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:55:00.243227" elapsed="0.066734"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:00.236382" elapsed="0.073702"/>
</test>
<test id="s1-s3-s2-t137" name="Test Is Flow 107 Deleted" line="342">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:00.321083" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f107.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f107.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:00.321215" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:00.320936" elapsed="0.000309"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:00.321820" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3f7100&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:00.321396" elapsed="0.000452"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.322298" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.322000" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.322750" level="INFO">${flow_id} = 230</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.322478" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.323222" level="INFO">${flow_priority} = 107</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.322928" elapsed="0.000320"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:55:00.324177" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:55:00.323399" elapsed="0.000809"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.324699" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.324366" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.325239" level="INFO">${flow_id} = 230</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.324901" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.325763" level="INFO">${flow_priority} = 107</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.325436" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.326291" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.325956" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.326808" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.326489" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.327386" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3f7100&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.327044" elapsed="0.000384"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:55:00.320607" elapsed="0.006877"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.328019" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.327635" elapsed="0.000450"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.328490" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf107&lt;/flow-name&gt;
    &lt;id&gt;230&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;107&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;107&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.328244" elapsed="0.000309"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.336361" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:00.336019" elapsed="0.000369"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:00.341215" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=230?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=230?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:00.341409" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=230?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:55:00.341517" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:00.336519" elapsed="0.005024"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.341957" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.341706" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.344373" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.342162" elapsed="0.002262"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:55:00.346845" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:55:00.344494" elapsed="0.002440"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.344474" elapsed="0.002493"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:00.347185" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:00.347500" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:00.347314" elapsed="0.000256"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:00.347291" elapsed="0.000310"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.347645" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:55:00.349917" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:55:00.349980" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 230 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:00.335703" elapsed="0.014352"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.352966" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.350834" elapsed="0.002177"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.350809" elapsed="0.002224"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.353591" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.353195" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.354145" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.353779" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:00.354221" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:55:00.354397" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:00.350372" elapsed="0.004050"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:00.354577" elapsed="0.000382"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:00.335147" elapsed="0.019875"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.362744" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:00.362451" elapsed="0.000320"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:00.367630" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:00.367738" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:55:00.367832" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:00.362899" elapsed="0.004958"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.368320" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.368016" elapsed="0.000348"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.371290" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.368507" elapsed="0.002861"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.373887" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.371467" elapsed="0.002487"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.371440" elapsed="0.002544"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:55:00.377589" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:55:00.377635" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:55:00.374195" elapsed="0.003462"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:00.379596" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:00.377739" elapsed="0.001912"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.377720" elapsed="0.001955"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:55:00.379708" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:55:00.379899" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:55:00.379942" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 230 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:00.362052" elapsed="0.017913"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.382115" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.380533" elapsed="0.001626"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.380516" elapsed="0.001665"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.382769" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.382368" elapsed="0.000428"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.383327" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.382959" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:00.383404" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:55:00.383580" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:00.380204" elapsed="0.003401"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:00.383760" elapsed="0.000419"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:00.361446" elapsed="0.022796"/>
</kw>
<arg>f107.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:55:00.317130" elapsed="0.067169"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:00.310324" elapsed="0.074085"/>
</test>
<test id="s1-s3-s2-t138" name="Test Is Flow 108 Deleted" line="344">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:00.395369" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f108.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f108.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:00.395515" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:00.395233" elapsed="0.000311"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:00.396193" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc307060&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:00.395698" elapsed="0.000523"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.396653" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.396375" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.397119" level="INFO">${flow_id} = 231</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.396833" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.397567" level="INFO">${flow_priority} = 108</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.397297" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:55:00.398526" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:55:00.397743" elapsed="0.000814"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.399045" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.398715" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.399582" level="INFO">${flow_id} = 231</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.399260" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.400141" level="INFO">${flow_priority} = 108</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.399776" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.400654" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.400337" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.401188" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.400853" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.401710" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc307060&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.401389" elapsed="0.000362"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:55:00.394879" elapsed="0.006926"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.402358" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.401957" elapsed="0.000466"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.402822" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf108&lt;/flow-name&gt;
    &lt;id&gt;231&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;108&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;108&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.402580" elapsed="0.000306"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.410707" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:00.410409" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:00.415872" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=231?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=231?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:00.416106" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=231?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:55:00.416213" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:00.410865" elapsed="0.005373"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.416648" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.416398" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.419753" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.416897" elapsed="0.002927"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:55:00.422396" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:55:00.419923" elapsed="0.002563"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.419895" elapsed="0.002625"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:00.422719" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:00.423031" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:00.422843" elapsed="0.000281"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:00.422820" elapsed="0.000338"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.423203" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:55:00.425470" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:55:00.425532" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 231 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:00.410087" elapsed="0.015477"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.428561" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.426333" elapsed="0.002290"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.426307" elapsed="0.002347"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.429234" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.428822" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.429808" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.429458" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:00.429884" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:55:00.430060" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:00.425852" elapsed="0.004249"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:00.430259" elapsed="0.000383"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:00.409519" elapsed="0.021186"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.438421" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:00.438120" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:00.443801" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:00.443909" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:55:00.444004" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:00.438576" elapsed="0.005458"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.444503" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.444250" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.447661" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.444690" elapsed="0.003042"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.450342" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.447829" elapsed="0.002581"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.447802" elapsed="0.002639"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:55:00.454304" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:55:00.454368" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:55:00.450635" elapsed="0.003766"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:00.456923" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:00.454506" elapsed="0.002473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.454480" elapsed="0.002523"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:55:00.457035" elapsed="0.000042"/>
</return>
<msg time="2026-05-25T01:55:00.457246" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:55:00.457290" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 231 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:00.437730" elapsed="0.019582"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.459424" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.457856" elapsed="0.001613"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.457838" elapsed="0.001653"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.460037" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.459637" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.460607" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.460258" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:00.460682" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:55:00.460857" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:00.457528" elapsed="0.003389"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:00.461092" elapsed="0.000387"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:00.437124" elapsed="0.024417"/>
</kw>
<arg>f108.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:55:00.391612" elapsed="0.069984"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:00.384648" elapsed="0.077057"/>
</test>
<test id="s1-s3-s2-t139" name="Test Is Flow 109 Deleted" line="346">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:00.472445" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f109.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f109.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:00.472572" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:00.472309" elapsed="0.000293"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:00.473232" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3bdee0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:00.472772" elapsed="0.000488"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.473691" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.473413" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.474155" level="INFO">${flow_id} = 232</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.473866" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.474600" level="INFO">${flow_priority} = 109</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.474330" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:55:00.477046" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:55:00.474774" elapsed="0.002318"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.477587" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.477253" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.478120" level="INFO">${flow_id} = 232</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.477783" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.478638" level="INFO">${flow_priority} = 109</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.478316" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.479155" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;2...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.478830" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.479669" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.479353" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.480231" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3bdee0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.479864" elapsed="0.000411"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:55:00.471936" elapsed="0.008394"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.480861" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.480480" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.481297" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf109&lt;/flow-name&gt;
    &lt;id&gt;232&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;109&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;109&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.481040" elapsed="0.000364"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.489048" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:00.488752" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:00.493505" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=232?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=232?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:00.493694" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=232?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:55:00.493801" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:00.489223" elapsed="0.004604"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.494262" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.493983" elapsed="0.000324"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.496504" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.494449" elapsed="0.002106"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:55:00.499062" elapsed="0.000060"/>
</return>
<status status="PASS" start="2026-05-25T01:55:00.496625" elapsed="0.002551"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.496605" elapsed="0.002605"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:00.499406" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:00.499717" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:00.499532" elapsed="0.000256"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:00.499509" elapsed="0.000310"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.499864" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:55:00.502147" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:55:00.502212" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 232 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:00.488437" elapsed="0.013808"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.505173" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.502992" elapsed="0.002226"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.502967" elapsed="0.002272"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.505786" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.505385" elapsed="0.000428"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.506340" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.505974" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:00.506416" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:55:00.506591" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:00.502535" elapsed="0.004082"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:00.506774" elapsed="0.000398"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:00.487840" elapsed="0.019396"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.514937" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:00.514644" elapsed="0.000319"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:00.519911" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:00.520053" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:55:00.520204" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:00.515106" elapsed="0.005124"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.520639" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.520389" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.523779" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.520827" elapsed="0.003023"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.526421" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.523947" elapsed="0.002540"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.523920" elapsed="0.002599"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:55:00.529916" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:55:00.529962" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:55:00.526711" elapsed="0.003275"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:00.531761" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:00.530063" elapsed="0.001753"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.530043" elapsed="0.001797"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:55:00.531873" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:55:00.532077" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:55:00.532136" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 232 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:00.514266" elapsed="0.017893"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.534288" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.532697" elapsed="0.001635"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.532679" elapsed="0.001675"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.534894" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.534500" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.535458" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.535106" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:00.535535" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:55:00.535718" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:00.532369" elapsed="0.003376"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:00.535902" elapsed="0.000427"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:00.513641" elapsed="0.022752"/>
</kw>
<arg>f109.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:55:00.468730" elapsed="0.067718"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:00.461943" elapsed="0.074614"/>
</test>
<test id="s1-s3-s2-t140" name="Test Is Flow 110 Deleted" line="348">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:00.547378" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f110.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f110.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:00.547520" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:00.547243" elapsed="0.000307"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:00.548147" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7cc20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:00.547702" elapsed="0.000475"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.548653" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.548370" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.549129" level="INFO">${flow_id} = 233</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.548836" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.549585" level="INFO">${flow_priority} = 110</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.549310" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:55:00.550633" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:55:00.549762" elapsed="0.000902"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.551174" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.550825" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.551698" level="INFO">${flow_id} = 233</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.551375" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.552251" level="INFO">${flow_priority} = 110</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.551895" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.552762" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.552448" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.553298" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.552960" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.553817" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abff7cc20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.553497" elapsed="0.000361"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:55:00.546900" elapsed="0.007013"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.554470" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.554085" elapsed="0.000416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.554895" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-vlan-action&lt;/flow-name&gt;
    &lt;id&gt;233&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;110&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;110&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.554654" elapsed="0.000301"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.562619" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:00.562321" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:00.568249" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=233?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=233?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:00.568605" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=233?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:55:00.568797" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:00.562777" elapsed="0.006045"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.569253" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.568981" elapsed="0.000317"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.571477" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.569442" elapsed="0.002086"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:55:00.573653" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-05-25T01:55:00.571597" elapsed="0.002149"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.571578" elapsed="0.002202"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:00.573978" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:00.574316" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:00.574127" elapsed="0.000261"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:00.574101" elapsed="0.000319"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.574464" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:55:00.576776" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:55:00.576839" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 233 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:00.561988" elapsed="0.014882"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.579865" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.577645" elapsed="0.002284"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.577621" elapsed="0.002338"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.580773" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.580216" elapsed="0.000594"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.581474" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.581040" elapsed="0.000459"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:00.581550" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:55:00.581726" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:00.577181" elapsed="0.004569"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:00.581908" elapsed="0.000399"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:00.561427" elapsed="0.020944"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.590149" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:00.589837" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:00.594920" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:00.595033" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:55:00.595160" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:00.590307" elapsed="0.004879"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.595600" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.595346" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.598238" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.595793" elapsed="0.002567"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.600915" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.598460" elapsed="0.002522"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.598432" elapsed="0.002582"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:55:00.604878" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:55:00.604924" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:55:00.601228" elapsed="0.003725"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:00.606986" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:00.605032" elapsed="0.002021"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.605011" elapsed="0.002088"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:55:00.607136" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:00.607358" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:55:00.607412" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 233 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:00.589462" elapsed="0.017974"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.609585" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.607991" elapsed="0.001639"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.607973" elapsed="0.001679"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.610214" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.609799" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.610755" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.610404" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:00.610830" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:55:00.611007" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:00.607653" elapsed="0.003380"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:00.611207" elapsed="0.000386"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:00.588837" elapsed="0.022818"/>
</kw>
<arg>f110.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:55:00.543611" elapsed="0.068100"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:00.536808" elapsed="0.075016"/>
</test>
<test id="s1-s3-s2-t141" name="Test Is Flow 113 Deleted" line="350">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:00.622568" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f113.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f113.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:00.622704" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:00.622431" elapsed="0.000302"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:00.623327" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d77e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:00.622884" elapsed="0.000471"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.623789" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.623509" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.624266" level="INFO">${flow_id} = 236</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.623968" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.624714" level="INFO">${flow_priority} = 113</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.624445" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:55:00.625833" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:55:00.624891" elapsed="0.000973"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.626375" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.626023" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.626948" level="INFO">${flow_id} = 236</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.626619" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.627489" level="INFO">${flow_priority} = 113</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.627159" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.628001" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.627685" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.628563" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.628239" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.629097" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d77e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.628761" elapsed="0.000379"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:55:00.622103" elapsed="0.007093"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.629727" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.629347" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.630165" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;push-mpls-action&lt;/flow-name&gt;
    &lt;id&gt;236&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;113&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;113&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;20:14:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;19.64.0.0/10&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.192.0/18&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.629908" elapsed="0.000321"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.637869" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:00.637575" elapsed="0.000321"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:00.642759" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=236?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=236?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:00.642954" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=236?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:55:00.643051" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:00.638026" elapsed="0.005069"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.643508" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.643257" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.646185" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.643695" elapsed="0.002561"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:55:00.648855" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-05-25T01:55:00.646413" elapsed="0.002533"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.646383" elapsed="0.002598"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:00.649201" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:00.649520" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:00.649330" elapsed="0.000261"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:00.649306" elapsed="0.000317"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.649669" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:55:00.651996" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:55:00.652060" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 236 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:00.637259" elapsed="0.014861"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.654431" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.652856" elapsed="0.001621"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.652838" elapsed="0.001661"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.655039" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.654645" elapsed="0.000435"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.655606" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.655246" elapsed="0.000385"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:00.655682" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:00.655863" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:00.652446" elapsed="0.003443"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:00.656046" elapsed="0.000415"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:00.636694" elapsed="0.019831"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.664428" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:00.664098" elapsed="0.000357"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:00.669270" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:00.669383" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:55:00.669490" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:00.664587" elapsed="0.004928"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.669926" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.669675" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.672081" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.670131" elapsed="0.002002"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.674470" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.672229" elapsed="0.002309"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.672208" elapsed="0.002361"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:55:00.678438" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:55:00.678503" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:55:00.674760" elapsed="0.003775"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:00.680958" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:00.678643" elapsed="0.002410"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.678615" elapsed="0.002479"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:55:00.681130" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:00.681325" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:55:00.681369" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 236 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:00.663708" elapsed="0.017684"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.683519" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.681932" elapsed="0.001631"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.681915" elapsed="0.001671"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.684150" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.683737" elapsed="0.000454"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.684709" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.684355" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:00.684785" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:55:00.684964" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:00.681604" elapsed="0.003386"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:00.685163" elapsed="0.000383"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:00.663098" elapsed="0.022512"/>
</kw>
<arg>f113.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:55:00.618834" elapsed="0.066832"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:00.612059" elapsed="0.073719"/>
</test>
<test id="s1-s3-s2-t142" name="Test Is Flow 201 Deleted" line="352">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:00.696624" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f201.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f201.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:00.696764" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:00.696487" elapsed="0.000306"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:00.697375" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc389da0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:00.696945" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.697838" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.697558" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.698308" level="INFO">${flow_id} = 324</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.698018" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.698759" level="INFO">${flow_priority} = 201</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.698488" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:55:00.699632" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:55:00.698934" elapsed="0.000729"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.700168" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.699822" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.700702" level="INFO">${flow_id} = 324</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.700381" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.701241" level="INFO">${flow_priority} = 201</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.700896" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.701752" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.701436" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.702330" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.701986" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.702850" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc389da0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.702529" elapsed="0.000362"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:55:00.696133" elapsed="0.006814"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.703564" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.703143" elapsed="0.000452"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.703996" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-src&lt;/flow-name&gt;
    &lt;id&gt;324&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;201&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;201&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.703750" elapsed="0.000308"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.711914" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:00.711612" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:00.716698" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=324?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=324?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:00.716898" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=324?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:55:00.717007" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:00.712086" elapsed="0.004946"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.717472" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.717219" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.719842" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.717662" elapsed="0.002230"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:55:00.721931" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:55:00.719963" elapsed="0.002057"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.719944" elapsed="0.002110"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:00.722276" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:00.722590" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:00.722402" elapsed="0.000259"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:00.722379" elapsed="0.000313"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.722736" elapsed="0.000019"/>
</return>
<msg time="2026-05-25T01:55:00.725006" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:55:00.725086" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 324 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:00.711296" elapsed="0.013825"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.728167" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.725940" elapsed="0.002320"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.725915" elapsed="0.002377"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.728956" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.728498" elapsed="0.000485"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.729513" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.729161" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:00.729590" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:55:00.729767" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:00.725472" elapsed="0.004320"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:00.729947" elapsed="0.000401"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:00.710731" elapsed="0.019681"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.738137" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:00.737823" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:00.742837" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:00.742946" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:55:00.743040" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:00.738296" elapsed="0.004788"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.743504" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.743252" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.745666" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.743694" elapsed="0.002022"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.747515" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.745785" elapsed="0.001777"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.745766" elapsed="0.001819"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:55:00.751014" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:55:00.751099" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:55:00.747723" elapsed="0.003411"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:00.753867" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:00.751241" elapsed="0.002704"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.751215" elapsed="0.002763"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:55:00.754024" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:55:00.754315" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:55:00.754376" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 324 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:00.737445" elapsed="0.016962"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.757309" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.755188" elapsed="0.002166"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.755163" elapsed="0.002213"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.757957" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.757558" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.758519" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.758164" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:00.758596" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:55:00.758773" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:00.754701" elapsed="0.004098"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:00.758956" elapsed="0.000396"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:00.736820" elapsed="0.022596"/>
</kw>
<arg>f201.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:55:00.692715" elapsed="0.066758"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:00.685952" elapsed="0.073627"/>
</test>
<test id="s1-s3-s2-t143" name="Test Is Flow 202 Deleted" line="354">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:00.770232" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f202.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f202.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:00.770358" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:00.770096" elapsed="0.000291"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:00.770946" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3f6a70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:00.770540" elapsed="0.000435"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.771423" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.771144" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.771869" level="INFO">${flow_id} = 325</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.771601" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.772354" level="INFO">${flow_priority} = 202</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.772044" elapsed="0.000336"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:55:00.773226" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:55:00.772530" elapsed="0.000726"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.773743" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.773414" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.774312" level="INFO">${flow_id} = 325</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.773937" elapsed="0.000426"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.774868" level="INFO">${flow_priority} = 202</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.774520" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.775399" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.775079" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.775964" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.775624" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.776569" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3f6a70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.776199" elapsed="0.000421"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:55:00.769753" elapsed="0.006923"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.777233" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.776829" elapsed="0.000470"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.777700" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tcp-dst&lt;/flow-name&gt;
    &lt;id&gt;325&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;202&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;202&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.777457" elapsed="0.000305"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.785702" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:00.785404" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:00.790106" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=325?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=325?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:00.790298" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=325?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:55:00.790396" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:00.785860" elapsed="0.004562"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.790835" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.790580" elapsed="0.000315"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.793136" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.791059" elapsed="0.002128"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:55:00.795005" elapsed="0.000027"/>
</return>
<status status="PASS" start="2026-05-25T01:55:00.793258" elapsed="0.001824"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.793238" elapsed="0.001870"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:00.795251" elapsed="0.000021"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:00.795475" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:00.795340" elapsed="0.000185"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:00.795324" elapsed="0.000224"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.795579" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:55:00.797221" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:55:00.797267" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 325 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:00.785047" elapsed="0.012256"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.800295" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.798053" elapsed="0.002305"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.798028" elapsed="0.002360"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.801163" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.800591" elapsed="0.000610"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.801918" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.801426" elapsed="0.000573"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:00.802093" elapsed="0.000042"/>
</return>
<msg time="2026-05-25T01:55:00.802351" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:00.797596" elapsed="0.004790"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:00.802605" elapsed="0.000559"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:00.784491" elapsed="0.018763"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.811452" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:00.811156" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:00.816484" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:00.816592" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:55:00.816687" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:00.811608" elapsed="0.005104"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.817144" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.816871" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.819469" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.817334" elapsed="0.002185"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.821519" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.819589" elapsed="0.001996"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.819570" elapsed="0.002046"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:55:00.825505" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:55:00.825570" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:55:00.821808" elapsed="0.003795"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:00.828101" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:00.825710" elapsed="0.002470"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.825683" elapsed="0.002530"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:55:00.828382" elapsed="0.000056"/>
</return>
<msg time="2026-05-25T01:55:00.828674" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:55:00.828728" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 325 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:00.810762" elapsed="0.017989"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.830889" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.829315" elapsed="0.001620"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.829297" elapsed="0.001660"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.831520" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.831119" elapsed="0.000427"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.832062" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.831712" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:00.832155" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:55:00.832342" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:00.828961" elapsed="0.003407"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:00.832578" elapsed="0.000387"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:00.810152" elapsed="0.022878"/>
</kw>
<arg>f202.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:55:00.766518" elapsed="0.066586"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:00.759751" elapsed="0.073462"/>
</test>
<test id="s1-s3-s2-t144" name="Test Is Flow 203 Deleted" line="356">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:00.843960" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f203.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f203.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:00.844125" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:00.843828" elapsed="0.000328"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:00.844752" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3bd760&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:00.844338" elapsed="0.000442"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.845229" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.844935" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.845680" level="INFO">${flow_id} = 326</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.845410" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.846142" level="INFO">${flow_priority} = 203</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.845857" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:55:00.847191" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:55:00.846319" elapsed="0.000904"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.847723" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.847385" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.848282" level="INFO">${flow_id} = 326</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.847924" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.848813" level="INFO">${flow_priority} = 203</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.848481" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.849346" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.849010" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.849873" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.849549" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.850412" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3bd760&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.850086" elapsed="0.000368"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:55:00.843501" elapsed="0.007011"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.851095" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.850693" elapsed="0.000434"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.851521" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-src&lt;/flow-name&gt;
    &lt;id&gt;326&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;203&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;203&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.851280" elapsed="0.000350"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.859318" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:00.859002" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:00.863250" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=326?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=326?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:00.863442" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=326?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:55:00.863540" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:00.859475" elapsed="0.004090"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.863973" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.863723" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.866232" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.864177" elapsed="0.002106"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:55:00.868122" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-05-25T01:55:00.866353" elapsed="0.001836"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.866333" elapsed="0.001880"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:00.868380" elapsed="0.000023"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:00.868604" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:00.868472" elapsed="0.000183"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:00.868455" elapsed="0.000222"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.868718" elapsed="0.000022"/>
</return>
<msg time="2026-05-25T01:55:00.870965" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:55:00.871027" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 326 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:00.858687" elapsed="0.012372"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.874035" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.871826" elapsed="0.002292"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.871802" elapsed="0.002348"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.874908" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.874352" elapsed="0.000593"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.875680" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.875191" elapsed="0.000526"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:00.875786" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:55:00.876040" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:00.871367" elapsed="0.004746"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:00.876369" elapsed="0.000521"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:00.858120" elapsed="0.018834"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.884673" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:00.884377" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:00.890618" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:00.890772" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:55:00.890880" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:00.884830" elapsed="0.006076"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.891339" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.891064" elapsed="0.000320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.894098" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.891526" elapsed="0.002671"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.896959" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.894323" elapsed="0.002704"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.894288" elapsed="0.002770"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:55:00.901042" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:55:00.901111" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:55:00.897291" elapsed="0.003852"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:00.902939" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:00.901223" elapsed="0.001774"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.901203" elapsed="0.001819"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:55:00.903055" elapsed="0.000050"/>
</return>
<msg time="2026-05-25T01:55:00.903283" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:55:00.903327" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 326 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:00.883964" elapsed="0.019386"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.905568" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.903902" elapsed="0.001712"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.903884" elapsed="0.001752"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.906202" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.905785" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.906792" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.906428" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:00.906870" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:55:00.907046" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:00.903569" elapsed="0.003517"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:00.907247" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:00.883353" elapsed="0.024342"/>
</kw>
<arg>f203.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:55:00.840237" elapsed="0.067518"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:00.833381" elapsed="0.074487"/>
</test>
<test id="s1-s3-s2-t145" name="Test Is Flow 204 Deleted" line="358">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:00.918724" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f204.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f204.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:00.918861" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cook...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:00.918586" elapsed="0.000304"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:00.919468" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35a890&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:00.919040" elapsed="0.000456"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.919968" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.919686" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.920455" level="INFO">${flow_id} = 327</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.920167" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.920906" level="INFO">${flow_priority} = 204</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.920635" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:55:00.921959" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:55:00.921099" elapsed="0.000891"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.922499" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.922165" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.923018" level="INFO">${flow_id} = 327</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.922696" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.923555" level="INFO">${flow_priority} = 204</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.923229" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.924061" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cook...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.923748" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.924622" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.924299" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.925153" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc35a890&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.924818" elapsed="0.000377"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:55:00.918257" elapsed="0.006994"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.925780" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cook...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.925401" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.926220" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-udp-dst&lt;/flow-name&gt;
    &lt;id&gt;327&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;204&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;204&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;183&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.925961" elapsed="0.000320"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.933937" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:00.933637" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:00.940429" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=327?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=327?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:00.940623" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=327?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:55:00.940783" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:00.934108" elapsed="0.006720"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.941457" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.941100" elapsed="0.000420"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.944585" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.941723" elapsed="0.002932"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:55:00.947188" elapsed="0.000038"/>
</return>
<status status="PASS" start="2026-05-25T01:55:00.944752" elapsed="0.002526"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.944724" elapsed="0.002587"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:00.947507" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:00.947821" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:00.947633" elapsed="0.000259"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:00.947610" elapsed="0.000314"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.947968" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:55:00.950254" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:55:00.950317" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 327 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:00.933321" elapsed="0.017029"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.953226" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.951120" elapsed="0.002151"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.951094" elapsed="0.002199"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.953834" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.953439" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.954391" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.954022" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:00.954467" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:55:00.954643" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:00.950639" elapsed="0.004029"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:00.954828" elapsed="0.000403"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:00.932756" elapsed="0.022538"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.963037" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:00.962742" elapsed="0.000335"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:00.968440" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:00.968549" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:55:00.968655" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:00.963210" elapsed="0.005472"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.969319" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.968925" elapsed="0.000457"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.972339" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:00.969583" elapsed="0.002876"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.975100" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.972559" elapsed="0.002615"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.972532" elapsed="0.002673"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:55:00.978538" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:55:00.978583" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:55:00.975418" elapsed="0.003188"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:00.980391" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:00.978683" elapsed="0.001763"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.978664" elapsed="0.001807"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:55:00.980503" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:55:00.980696" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:55:00.980739" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 327 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:00.962362" elapsed="0.018399"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:00.982893" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:00.981319" elapsed="0.001619"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:00.981301" elapsed="0.001659"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.983521" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.983120" elapsed="0.000428"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.984063" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:00.983712" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:00.984157" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:55:00.984358" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:00.980973" elapsed="0.003411"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:00.984541" elapsed="0.000382"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:00.961733" elapsed="0.023259"/>
</kw>
<arg>f204.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:55:00.914976" elapsed="0.070109"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:00.908149" elapsed="0.077050"/>
</test>
<test id="s1-s3-s2-t146" name="Test Is Flow 205 Deleted" line="360">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:00.996032" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f205.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f205.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:00.996180" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:00.995898" elapsed="0.000311"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:00.996808" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1ea20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:00.996378" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.997289" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.996989" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.997738" level="INFO">${flow_id} = 328</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.997470" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:00.998204" level="INFO">${flow_priority} = 205</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:00.997917" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:55:00.999321" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:55:00.998381" elapsed="0.000971"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:00.999852" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:00.999514" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.000468" level="INFO">${flow_id} = 328</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.000106" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.000997" level="INFO">${flow_priority} = 205</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.000668" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.001525" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.001208" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.002040" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.001722" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.002577" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfc1ea20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.002254" elapsed="0.000365"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:55:00.995569" elapsed="0.007106"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.003226" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.002825" elapsed="0.000432"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.003651" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;328&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;205&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-source-port-action&lt;/flow-name&gt;
    &lt;priority&gt;205&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.003409" elapsed="0.000306"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.011471" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:01.011173" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:01.016848" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=328?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=328?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:01.017049" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=328?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:55:01.017170" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:01.011630" elapsed="0.005566"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.017605" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.017356" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.020778" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.017831" elapsed="0.003019"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:55:01.023455" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-05-25T01:55:01.020993" elapsed="0.002553"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.020963" elapsed="0.002618"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:01.023777" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:01.024111" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:01.023903" elapsed="0.000283"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:01.023880" elapsed="0.000342"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:01.024272" elapsed="0.000022"/>
</return>
<msg time="2026-05-25T01:55:01.026553" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:55:01.026616" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 328 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:01.010832" elapsed="0.015815"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:01.029472" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:01.027420" elapsed="0.002098"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.027395" elapsed="0.002146"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.030099" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.029687" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.030643" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.030293" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:01.030725" elapsed="0.000035"/>
</return>
<msg time="2026-05-25T01:55:01.030933" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:01.026938" elapsed="0.004020"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:01.031128" elapsed="0.000384"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:01.010252" elapsed="0.021324"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.039515" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:01.039217" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:01.045740" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:01.045900" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:55:01.046048" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:01.039673" elapsed="0.006442"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.046743" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.046339" elapsed="0.000468"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.049764" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.047010" elapsed="0.002825"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:55:01.052492" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:01.049931" elapsed="0.002630"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.049904" elapsed="0.002688"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:55:01.055471" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:55:01.055518" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:55:01.052814" elapsed="0.002726"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:01.057344" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:01.055617" elapsed="0.001820"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.055598" elapsed="0.001864"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:55:01.057496" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:55:01.057690" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:55:01.057733" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 328 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:01.038823" elapsed="0.018933"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:01.059878" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:01.058316" elapsed="0.001607"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.058298" elapsed="0.001648"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.060530" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.060106" elapsed="0.000451"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.061094" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.060728" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:01.061172" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:01.061350" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:01.057968" elapsed="0.003407"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:01.061531" elapsed="0.000385"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:01.038211" elapsed="0.023769"/>
</kw>
<arg>f205.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:55:00.992294" elapsed="0.069742"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:00.985444" elapsed="0.076717"/>
</test>
<test id="s1-s3-s2-t147" name="Test Is Flow 206 Deleted" line="362">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:01.073186" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f206.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f206.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:01.073314" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:01.073035" elapsed="0.000309"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:01.073945" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc091940&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:01.073496" elapsed="0.000479"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:01.074431" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:01.074148" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:01.074881" level="INFO">${flow_id} = 329</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:01.074611" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:01.075346" level="INFO">${flow_priority} = 206</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:01.075060" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:55:01.076286" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:55:01.075521" elapsed="0.000795"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.076839" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.076499" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.077370" level="INFO">${flow_id} = 329</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.077034" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.077887" level="INFO">${flow_priority} = 206</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.077564" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.078409" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
 ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.078092" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.078974" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.078649" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.079512" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc091940&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.079188" elapsed="0.000366"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:55:01.072705" elapsed="0.006904"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.080158" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.079759" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.080592" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;329&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
            &lt;ethernet-destination&gt;
                &lt;address&gt;ff:ff:29:01:19:61&lt;/address&gt;
            &lt;/ethernet-destination&gt;
            &lt;ethernet-source&gt;
                &lt;address&gt;00:00:00:11:23:ae&lt;/address&gt;
            &lt;/ethernet-source&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;17.0.0.0/8&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;172.168.0.0/16&lt;/ipv4-destination&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;132&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;0&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;0&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;sctp-source-port&gt;768&lt;/sctp-source-port&gt;
        &lt;sctp-destination-port&gt;384&lt;/sctp-destination-port&gt;
        &lt;in-port&gt;openflow:1:0&lt;/in-port&gt;
    &lt;/match&gt;
    &lt;cookie&gt;206&lt;/cookie&gt;
    &lt;flow-name&gt;sctp-destination-port&lt;/flow-name&gt;
    &lt;priority&gt;206&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.080349" elapsed="0.000307"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.088328" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:01.088015" elapsed="0.000356"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:01.093488" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=329?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=329?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:01.093678" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=329?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:55:01.093786" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:01.088513" elapsed="0.005299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.094250" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.093974" elapsed="0.000322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.096673" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.094440" elapsed="0.002296"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:55:01.099308" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-05-25T01:55:01.096845" elapsed="0.002554"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.096811" elapsed="0.002621"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:01.099627" elapsed="0.000031"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:01.099939" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:01.099753" elapsed="0.000262"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:01.099730" elapsed="0.000317"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:01.100112" elapsed="0.000021"/>
</return>
<msg time="2026-05-25T01:55:01.102445" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:55:01.102509" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 329 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:01.087702" elapsed="0.014839"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:01.105394" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:01.103323" elapsed="0.002116"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.103298" elapsed="0.002164"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.106012" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.105609" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.106610" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.106252" elapsed="0.000384"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:01.106687" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:55:01.106866" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:01.102836" elapsed="0.004056"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:01.107047" elapsed="0.000398"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:01.087147" elapsed="0.020362"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.115415" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:01.115118" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:01.121744" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:01.121895" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:55:01.122027" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:01.115570" elapsed="0.006492"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.122663" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.122312" elapsed="0.000414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.125683" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.122923" elapsed="0.002830"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:55:01.128282" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:01.125848" elapsed="0.002500"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.125821" elapsed="0.002591"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:55:01.131249" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:55:01.131296" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:55:01.128611" elapsed="0.002709"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:01.133290" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:01.131396" elapsed="0.001949"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.131378" elapsed="0.001991"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:55:01.133403" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:55:01.133597" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:55:01.133642" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 329 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:01.114727" elapsed="0.018938"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:01.135806" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:01.134227" elapsed="0.001662"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.134209" elapsed="0.001706"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.136518" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.136079" elapsed="0.000466"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.137079" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.136712" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:01.137160" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:01.137340" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:01.133877" elapsed="0.003489"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:01.137523" elapsed="0.000384"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:01.113945" elapsed="0.024025"/>
</kw>
<arg>f206.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:55:01.069190" elapsed="0.068838"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:01.062399" elapsed="0.075756"/>
</test>
<test id="s1-s3-s2-t148" name="Test Is Flow 209 Deleted" line="364">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:01.149054" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f209.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f209.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:01.149204" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;co...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:01.148918" elapsed="0.000314"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:01.149806" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d7ab0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:01.149387" elapsed="0.000447"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:01.150288" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:01.149989" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:01.150739" level="INFO">${flow_id} = 332</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:01.150469" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:01.151205" level="INFO">${flow_priority} = 209</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:01.150918" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:55:01.152103" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/co...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:55:01.151382" elapsed="0.000752"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.152659" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.152293" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.153193" level="INFO">${flow_id} = 332</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.152856" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.153713" level="INFO">${flow_priority} = 209</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.153388" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.154240" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;co...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.153906" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.154757" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/co...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.154439" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.155294" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d7ab0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.154953" elapsed="0.000382"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:55:01.148589" elapsed="0.006801"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.155962" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/co...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.155579" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.156414" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-tunnel-id&lt;/flow-name&gt;
    &lt;id&gt;332&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;209&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;209&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.156159" elapsed="0.000320"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.164348" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:01.164034" elapsed="0.000353"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:01.170295" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=332?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=332?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:01.170491" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=332?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:55:01.170590" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:01.164522" elapsed="0.006094"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.171178" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.170801" elapsed="0.000440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.174425" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.171442" elapsed="0.003071"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:55:01.177405" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-05-25T01:55:01.174615" elapsed="0.002883"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.174586" elapsed="0.002946"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:01.177727" elapsed="0.000030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:01.178039" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:01.177853" elapsed="0.000278"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:01.177830" elapsed="0.000334"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:01.178208" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:55:01.180524" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:55:01.180588" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 332 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:01.163717" elapsed="0.016903"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:01.182782" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:01.181199" elapsed="0.001628"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.181180" elapsed="0.001669"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.183410" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.182995" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.183985" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.183635" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:01.184060" elapsed="0.000045"/>
</return>
<msg time="2026-05-25T01:55:01.184257" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:01.180853" elapsed="0.003429"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:01.184469" elapsed="0.000406"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:01.163161" elapsed="0.021783"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.192784" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:01.192483" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:01.198578" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:01.198694" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:55:01.198790" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:01.192942" elapsed="0.005873"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.199261" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.198977" elapsed="0.000329"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.201968" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.199450" elapsed="0.002590"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:55:01.204740" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:01.202161" elapsed="0.002650"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.202132" elapsed="0.002711"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:55:01.208881" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:55:01.208929" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:55:01.205041" elapsed="0.003913"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:01.210751" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:01.209036" elapsed="0.001773"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.209015" elapsed="0.001818"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:55:01.210867" elapsed="0.000033"/>
</return>
<msg time="2026-05-25T01:55:01.211116" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:55:01.211165" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 332 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:01.192061" elapsed="0.019127"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:01.213347" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:01.211766" elapsed="0.001630"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.211749" elapsed="0.001670"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.214007" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.213571" elapsed="0.000463"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.214567" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.214216" elapsed="0.000529"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:01.214795" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:55:01.214972" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:01.211423" elapsed="0.003659"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:01.215249" elapsed="0.000402"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:01.191445" elapsed="0.024274"/>
</kw>
<arg>f209.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:55:01.145252" elapsed="0.070527"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:01.138402" elapsed="0.077501"/>
</test>
<test id="s1-s3-s2-t149" name="Test Is Flow 214 Deleted" line="366">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:01.226968" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f214.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f214.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:01.227177" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cooki...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:01.226811" elapsed="0.000398"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:01.227822" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3be930&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:01.227372" elapsed="0.000479"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:01.228362" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:01.228012" elapsed="0.000379"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:01.229018" level="INFO">${flow_id} = 337</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:01.228742" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:01.229495" level="INFO">${flow_priority} = 214</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:01.229217" elapsed="0.000304"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:55:01.230674" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:55:01.229675" elapsed="0.001032"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.231252" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.230877" elapsed="0.000420"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.231800" level="INFO">${flow_id} = 337</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.231460" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.232360" level="INFO">${flow_priority} = 214</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.232003" elapsed="0.000440"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.232942" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cooki...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.232610" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.233488" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.233161" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.234013" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3be930&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.233690" elapsed="0.000365"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:55:01.226459" elapsed="0.007674"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.234705" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cooki...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.234288" elapsed="0.000448"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.235165" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;set-field-ip-ecn&lt;/flow-name&gt;
    &lt;id&gt;337&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;214&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;214&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-source&gt;10.1.2.0/24&lt;/ipv4-source&gt;
        &lt;ipv4-destination&gt;20.4.0.0/16&lt;/ipv4-destination&gt;
		&lt;ip-match&gt;
            &lt;ip-protocol&gt;56&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
	    &lt;ip-ecn&gt;1&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.234893" elapsed="0.000395"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.243163" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:01.242826" elapsed="0.000366"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:01.249029" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=337?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=337?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:01.249343" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=337?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:55:01.249545" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:01.243327" elapsed="0.006271"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.250315" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.249895" elapsed="0.000488"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.253684" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.250598" elapsed="0.003162"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:55:01.256562" elapsed="0.000050"/>
</return>
<status status="PASS" start="2026-05-25T01:55:01.253874" elapsed="0.002795"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.253841" elapsed="0.002864"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:01.256919" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:01.257276" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:01.257052" elapsed="0.000300"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:01.257028" elapsed="0.000358"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:01.257434" elapsed="0.000021"/>
</return>
<msg time="2026-05-25T01:55:01.259916" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:55:01.259984" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 337 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:01.242503" elapsed="0.017516"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:01.262504" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:01.260900" elapsed="0.001652"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.260881" elapsed="0.001693"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.263217" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.262742" elapsed="0.000503"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.263762" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.263410" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:01.263837" elapsed="0.000034"/>
</return>
<msg time="2026-05-25T01:55:01.264022" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:01.260472" elapsed="0.003575"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:01.264227" elapsed="0.000427"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:01.241885" elapsed="0.022839"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.272687" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:01.272157" elapsed="0.000559"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:01.279937" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:01.280198" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:55:01.280306" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:01.272853" elapsed="0.007479"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.281226" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.280543" elapsed="0.000755"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.284564" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.281517" elapsed="0.003124"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:55:01.287412" elapsed="0.000026"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:01.284760" elapsed="0.002728"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.284724" elapsed="0.002799"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:55:01.290747" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:55:01.290795" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:55:01.287752" elapsed="0.003068"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:01.292654" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:01.290901" elapsed="0.001810"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.290881" elapsed="0.001854"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:55:01.292769" elapsed="0.000035"/>
</return>
<msg time="2026-05-25T01:55:01.292979" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:55:01.293024" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 337 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:01.271761" elapsed="0.021286"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:01.295238" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:01.293654" elapsed="0.001629"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.293636" elapsed="0.001670"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.295906" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.295461" elapsed="0.000473"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.296501" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.296115" elapsed="0.000413"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:01.296579" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:55:01.296765" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:01.293310" elapsed="0.003481"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:01.296952" elapsed="0.000421"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:01.271126" elapsed="0.026313"/>
</kw>
<arg>f214.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:55:01.223127" elapsed="0.074374"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:01.216229" elapsed="0.081400"/>
</test>
<test id="s1-s3-s2-t150" name="Test Is Flow 218 Deleted" line="368">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:01.308833" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f218.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f218.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:01.309024" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:01.308667" elapsed="0.000387"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:01.309691" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4d9120&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:01.309248" elapsed="0.000471"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:01.310263" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:01.309954" elapsed="0.000338"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:01.310724" level="INFO">${flow_id} = 341</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:01.310448" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:01.311194" level="INFO">${flow_priority} = 218</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:01.310903" elapsed="0.000318"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:55:01.313978" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:55:01.311374" elapsed="0.002638"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.314577" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.314206" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.315116" level="INFO">${flow_id} = 341</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.314780" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.315635" level="INFO">${flow_priority} = 218</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.315311" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.316153" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.315825" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.316701" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.316348" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.317237" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc4d9120&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.316896" elapsed="0.000383"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:55:01.308281" elapsed="0.009056"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.317897" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.317489" elapsed="0.000438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.318343" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;go-to-table&gt;
                &lt;table_id&gt;3&lt;/table_id&gt;
            &lt;/go-to-table&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;341&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;tunnel&gt;
            &lt;tunnel-mask&gt;0xfff0&lt;/tunnel-mask&gt;
            &lt;tunnel-id&gt;10656&lt;/tunnel-id&gt;
        &lt;/tunnel&gt;
    &lt;/match&gt;
    &lt;cookie&gt;218&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-go-to-table&lt;/flow-name&gt;
    &lt;priority&gt;218&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.318098" elapsed="0.000301"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.326259" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:01.325921" elapsed="0.000366"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:01.332354" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=341?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=341?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:01.332623" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=341?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:55:01.332781" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:01.326425" elapsed="0.006395"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.333572" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.333175" elapsed="0.000465"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.336999" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.333862" elapsed="0.003232"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:55:01.339842" elapsed="0.000052"/>
</return>
<status status="PASS" start="2026-05-25T01:55:01.337210" elapsed="0.002740"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.337176" elapsed="0.002811"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:01.340220" elapsed="0.000033"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:01.340589" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:01.340354" elapsed="0.000314"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:01.340330" elapsed="0.000372"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:01.340742" elapsed="0.000016"/>
</return>
<msg time="2026-05-25T01:55:01.342398" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:55:01.342443" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 341 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:01.325597" elapsed="0.016869"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:01.344650" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:01.343048" elapsed="0.001649"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.343030" elapsed="0.001690"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.345312" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.344875" elapsed="0.000465"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.345864" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.345508" elapsed="0.000383"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:01.345943" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:55:01.346142" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:01.342706" elapsed="0.003462"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:01.346329" elapsed="0.000394"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:01.324974" elapsed="0.021814"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.354725" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:01.354404" elapsed="0.000349"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:01.361662" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:01.361852" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:55:01.361996" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:01.354890" elapsed="0.007145"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.362697" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.362316" elapsed="0.000449"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.366330" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.362977" elapsed="0.003431"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:55:01.369106" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:01.366601" elapsed="0.002558"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.366565" elapsed="0.002617"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:55:01.371770" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:55:01.371815" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:55:01.369328" elapsed="0.002511"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:01.373623" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:01.371916" elapsed="0.001764"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.371897" elapsed="0.001809"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:55:01.373742" elapsed="0.000033"/>
</return>
<msg time="2026-05-25T01:55:01.373948" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:55:01.373991" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 341 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:01.353975" elapsed="0.020039"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:01.376346" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:01.374706" elapsed="0.001706"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.374687" elapsed="0.001747"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.377058" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.376619" elapsed="0.000483"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.377620" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.377268" elapsed="0.000383"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:01.377701" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:01.377882" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:01.374287" elapsed="0.003621"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:01.378080" elapsed="0.000400"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:01.353338" elapsed="0.025209"/>
</kw>
<arg>f218.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:55:01.304861" elapsed="0.073745"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:01.297958" elapsed="0.080775"/>
</test>
<test id="s1-s3-s2-t151" name="Test Is Flow 219 Deleted" line="370">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:01.389794" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f219.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f219.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:01.389965" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;c...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:01.389645" elapsed="0.000350"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:01.390619" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3f6bb0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:01.390173" elapsed="0.000475"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:01.391105" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:01.390806" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:01.391564" level="INFO">${flow_id} = 342</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:01.391290" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:01.392017" level="INFO">${flow_priority} = 219</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:01.391743" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:55:01.393166" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:55:01.392215" elapsed="0.000983"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.393705" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.393360" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.394318" level="INFO">${flow_id} = 342</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.393968" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.394850" level="INFO">${flow_priority} = 219</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.394516" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.395376" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;c...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.395043" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.395894" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.395574" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.396432" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc3f6bb0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.396107" elapsed="0.000379"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:55:01.389305" elapsed="0.007239"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.397110" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.396696" elapsed="0.000446"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.397539" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
        	&lt;order&gt;0&lt;/order&gt;
		&lt;clear-actions&gt;
		&lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
		&lt;/clear-actions&gt;
	&lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;342&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;vlan-match&gt;
            &lt;vlan-id&gt;
                &lt;vlan-id&gt;10&lt;/vlan-id&gt;
                &lt;vlan-id-present&gt;true&lt;/vlan-id-present&gt;
            &lt;/vlan-id&gt;
            &lt;vlan-pcp&gt;3&lt;/vlan-pcp&gt;
        &lt;/vlan-match&gt;
    &lt;/match&gt;
    &lt;cookie&gt;219&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-clear-actions&lt;/flow-name&gt;
    &lt;priority&gt;219&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.397296" elapsed="0.000301"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.405461" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:01.405137" elapsed="0.000353"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:01.411202" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=342?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=342?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:01.411435" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=342?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:55:01.411541" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:01.405628" elapsed="0.005939"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.412018" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.411746" elapsed="0.000332"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.414340" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.412227" elapsed="0.002165"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:55:01.416234" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-05-25T01:55:01.414474" elapsed="0.001838"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.414450" elapsed="0.001887"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:01.416514" elapsed="0.000023"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:01.416863" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:01.416678" elapsed="0.000261"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:01.416660" elapsed="0.000314"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:01.417022" elapsed="0.000021"/>
</return>
<msg time="2026-05-25T01:55:01.419479" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:55:01.419545" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 342 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:01.404788" elapsed="0.014791"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:01.422828" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:01.420440" elapsed="0.002456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.420413" elapsed="0.002516"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.423795" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.423176" elapsed="0.000659"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.424655" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.424095" elapsed="0.000596"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:01.424745" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:55:01.424925" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:01.419913" elapsed="0.005038"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:01.425129" elapsed="0.000411"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:01.404138" elapsed="0.021470"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.433472" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:01.433155" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:01.439332" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:01.439536" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:55:01.439696" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:01.433637" elapsed="0.006097"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.440437" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.440016" elapsed="0.000532"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.445425" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.440790" elapsed="0.004741"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:55:01.448440" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:01.445690" elapsed="0.003049"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.445641" elapsed="0.003135"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:55:01.452540" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:55:01.452608" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:55:01.449003" elapsed="0.003639"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:01.454974" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:01.452759" elapsed="0.002282"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.452729" elapsed="0.002336"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:55:01.455133" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:55:01.455357" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:55:01.455403" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 342 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:01.432752" elapsed="0.022676"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:01.457782" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:01.456161" elapsed="0.001669"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.456141" elapsed="0.001711"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.458500" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.458011" elapsed="0.000517"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.459058" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.458697" elapsed="0.000414"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:01.459171" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:55:01.459357" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:01.455764" elapsed="0.003620"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:01.459548" elapsed="0.000410"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:01.432055" elapsed="0.027972"/>
</kw>
<arg>f219.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:55:01.386003" elapsed="0.074117"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:01.379095" elapsed="0.081161"/>
</test>
<test id="s1-s3-s2-t152" name="Test Is Flow 220 Deleted" line="372">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:01.471354" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f220.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f220.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:01.471522" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:01.471207" elapsed="0.000344"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:01.472145" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d62f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:01.471706" elapsed="0.000467"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:01.472644" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:01.472330" elapsed="0.000343"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:01.473116" level="INFO">${flow_id} = 343</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:01.472826" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:55:01.473567" level="INFO">${flow_priority} = 220</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:55:01.473296" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:55:01.474894" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:55:01.473743" elapsed="0.001196"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.475658" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.475189" elapsed="0.000535"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.476443" level="INFO">${flow_id} = 343</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.475942" elapsed="0.000578"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.477271" level="INFO">${flow_priority} = 220</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.476749" elapsed="0.000586"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.478029" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.477559" elapsed="0.000563"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.478817" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.478349" elapsed="0.000536"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.479753" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1d62f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.479259" elapsed="0.000556"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:55:01.470853" elapsed="0.009047"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.480746" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
          ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.480140" elapsed="0.000653"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.481378" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
                    &lt;order&gt;0&lt;/order&gt;
            &lt;write-metadata&gt;
                &lt;metadata-mask&gt;12&lt;/metadata-mask&gt;
                &lt;metadata&gt;10&lt;/metadata&gt;
            &lt;/write-metadata&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;id&gt;343&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;out_port&gt;0xffffffff&lt;/out_port&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;out_group&gt;0xffffffff&lt;/out_group&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.0.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;cookie&gt;220&lt;/cookie&gt;
    &lt;flow-name&gt;flow-instruction-write-metadata&lt;/flow-name&gt;
    &lt;priority&gt;220&lt;/priority&gt;
    &lt;barrier&gt;false&lt;/barrier&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.481014" elapsed="0.000449"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.492397" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:01.491933" elapsed="0.000504"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:01.499227" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=343?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=343?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:01.499473" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=343?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:55:01.499592" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:01.492660" elapsed="0.006959"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.500130" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.499825" elapsed="0.000360"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.502513" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.500338" elapsed="0.002234"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:55:01.505163" elapsed="0.000047"/>
</return>
<status status="PASS" start="2026-05-25T01:55:01.502658" elapsed="0.002609"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.502632" elapsed="0.002669"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:01.505507" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:01.505832" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:01.505638" elapsed="0.000269"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:01.505614" elapsed="0.000326"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:01.505986" elapsed="0.000020"/>
</return>
<msg time="2026-05-25T01:55:01.508328" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:55:01.508397" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 343 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:01.491488" elapsed="0.016945"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:01.511545" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:01.509291" elapsed="0.002319"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.509264" elapsed="0.002377"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.512453" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.511852" elapsed="0.000757"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.513392" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.512853" elapsed="0.000577"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:01.513502" elapsed="0.000042"/>
</return>
<msg time="2026-05-25T01:55:01.513758" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:01.508771" elapsed="0.005014"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:01.513948" elapsed="0.000423"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:01.490624" elapsed="0.023814"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.522867" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:01.522482" elapsed="0.000417"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:01.527883" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node01wyyfp3krk4lr18v149ks26txl9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:01.528032" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:55:01.528172" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:01.523051" elapsed="0.005149"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.528690" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.528391" elapsed="0.000346"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.531245" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.528882" elapsed="0.002415"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:55:01.533179" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:01.531381" elapsed="0.001853"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.531355" elapsed="0.001903"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:55:01.537032" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:55:01.537129" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:55:01.533404" elapsed="0.003762"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:01.539841" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:01.537279" elapsed="0.002644"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.537251" elapsed="0.002708"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:55:01.540008" elapsed="0.000048"/>
</return>
<msg time="2026-05-25T01:55:01.540335" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:55:01.540399" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 343 and 1</doc>
<status status="PASS" start="2026-05-25T01:55:01.521673" elapsed="0.018760"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:55:01.543041" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:01.541349" elapsed="0.001751"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.541322" elapsed="0.001801"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.543697" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.543275" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.544250" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:01.543885" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:55:01.544326" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:01.544599" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:55:01.540819" elapsed="0.003807"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:55:01.544791" elapsed="0.000419"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:55:01.520912" elapsed="0.024366"/>
</kw>
<arg>f220.xml</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:55:01.467600" elapsed="0.077739"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:01.460581" elapsed="0.084885"/>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-05-25T01:55:01.546404" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-05-25T01:55:01.546322" elapsed="0.000156"/>
</kw>
<doc>Test suite for Stats Manager flows collection</doc>
<status status="PASS" start="2026-05-25T01:53:21.711738" elapsed="99.834774"/>
</suite>
<kw name="Stop Mininet" owner="Utils" type="TEARDOWN">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.549544" level="INFO">Stop the test on the base edition</msg>
<arg>Stop the test on the base edition</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.549244" elapsed="0.000365"/>
</kw>
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${mininet_conn_id}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:01.549795" elapsed="0.000205"/>
</kw>
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:01.550209" elapsed="0.000220"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:55:01.552468" level="INFO">exit</msg>
<arg>exit</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:55:01.550611" elapsed="0.001968"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:55:01.678535" level="INFO">*** Stopping 1 controllers
c0 
*** Stopping 2 links
..
*** Stopping 1 switches
s1 
*** Stopping 2 hosts
h1 h2 
*** Done
completed in 136.624 seconds
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${prompt}</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:55:01.552776" elapsed="0.126080"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:01.679127" elapsed="0.000213"/>
</kw>
<doc>Cleanup/Shutdown work that should be done at the completion of all
tests</doc>
<status status="PASS" start="2026-05-25T01:55:01.548858" elapsed="0.130550"/>
</kw>
<doc>Test suite for the OpenDaylight OpenFlow statistics manager</doc>
<status status="PASS" start="2026-05-25T01:52:42.560012" elapsed="139.119433"/>
</suite>
<suite id="s1-s4" name="Switch Qualification" source="/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Switch_Qualification">
<suite id="s1-s4-s1" name="010 OpenFlow Connection" source="/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Switch_Qualification/010_OpenFlow_Connection.robot">
<kw name="Switch Qualification Suite Setup" type="SETUP">
<kw name="Get Switch" owner="Ovs">
<msg time="2026-05-25T01:55:01.739959" level="INFO">${test_switch} = &lt;Ovs.Ovs object at 0x7f5acc197a50&gt;</msg>
<var>${test_switch}</var>
<arg>${SWITCH_CLASS}</arg>
<doc>Generic method that will allow Robot Code to pass a string
to this "keyword - Get Switch" and create an object of that
type.  (EX: Get Switch  OVS)</doc>
<status status="PASS" start="2026-05-25T01:55:01.739760" elapsed="0.000232"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.740534" level="INFO">${test_switch} = &lt;Ovs.Ovs object at 0x7f5acc197a50&gt;</msg>
<arg>${test_switch}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:01.740191" elapsed="0.000387"/>
</kw>
<kw name="Call Method" owner="BuiltIn">
<arg>${test_switch}</arg>
<arg>set_mgmt_ip</arg>
<arg>${SWITCH_IP}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-05-25T01:55:01.740756" elapsed="0.000333"/>
</kw>
<kw name="Call Method" owner="BuiltIn">
<arg>${test_switch}</arg>
<arg>set_controller_ip</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-05-25T01:55:01.741246" elapsed="0.000301"/>
</kw>
<kw name="Call Method" owner="BuiltIn">
<arg>${test_switch}</arg>
<arg>set_mgmt_prompt</arg>
<arg>${SWITCH_PROMPT}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-05-25T01:55:01.741699" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:01.751704" level="INFO">MAKE: OpenVswitch
MODEL: OVS
IP: 10.30.171.68
PROMPT: &gt;
CONTROLLER_IP: 10.30.170.200
MGMT_PROTOCOL: ssh</msg>
<arg>MAKE: ${test_switch.make}\nMODEL: ${test_switch.model}\nIP: ${test_switch.mgmt_ip}\nPROMPT: ${test_switch.mgmt_prompt}\nCONTROLLER_IP: ${test_switch.of_controller_ip}\nMGMT_PROTOCOL: ${test_switch.mgmt_protocol}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:01.742168" elapsed="0.009585"/>
</kw>
<kw name="Ping" owner="SwitchUtils">
<kw name="Run" owner="OperatingSystem">
<msg time="2026-05-25T01:55:01.754555" level="INFO">Running command 'ping 10.30.171.68 -c 1 -W 1 2&gt;&amp;1'.</msg>
<msg time="2026-05-25T01:55:01.760544" level="INFO">${output} = PING 10.30.171.68 (10.30.171.68) 56(84) bytes of data.
64 bytes from 10.30.171.68: icmp_seq=1 ttl=64 time=0.910 ms

--- 10.30.171.68 ping statistics ---
1 packets transmitted, 1 received, 0% packet lo...</msg>
<var>${output}</var>
<arg>ping ${ip} -c 1 -W 1</arg>
<doc>_This keyword is considered deprecated. Use the
[http://robotframework.org/robotframework/latest/libraries/Process.html|
Process] library instead._</doc>
<status status="PASS" start="2026-05-25T01:55:01.753759" elapsed="0.006816"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${output}</arg>
<arg>1 packets transmitted, 1 received</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:01.760749" elapsed="0.000347"/>
</kw>
<arg>${test_switch.mgmt_ip}</arg>
<status status="PASS" start="2026-05-25T01:55:01.751909" elapsed="0.009253"/>
</kw>
<kw name="Initialize Switch" owner="SwitchUtils">
<kw name="Connect To Switch" owner="SwitchUtils">
<kw name="Open Connection Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Call Method" owner="BuiltIn">
<arg>${switch}</arg>
<arg>set_ssh_key</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-05-25T01:55:01.764202" elapsed="0.000343"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:01.762472" elapsed="0.002186"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.762449" elapsed="0.002237"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Call Method" owner="BuiltIn">
<arg>${switch}</arg>
<arg>set_mgmt_user</arg>
<arg>${TOOLS_SYSTEM_USER}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-05-25T01:55:01.766461" elapsed="0.000311"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:01.764745" elapsed="0.002071"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.764727" elapsed="0.002114"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:55:01.772292" level="INFO">${connection_index} = 16</msg>
<var>${connection_index}</var>
<arg>${switch.mgmt_ip}</arg>
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=30s</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:55:01.768754" elapsed="0.003566"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:01.766898" elapsed="0.005465"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${connection_index}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:01.772535" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:01.772389" elapsed="0.000203"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.766881" elapsed="0.005750"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:55:01.777803" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:55:02.367976" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:55:01 UTC 2026

  System load:  0.03               Processes:             107
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:52:44 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${switch.mgmt_user}</arg>
<arg>${switch.ssh_key}</arg>
<arg>any</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:55:01.774400" elapsed="0.593725"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:01.772689" elapsed="0.595501"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:01.772672" elapsed="0.595556"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Open Connection" owner="Telnet">
<var>${connection_index}</var>
<arg>${switch.mgmt_ip}</arg>
<doc>Opens a new Telnet connection to the given host and port.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:02.370274" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:02.368323" elapsed="0.002016"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:02.370909" level="INFO">${connection_index} = 16</msg>
<var>${connection_index}</var>
<arg>${connection_index}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:02.370530" elapsed="0.000407"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:02.370364" elapsed="0.000609"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:02.368293" elapsed="0.002702"/>
</if>
<return>
<value>${connection_index}</value>
<status status="PASS" start="2026-05-25T01:55:02.371035" elapsed="0.000058"/>
</return>
<msg time="2026-05-25T01:55:02.371237" level="INFO">${connection_index} = 16</msg>
<var>${connection_index}</var>
<arg>${switch}</arg>
<doc>Some switches require telnet access and others require ssh access.  Based on the
switch.mgmt_protocol, the connection open will be handled by the right robot
library (Telnet or SSHLibrary).  The connection_index is returned.</doc>
<status status="PASS" start="2026-05-25T01:55:01.762280" elapsed="0.608984"/>
</kw>
<kw name="Call Method" owner="BuiltIn">
<arg>${switch}</arg>
<arg>set_connection_index</arg>
<arg>${connection_index}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-05-25T01:55:02.371417" elapsed="0.000313"/>
</kw>
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:02.373935" elapsed="0.001569"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:02.372252" elapsed="0.003290"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:02.372234" elapsed="0.003339"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:02.377346" elapsed="0.001825"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:02.375628" elapsed="0.003584"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:02.375611" elapsed="0.003625"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:02.380972" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:02.379291" elapsed="0.001736"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:02.379274" elapsed="0.001776"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:02.382799" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:02.381144" elapsed="0.001713"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:02.381126" elapsed="0.001754"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:02.372037" elapsed="0.010888"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Write Bare Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Write Bare" owner="SSHLibrary">
<arg>${cmd}</arg>
<doc>Writes the given ``text`` on the remote machine without appending a newline.</doc>
<status status="PASS" start="2026-05-25T01:55:02.388329" elapsed="0.000294"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:02.385001" elapsed="0.003663"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:02.384983" elapsed="0.003707"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Write Bare" owner="Telnet">
<arg>${cmd}</arg>
<doc>Writes the given text, and nothing else, into the connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:02.390500" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:02.388747" elapsed="0.001809"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:02.388730" elapsed="0.001850"/>
</if>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Write Bare command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:02.384750" elapsed="0.005878"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-05-25T01:55:03.391296" level="INFO">Slept 1 second.</msg>
<arg>1</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-05-25T01:55:02.390771" elapsed="1.000757"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<msg time="2026-05-25T01:55:03.397182" level="INFO">pwd</msg>
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:03.396849" elapsed="0.000497"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:03.392817" elapsed="0.004608"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:03.392767" elapsed="0.004722"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:03.400125" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:03.397625" elapsed="0.002576"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:03.397585" elapsed="0.002649"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:03.392261" elapsed="0.008042"/>
</kw>
<var name="${cmd}">pwd</var>
<status status="PASS" start="2026-05-25T01:55:02.384550" elapsed="1.015801"/>
</iter>
<var>${cmd}</var>
<value>@{switch.connection_configs}</value>
<status status="PASS" start="2026-05-25T01:55:02.382986" elapsed="1.017416"/>
</for>
<arg>${switch}</arg>
<doc>Will Open a connection to the switch, which will set the switch.connection_index.
For each switch.connection_configs string, a write bare will be executed on the
switch connection.  The write bare is done becuase some switch consoles require
extra input (CR/LF, etc.) that are needed.  The connection_configs strings should
be sufficient to put the switch console in to a usuable state so that further
interactions with the switch can be used with the robot keyword "Execute
Command"</doc>
<status status="PASS" start="2026-05-25T01:55:01.761773" elapsed="1.638713"/>
</kw>
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:03.403518" elapsed="0.002207"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:03.401165" elapsed="0.004613"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:03.401139" elapsed="0.004672"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:03.408239" elapsed="0.002364"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:03.405888" elapsed="0.004756"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:03.405865" elapsed="0.004803"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:03.412415" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:03.410723" elapsed="0.001748"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:03.410707" elapsed="0.001788"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:03.414242" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:03.412549" elapsed="0.001751"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:03.412533" elapsed="0.001791"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:03.400883" elapsed="0.013487"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Write Bare Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Write Bare" owner="SSHLibrary">
<arg>${cmd}</arg>
<doc>Writes the given ``text`` on the remote machine without appending a newline.</doc>
<status status="PASS" start="2026-05-25T01:55:03.418107" elapsed="0.000295"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:03.416402" elapsed="0.002039"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:03.416383" elapsed="0.002083"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Write Bare" owner="Telnet">
<arg>${cmd}</arg>
<doc>Writes the given text, and nothing else, into the connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:03.420263" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:03.418521" elapsed="0.001797"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:03.418504" elapsed="0.001838"/>
</if>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Write Bare command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:03.416175" elapsed="0.004213"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-05-25T01:55:04.421060" level="INFO">Slept 1 second.</msg>
<arg>1</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-05-25T01:55:03.420546" elapsed="1.000826"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<msg time="2026-05-25T01:55:04.427736" level="INFO">['/sbin/ifconfig -a | egrep \'^s\' | awk \'{print "sudo ovs-vsctl del-br",$1}\' | sh']</msg>
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:04.427554" elapsed="0.000251"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:04.423871" elapsed="0.003981"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.423820" elapsed="0.004069"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:04.430726" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:04.428226" elapsed="0.002582"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.428198" elapsed="0.002644"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:04.423322" elapsed="0.007593"/>
</kw>
<arg>Read Wrapper</arg>
<arg>${switch}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:04.421961" elapsed="0.009026"/>
</kw>
<var name="${cmd}">['/sbin/ifconfig -a | egrep \'^s\' | awk \'{print "sudo ovs-vsctl del-br",$1}\' | sh']</var>
<status status="PASS" start="2026-05-25T01:55:03.415955" elapsed="1.015078"/>
</iter>
<var>${cmd}</var>
<value>@{switch.initialization_cmds}</value>
<status status="PASS" start="2026-05-25T01:55:03.414431" elapsed="1.016670"/>
</for>
<if>
<branch type="IF" condition="&quot;${switch.initialization_type}&quot; == &quot;reboot&quot;">
<kw name="Wait For Switch Reboot" owner="SwitchUtils">
<arg>${switch}</arg>
<doc>If a switch has been set to reboot, it may take some time.  This keyword will first
make sure the switch has gone down (10 pings over 10 seconds should not see
a 100% success, although it may respond for a short time after the reload is
issued).  Then a poll is done with a single ping request every 5s until a success
is found, at which point it is assumed the switch is up and ready.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:04.433527" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:04.431201" elapsed="0.002414"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.431175" elapsed="0.002473"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.initialization_type}&quot; == &quot;reboot&quot;">
<kw name="Connect To Switch" owner="SwitchUtils">
<arg>${switch}</arg>
<doc>Will Open a connection to the switch, which will set the switch.connection_index.
For each switch.connection_configs string, a write bare will be executed on the
switch connection.  The write bare is done becuase some switch consoles require
extra input (CR/LF, etc.) that are needed.  The connection_configs strings should
be sufficient to put the switch console in to a usuable state so that further
interactions with the switch can be used with the robot keyword "Execute
Command"</doc>
<status status="NOT RUN" start="2026-05-25T01:55:04.436144" elapsed="0.000038"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:04.433741" elapsed="0.002495"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.433719" elapsed="0.002551"/>
</if>
<arg>${test_switch}</arg>
<doc>Will connect and execute all switch.initialization_cmds on the given switch.
In some cases, this may be a reboot.  If so, the switch.initialization_type can
be set to "reboot" and further logic is invoked to wait for the reboot to complete
and a reconnect to the switch is made.</doc>
<status status="PASS" start="2026-05-25T01:55:01.761443" elapsed="2.674899"/>
</kw>
<kw name="Create Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:04.437116" level="INFO">Creating Session using : alias=session, url=http://10.30.170.200:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7f5abfb27dd0&gt;, timeout=None, proxies=None, verify=False,                     debug=0 </msg>
<arg>session</arg>
<arg>http://${ODL_SYSTEM_IP}:${RESTCONFPORT}</arg>
<arg>auth=${AUTH}</arg>
<arg>headers=${HEADERS_XML}</arg>
<doc>Create Session: create a HTTP session to a server</doc>
<status status="PASS" start="2026-05-25T01:55:04.436581" elapsed="0.000787"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:01.739385" elapsed="2.698081"/>
</kw>
<test id="s1-s4-s1-t1" name="OF1.3 Connection Between Switch and Controller" line="28">
<kw name="Configure OpenFlow" owner="SwitchUtils">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:04.439845" level="INFO">Applying configs to configure openflow on the given switch.</msg>
<arg>Applying configs to configure openflow on the given switch.</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:04.438941" elapsed="0.000994"/>
</kw>
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:04.443363" elapsed="0.001652"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:04.440700" elapsed="0.004355"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.440674" elapsed="0.004421"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:04.446857" elapsed="0.001888"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:04.445153" elapsed="0.003638"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.445136" elapsed="0.003681"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:04.450600" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:04.448873" elapsed="0.001784"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.448857" elapsed="0.001824"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:04.452438" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:04.450735" elapsed="0.001760"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.450720" elapsed="0.001798"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:04.440364" elapsed="0.012203"/>
</kw>
<kw name="Iterate Switch Commands From List" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:04.459523" elapsed="0.001655"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:04.457784" elapsed="0.003434"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.457758" elapsed="0.003486"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:04.463003" elapsed="0.001888"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:04.461301" elapsed="0.003630"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.461284" elapsed="0.003725"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:04.466837" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:04.465087" elapsed="0.001808"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.465054" elapsed="0.001865"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:04.468690" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:04.466976" elapsed="0.001774"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.466959" elapsed="0.001815"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:04.457457" elapsed="0.011367"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:04.469505" level="INFO">sudo ovs-vsctl add-br s1</msg>
<arg>${cmd}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:04.469189" elapsed="0.000385"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:04.471785" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:04.470079" elapsed="0.001928"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.470045" elapsed="0.001987"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:04.473828" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:04.472103" elapsed="0.001779"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.472085" elapsed="0.001820"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:04.469821" elapsed="0.004133"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:04.476412" level="INFO">Executing command 'sudo ovs-vsctl add-br s1'.</msg>
<msg time="2026-05-25T01:55:04.520484" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:04.520883" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:04.476229" elapsed="0.044719"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:04.474513" elapsed="0.046540"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:04.521619" elapsed="0.000055"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:04.521175" elapsed="0.000627"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.474495" elapsed="0.047362"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:04.526552" elapsed="0.000054"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:04.522008" elapsed="0.004688"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:04.527537" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:04.526933" elapsed="0.000641"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:04.526742" elapsed="0.000905"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.521964" elapsed="0.005730"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:04.527753" elapsed="0.000056"/>
</return>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:04.474234" elapsed="0.053730"/>
</kw>
<var name="${cmd}">sudo ovs-vsctl add-br s1</var>
<status status="PASS" start="2026-05-25T01:55:04.469038" elapsed="0.058980"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:04.528830" level="INFO">sudo ovs-vsctl set bridge s1 protocols=OpenFlow13</msg>
<arg>${cmd}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:04.528379" elapsed="0.000530"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:04.532312" elapsed="0.000275"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:04.529600" elapsed="0.003037"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.529574" elapsed="0.003099"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:04.535155" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:04.532751" elapsed="0.002478"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.532728" elapsed="0.002534"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:04.529253" elapsed="0.006076"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:04.538754" level="INFO">Executing command 'sudo ovs-vsctl set bridge s1 protocols=OpenFlow13'.</msg>
<msg time="2026-05-25T01:55:04.583871" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:04.584246" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:04.538516" elapsed="0.045793"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:04.536064" elapsed="0.048343"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:04.584857" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:04.584473" elapsed="0.000671"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.536038" elapsed="0.049178"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:04.589922" elapsed="0.000058"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:04.585426" elapsed="0.004675"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:04.591155" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:04.590507" elapsed="0.000686"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:04.590164" elapsed="0.001113"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.585380" elapsed="0.005931"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:04.591364" elapsed="0.000049"/>
</return>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:04.535680" elapsed="0.055879"/>
</kw>
<var name="${cmd}">sudo ovs-vsctl set bridge s1 protocols=OpenFlow13</var>
<status status="PASS" start="2026-05-25T01:55:04.528193" elapsed="0.063419"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:04.592370" level="INFO">sudo ovs-vsctl set-controller s1 tcp:10.30.170.200</msg>
<arg>${cmd}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:04.591935" elapsed="0.000515"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:04.595586" elapsed="0.000258"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:04.593128" elapsed="0.002765"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.593100" elapsed="0.002828"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:04.598482" elapsed="0.000061"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:04.596005" elapsed="0.002583"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.595982" elapsed="0.002638"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:04.592763" elapsed="0.005926"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:04.602245" level="INFO">Executing command 'sudo ovs-vsctl set-controller s1 tcp:10.30.170.200'.</msg>
<msg time="2026-05-25T01:55:04.653707" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:04.654158" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:04.601966" elapsed="0.052255"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:04.599459" elapsed="0.054871"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:04.654820" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:04.654400" elapsed="0.000552"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.599434" elapsed="0.055566"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:04.659135" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:04.655178" elapsed="0.004042"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:04.660025" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:04.659446" elapsed="0.000616"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:04.659253" elapsed="0.000881"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.655134" elapsed="0.005032"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:04.660218" elapsed="0.000051"/>
</return>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:04.599053" elapsed="0.061368"/>
</kw>
<var name="${cmd}">sudo ovs-vsctl set-controller s1 tcp:10.30.170.200</var>
<status status="PASS" start="2026-05-25T01:55:04.591756" elapsed="0.068720"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:04.661236" level="INFO">sudo ifconfig s1 up</msg>
<arg>${cmd}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:04.660810" elapsed="0.000505"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:04.664657" elapsed="0.000242"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:04.662001" elapsed="0.002945"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.661976" elapsed="0.003005"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:04.667326" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:04.665057" elapsed="0.002321"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.665033" elapsed="0.002368"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:04.661634" elapsed="0.005815"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:04.669873" level="INFO">Executing command 'sudo ifconfig s1 up'.</msg>
<msg time="2026-05-25T01:55:04.711399" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:04.711737" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:04.669686" elapsed="0.042112"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:04.667980" elapsed="0.043916"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:04.712477" elapsed="0.000189"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:04.711965" elapsed="0.000794"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.667962" elapsed="0.044847"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:04.717565" elapsed="0.000056"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:04.712958" elapsed="0.004755"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:04.719180" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:04.718202" elapsed="0.001044"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:04.717774" elapsed="0.001563"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.712914" elapsed="0.006479"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:04.719480" elapsed="0.000077"/>
</return>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:04.667706" elapsed="0.052100"/>
</kw>
<var name="${cmd}">sudo ifconfig s1 up</var>
<status status="PASS" start="2026-05-25T01:55:04.660629" elapsed="0.059271"/>
</iter>
<var>${cmd}</var>
<value>@{cmd_list}</value>
<status status="PASS" start="2026-05-25T01:55:04.468879" elapsed="0.251096"/>
</for>
<arg>${switch}</arg>
<arg>${switch.base_openflow_config}</arg>
<doc>Each string in the @{cmd_list} argument is executed on the switch.connection_index.</doc>
<status status="PASS" start="2026-05-25T01:55:04.455535" elapsed="0.264618"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:04.725688" elapsed="0.000580"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:04.721384" elapsed="0.004973"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.721337" elapsed="0.005081"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:04.729095" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:04.726550" elapsed="0.002624"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.726510" elapsed="0.002697"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:04.720750" elapsed="0.008551"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Validate Switch Output" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:04.744380" elapsed="0.001732"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:04.742622" elapsed="0.003545"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.742602" elapsed="0.003597"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:04.747994" elapsed="0.001984"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:04.746259" elapsed="0.003760"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.746241" elapsed="0.003803"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:04.751851" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:04.750118" elapsed="0.001810"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.750099" elapsed="0.001854"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:04.753761" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:04.752011" elapsed="0.001843"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.751994" elapsed="0.001885"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:04.742384" elapsed="0.011548"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:04.756299" elapsed="0.000175"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:04.754408" elapsed="0.002100"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.754389" elapsed="0.002144"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:04.758303" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:04.756588" elapsed="0.001774"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.756572" elapsed="0.001815"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:04.754162" elapsed="0.004272"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:04.760849" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-05-25T01:55:04.773788" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:04.774136" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:04.760674" elapsed="0.013530"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:04.758943" elapsed="0.015347"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:04.774834" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:04.774351" elapsed="0.000618"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.758925" elapsed="0.016092"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:04.779261" elapsed="0.000054"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:04.775193" elapsed="0.004206"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:04.780642" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:04.779796" elapsed="0.000916"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:04.779453" elapsed="0.001355"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.775149" elapsed="0.005711"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:04.780942" elapsed="0.000068"/>
</return>
<msg time="2026-05-25T01:55:04.781329" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${tmp}</var>
<arg>${switch}</arg>
<arg>/sbin/ifconfig</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:04.758692" elapsed="0.022700"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:04.782508" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:2f:dc:c0  txqueuelen 1000  (Ethernet)
        RX packets 7026  bytes 20262492 (20.2 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4409  bytes 1233079 (1.2 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 274  bytes 24208 (24.2 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 274  bytes 24208 (24.2 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

s1: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500
        inet6 fe80::bcc0:62ff:fe38:a247  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether be:c0:62:38:a2:47  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1  bytes 90 (90.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:04.781735" elapsed="0.000926"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:04.786424" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-05-25T01:55:04.835265" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:04.835666" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:04.786179" elapsed="0.049556"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:04.783539" elapsed="0.052304"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:04.836399" elapsed="0.000058"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:04.835918" elapsed="0.000635"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.783509" elapsed="0.053105"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:04.841266" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:04.836771" elapsed="0.004631"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:04.842757" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:04.841786" elapsed="0.001060"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:04.841454" elapsed="0.001489"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:04.836724" elapsed="0.006273"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:04.843111" elapsed="0.000077"/>
</return>
<msg time="2026-05-25T01:55:04.843501" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:04.783143" elapsed="0.060426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:04.844602" level="INFO">9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:04.843908" elapsed="0.000824"/>
</kw>
<for flavor="IN">
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<msg time="2026-05-25T01:55:04.847031" level="FAIL">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</msg>
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="FAIL" start="2026-05-25T01:55:04.846035" elapsed="0.001103">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-05-25T01:55:04.845459" elapsed="0.001831">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-05-25T01:55:04.845426" elapsed="0.001900">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:04.847571" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:04.847398" elapsed="0.000234"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:04.847381" elapsed="0.000274"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-05-25T01:55:04.845358" elapsed="0.002343">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="FAIL" start="2026-05-25T01:55:04.844859" elapsed="0.002905">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</for>
<arg>${switch}</arg>
<arg>${switch.openflow_validation_cmd}</arg>
<arg>${switch.openflow_enable_validations}</arg>
<doc>A generic keyword that will execute one command on the switch, and check for each string in the @{validations} argument.  There is a boolean flag ${should_exist} that can be used to check that the validations are or are NOT in the output of the command executed.</doc>
<status status="FAIL" start="2026-05-25T01:55:04.739063" elapsed="0.108823">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<kw name="Validate Switch Output" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:05.865766" elapsed="0.001743"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:05.864044" elapsed="0.003527"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:05.864019" elapsed="0.003586"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:05.869384" elapsed="0.001920"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:05.867663" elapsed="0.003682"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:05.867646" elapsed="0.003725"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:05.873158" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:05.871426" elapsed="0.001791"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:05.871409" elapsed="0.001832"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:05.874999" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:05.873296" elapsed="0.001761"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:05.873279" elapsed="0.001817"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:05.863796" elapsed="0.011351"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:05.877306" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:05.875596" elapsed="0.001934"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:05.875578" elapsed="0.001977"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:05.879305" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:05.877609" elapsed="0.001748"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:05.877592" elapsed="0.001788"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:05.875362" elapsed="0.004064"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:05.881826" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-05-25T01:55:05.895096" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:05.895369" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:05.881648" elapsed="0.013783"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:05.879942" elapsed="0.015573"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:05.895920" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:05.895572" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:05.879924" elapsed="0.016197"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:05.899772" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:05.896248" elapsed="0.003608"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:05.900654" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:05.900107" elapsed="0.000588"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:05.899890" elapsed="0.000857"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:05.896210" elapsed="0.004568"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:05.900831" elapsed="0.000053"/>
</return>
<msg time="2026-05-25T01:55:05.901060" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${tmp}</var>
<arg>${switch}</arg>
<arg>/sbin/ifconfig</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:05.879691" elapsed="0.021449"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:05.901925" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:2f:dc:c0  txqueuelen 1000  (Ethernet)
        RX packets 7058  bytes 20265628 (20.2 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4440  bytes 1245409 (1.2 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 274  bytes 24208 (24.2 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 274  bytes 24208 (24.2 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

s1: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500
        inet6 fe80::bcc0:62ff:fe38:a247  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether be:c0:62:38:a2:47  txqueuelen 1000  (Ethernet)
        RX packets 1  bytes 110 (110.0 B)
        RX errors 0  dropped 1  overruns 0  frame 0
        TX packets 3  bytes 266 (266.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:05.901354" elapsed="0.000667"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:05.905427" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-05-25T01:55:05.996258" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:05.996683" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:05.905195" elapsed="0.091554"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:05.902805" elapsed="0.094056"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:05.997419" elapsed="0.000057"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:05.996936" elapsed="0.000623"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:05.902779" elapsed="0.094830"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:06.002600" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:05.997754" elapsed="0.004988"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:06.004123" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:06.003163" elapsed="0.001030"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:06.002803" elapsed="0.001479"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:05.997711" elapsed="0.006624"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:06.004422" elapsed="0.000075"/>
</return>
<msg time="2026-05-25T01:55:06.004800" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:05.902423" elapsed="0.102440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:06.005947" level="INFO">9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:06.005254" elapsed="0.000863"/>
</kw>
<for flavor="IN">
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<msg time="2026-05-25T01:55:06.007577" level="FAIL">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</msg>
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="FAIL" start="2026-05-25T01:55:06.007140" elapsed="0.000520">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-05-25T01:55:06.006884" elapsed="0.000853">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-05-25T01:55:06.006865" elapsed="0.000973">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:06.008058" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:06.007911" elapsed="0.000220"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:06.007894" elapsed="0.000260"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-05-25T01:55:06.006798" elapsed="0.001401">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="FAIL" start="2026-05-25T01:55:06.006248" elapsed="0.002012">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</for>
<arg>${switch}</arg>
<arg>${switch.openflow_validation_cmd}</arg>
<arg>${switch.openflow_enable_validations}</arg>
<doc>A generic keyword that will execute one command on the switch, and check for each string in the @{validations} argument.  There is a boolean flag ${should_exist} that can be used to check that the validations are or are NOT in the output of the command executed.</doc>
<status status="FAIL" start="2026-05-25T01:55:05.860414" elapsed="0.147951">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<kw name="Validate Switch Output" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:07.026352" elapsed="0.001823"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:07.024610" elapsed="0.003622"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.024584" elapsed="0.003678"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:07.029997" elapsed="0.001943"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:07.028319" elapsed="0.003662"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.028301" elapsed="0.003705"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:07.033774" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:07.032061" elapsed="0.001775"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.032044" elapsed="0.001815"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:07.035656" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:07.033913" elapsed="0.001802"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.033897" elapsed="0.001841"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:07.024360" elapsed="0.011429"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:07.037973" elapsed="0.000205"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:07.036256" elapsed="0.001968"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.036238" elapsed="0.002016"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:07.040031" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:07.038312" elapsed="0.001787"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.038295" elapsed="0.001829"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:07.036004" elapsed="0.004167"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:07.042814" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-05-25T01:55:07.060515" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:07.060810" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:07.042611" elapsed="0.018267"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:07.040693" elapsed="0.020290"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:07.061483" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:07.061059" elapsed="0.000561"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.040675" elapsed="0.020996"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:07.066099" elapsed="0.000055"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:07.061805" elapsed="0.004438"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:07.067598" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:07.066632" elapsed="0.001141"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:07.066300" elapsed="0.001566"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.061765" elapsed="0.006155"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:07.068011" elapsed="0.000114"/>
</return>
<msg time="2026-05-25T01:55:07.068437" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${tmp}</var>
<arg>${switch}</arg>
<arg>/sbin/ifconfig</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:07.040441" elapsed="0.028063"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:07.069595" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:2f:dc:c0  txqueuelen 1000  (Ethernet)
        RX packets 7074  bytes 20267364 (20.2 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4457  bytes 1249243 (1.2 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 274  bytes 24208 (24.2 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 274  bytes 24208 (24.2 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

s1: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500
        inet6 fe80::bcc0:62ff:fe38:a247  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether be:c0:62:38:a2:47  txqueuelen 1000  (Ethernet)
        RX packets 2  bytes 220 (220.0 B)
        RX errors 0  dropped 2  overruns 0  frame 0
        TX packets 6  bytes 516 (516.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:07.068868" elapsed="0.000893"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:07.073444" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-05-25T01:55:07.170305" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:07.170645" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
            is_connected: true
        Port s1
            Interface s1
              ...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:07.073277" elapsed="0.097429"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:07.071124" elapsed="0.099713"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:07.171332" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:07.170904" elapsed="0.000559"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.071050" elapsed="0.100460"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:07.175641" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:07.171644" elapsed="0.004126"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:07.177009" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
            is_connected: true
        Port s1
            Interface s1
              ...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:07.176163" elapsed="0.000938"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:07.175823" elapsed="0.001362"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.171605" elapsed="0.005630"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:07.177318" elapsed="0.000072"/>
</return>
<msg time="2026-05-25T01:55:07.177677" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
            is_connected: true
        Port s1
            Interface s1
              ...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:07.070404" elapsed="0.107332"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:07.178805" level="INFO">9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
            is_connected: true
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:07.178106" elapsed="0.000840"/>
</kw>
<for flavor="IN">
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:07.180045" elapsed="0.000403"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:07.179673" elapsed="0.000815"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.179642" elapsed="0.000870"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:07.180779" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:07.180565" elapsed="0.000271"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.180549" elapsed="0.000310"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="PASS" start="2026-05-25T01:55:07.179573" elapsed="0.001309"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-05-25T01:55:07.179099" elapsed="0.001813"/>
</for>
<arg>${switch}</arg>
<arg>${switch.openflow_validation_cmd}</arg>
<arg>${switch.openflow_enable_validations}</arg>
<doc>A generic keyword that will execute one command on the switch, and check for each string in the @{validations} argument.  There is a boolean flag ${should_exist} that can be used to check that the validations are or are NOT in the output of the command executed.</doc>
<status status="PASS" start="2026-05-25T01:55:07.021036" elapsed="0.159934"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>Validate Switch Output</arg>
<arg>${switch}</arg>
<arg>${switch.openflow_validation_cmd}</arg>
<arg>${switch.openflow_enable_validations}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:04.729753" elapsed="2.451277"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:07.183346" elapsed="0.000175"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:07.181611" elapsed="0.001944"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.181594" elapsed="0.001986"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:07.185439" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:07.183634" elapsed="0.001858"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.183617" elapsed="0.001899"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:07.181355" elapsed="0.004208"/>
</kw>
<arg>${test_switch}</arg>
<doc>The commands neccessary to configure openflow on the given switch object should exist in the switch.base_openflow_config attribute.  Also, the commands/logic to verify that openflow is working are checked in this keyword and come
from switch.openflow_validation_cmd output where the validation strings are
stored in switch.openflow_enable_validations</doc>
<status status="PASS" start="2026-05-25T01:55:04.438476" elapsed="2.747142"/>
</kw>
<kw name="Enable OpenFlow" owner="SwitchUtils">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:07.186383" level="INFO">Will toggle openflow to be ON</msg>
<arg>Will toggle openflow to be ON</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:07.186124" elapsed="0.000315"/>
</kw>
<kw name="Iterate Switch Commands From List" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:07.192735" elapsed="0.001687"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:07.190800" elapsed="0.003660"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.190780" elapsed="0.003706"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:07.196279" elapsed="0.001915"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:07.194542" elapsed="0.003692"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.194525" elapsed="0.003733"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:07.200008" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:07.198314" elapsed="0.001749"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.198297" elapsed="0.001804"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:07.201836" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:07.200157" elapsed="0.001736"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.200141" elapsed="0.001776"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:07.190556" elapsed="0.011408"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:07.202683" level="INFO">sudo ovs-vsctl set-controller s1 tcp:10.30.170.200</msg>
<arg>${cmd}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:07.202292" elapsed="0.000509"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:07.205018" elapsed="0.000230"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:07.203303" elapsed="0.001986"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.203285" elapsed="0.002035"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:07.207332" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:07.205385" elapsed="0.002000"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.205365" elapsed="0.002043"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:07.203046" elapsed="0.004411"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:07.209877" level="INFO">Executing command 'sudo ovs-vsctl set-controller s1 tcp:10.30.170.200'.</msg>
<msg time="2026-05-25T01:55:07.234052" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:07.234356" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:07.209707" elapsed="0.024704"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:07.207999" elapsed="0.026496"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:07.234923" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:07.234551" elapsed="0.000502"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.207981" elapsed="0.027152"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:07.239144" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:07.235262" elapsed="0.004016"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:07.240445" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:07.239635" elapsed="0.000868"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:07.239330" elapsed="0.001352"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.235223" elapsed="0.005511"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:07.240815" elapsed="0.000071"/>
</return>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:07.207722" elapsed="0.033428"/>
</kw>
<var name="${cmd}">sudo ovs-vsctl set-controller s1 tcp:10.30.170.200</var>
<status status="PASS" start="2026-05-25T01:55:07.202167" elapsed="0.039070"/>
</iter>
<var>${cmd}</var>
<value>@{cmd_list}</value>
<status status="PASS" start="2026-05-25T01:55:07.202012" elapsed="0.039293"/>
</for>
<arg>${switch}</arg>
<arg>${switch.openflow_enable_config}</arg>
<doc>Each string in the @{cmd_list} argument is executed on the switch.connection_index.</doc>
<status status="PASS" start="2026-05-25T01:55:07.188723" elapsed="0.052700"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:07.245134" elapsed="0.000167"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:07.242590" elapsed="0.002745"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.242545" elapsed="0.002815"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:07.247117" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:07.245414" elapsed="0.001756"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.245398" elapsed="0.001795"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:07.241956" elapsed="0.005284"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Validate Switch Output" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:07.258654" elapsed="0.001812"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:07.256802" elapsed="0.003704"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.256783" elapsed="0.003748"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:07.262309" elapsed="0.001933"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:07.260587" elapsed="0.003696"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.260570" elapsed="0.003738"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:07.266053" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:07.264364" elapsed="0.001759"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.264347" elapsed="0.001800"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:07.267889" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:07.266202" elapsed="0.001746"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.266185" elapsed="0.001786"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:07.256571" elapsed="0.011448"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:07.270169" elapsed="0.000163"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:07.268478" elapsed="0.001887"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.268460" elapsed="0.001929"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:07.272163" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:07.270444" elapsed="0.001773"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.270427" elapsed="0.001812"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:07.268243" elapsed="0.004043"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:07.274663" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-05-25T01:55:07.289563" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:07.289831" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:07.274495" elapsed="0.015397"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:07.272787" elapsed="0.017191"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:07.290404" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:07.290035" elapsed="0.000495"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.272769" elapsed="0.017808"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:07.294649" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:07.290700" elapsed="0.004081"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:07.296127" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:07.295215" elapsed="0.000980"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:07.294871" elapsed="0.001408"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.290663" elapsed="0.005665"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:07.296407" elapsed="0.000068"/>
</return>
<msg time="2026-05-25T01:55:07.296758" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${tmp}</var>
<arg>${switch}</arg>
<arg>/sbin/ifconfig</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:07.272539" elapsed="0.024282"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:07.297834" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:2f:dc:c0  txqueuelen 1000  (Ethernet)
        RX packets 7092  bytes 20269360 (20.2 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4478  bytes 1253341 (1.2 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 274  bytes 24208 (24.2 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 274  bytes 24208 (24.2 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

s1: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500
        inet6 fe80::bcc0:62ff:fe38:a247  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether be:c0:62:38:a2:47  txqueuelen 1000  (Ethernet)
        RX packets 2  bytes 220 (220.0 B)
        RX errors 0  dropped 2  overruns 0  frame 0
        TX packets 6  bytes 516 (516.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:07.297184" elapsed="0.000851"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:07.302271" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-05-25T01:55:07.347293" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:07.347574" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:07.302019" elapsed="0.045613"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:07.299503" elapsed="0.048215"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:07.348152" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:07.347777" elapsed="0.000506"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.299461" elapsed="0.048867"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:07.352371" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:07.348452" elapsed="0.004049"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:07.353677" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:07.352858" elapsed="0.000881"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:07.352554" elapsed="0.001265"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:07.348415" elapsed="0.005453"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:07.353946" elapsed="0.000065"/>
</return>
<msg time="2026-05-25T01:55:07.354317" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:07.298843" elapsed="0.055535"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:07.355430" level="INFO">9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:07.354714" elapsed="0.000842"/>
</kw>
<for flavor="IN">
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<msg time="2026-05-25T01:55:07.357014" level="FAIL">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</msg>
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="FAIL" start="2026-05-25T01:55:07.356428" elapsed="0.000716">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-05-25T01:55:07.356125" elapsed="0.001123">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-05-25T01:55:07.356103" elapsed="0.001191">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:07.357646" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:07.357442" elapsed="0.000283"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:07.357416" elapsed="0.000341"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-05-25T01:55:07.356041" elapsed="0.001779">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="FAIL" start="2026-05-25T01:55:07.355676" elapsed="0.002228">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</for>
<arg>${switch}</arg>
<arg>${switch.openflow_validation_cmd}</arg>
<arg>${switch.openflow_enable_validations}</arg>
<doc>A generic keyword that will execute one command on the switch, and check for each string in the @{validations} argument.  There is a boolean flag ${should_exist} that can be used to check that the validations are or are NOT in the output of the command executed.</doc>
<status status="FAIL" start="2026-05-25T01:55:07.253392" elapsed="0.104658">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<kw name="Validate Switch Output" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:08.376341" elapsed="0.001673"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:08.373976" elapsed="0.004101"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:08.373944" elapsed="0.004164"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:08.379853" elapsed="0.001911"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:08.378166" elapsed="0.003639"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:08.378149" elapsed="0.003680"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:08.383614" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:08.381884" elapsed="0.001788"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:08.381868" elapsed="0.001827"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:08.385443" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:08.383749" elapsed="0.001752"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:08.383733" elapsed="0.001791"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:08.373632" elapsed="0.011942"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:08.387748" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:08.386015" elapsed="0.001950"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:08.385997" elapsed="0.001992"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:08.389730" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:08.388043" elapsed="0.001738"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:08.388027" elapsed="0.001777"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:08.385784" elapsed="0.004066"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:08.392296" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-05-25T01:55:08.405972" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:08.406286" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:08.392113" elapsed="0.014235"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:08.390374" elapsed="0.016057"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:08.406831" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:08.406487" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:08.390356" elapsed="0.016646"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:08.411028" elapsed="0.000077"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:08.407158" elapsed="0.004033"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:08.412422" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:08.411569" elapsed="0.000919"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:08.411259" elapsed="0.001310"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:08.407119" elapsed="0.005606"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:08.412816" elapsed="0.000076"/>
</return>
<msg time="2026-05-25T01:55:08.413215" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${tmp}</var>
<arg>${switch}</arg>
<arg>/sbin/ifconfig</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:08.390126" elapsed="0.023157"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:08.414307" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:2f:dc:c0  txqueuelen 1000  (Ethernet)
        RX packets 7115  bytes 20271610 (20.2 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4500  bytes 1263537 (1.2 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 274  bytes 24208 (24.2 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 274  bytes 24208 (24.2 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

s1: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500
        inet6 fe80::bcc0:62ff:fe38:a247  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether be:c0:62:38:a2:47  txqueuelen 1000  (Ethernet)
        RX packets 2  bytes 220 (220.0 B)
        RX errors 0  dropped 2  overruns 0  frame 0
        TX packets 6  bytes 516 (516.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:08.413624" elapsed="0.000838"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:08.419972" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-05-25T01:55:08.507725" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:08.508000" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:08.419638" elapsed="0.088422"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:08.415735" elapsed="0.092451"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:08.508572" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:08.508244" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:08.415693" elapsed="0.093050"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:08.515951" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:08.508866" elapsed="0.007160"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:08.516580" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:08.516210" elapsed="0.000399"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:08.516050" elapsed="0.000595"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:08.508829" elapsed="0.007838"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:08.516703" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:55:08.516857" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:08.415038" elapsed="0.101845"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:08.517339" level="INFO">9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:08.517033" elapsed="0.000363"/>
</kw>
<for flavor="IN">
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<msg time="2026-05-25T01:55:08.518371" level="FAIL">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</msg>
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="FAIL" start="2026-05-25T01:55:08.517925" elapsed="0.000525">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-05-25T01:55:08.517709" elapsed="0.000815">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-05-25T01:55:08.517695" elapsed="0.000861">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:08.518773" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:08.518623" elapsed="0.000206"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:08.518606" elapsed="0.000245"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-05-25T01:55:08.517663" elapsed="0.001231">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="FAIL" start="2026-05-25T01:55:08.517455" elapsed="0.001545">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</for>
<arg>${switch}</arg>
<arg>${switch.openflow_validation_cmd}</arg>
<arg>${switch.openflow_enable_validations}</arg>
<doc>A generic keyword that will execute one command on the switch, and check for each string in the @{validations} argument.  There is a boolean flag ${should_exist} that can be used to check that the validations are or are NOT in the output of the command executed.</doc>
<status status="FAIL" start="2026-05-25T01:55:08.369065" elapsed="0.150056">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<kw name="Validate Switch Output" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:09.536149" elapsed="0.001694"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:09.534317" elapsed="0.003578"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:09.534291" elapsed="0.003632"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:09.539700" elapsed="0.001974"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:09.537979" elapsed="0.003737"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:09.537962" elapsed="0.003779"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:09.543565" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:09.541796" elapsed="0.001826"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:09.541779" elapsed="0.001866"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:09.545397" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:09.543712" elapsed="0.001743"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:09.543695" elapsed="0.001784"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:09.534044" elapsed="0.011485"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:09.547747" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:09.545979" elapsed="0.001992"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:09.545961" elapsed="0.002035"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:09.549791" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:09.548049" elapsed="0.001793"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:09.548033" elapsed="0.001832"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:09.545741" elapsed="0.004171"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:09.552555" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-05-25T01:55:09.565948" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:09.566265" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:09.552376" elapsed="0.013953"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:09.550442" elapsed="0.015971"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:09.566820" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:09.566472" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:09.550424" elapsed="0.016570"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:09.571159" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:09.567149" elapsed="0.004146"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:09.572544" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:09.571655" elapsed="0.000953"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:09.571348" elapsed="0.001340"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:09.567109" elapsed="0.005629"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:09.572818" elapsed="0.000055"/>
</return>
<msg time="2026-05-25T01:55:09.573045" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${tmp}</var>
<arg>${switch}</arg>
<arg>/sbin/ifconfig</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:09.550190" elapsed="0.022982"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:09.573792" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:2f:dc:c0  txqueuelen 1000  (Ethernet)
        RX packets 7128  bytes 20273175 (20.2 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4513  bytes 1266715 (1.2 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 274  bytes 24208 (24.2 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 274  bytes 24208 (24.2 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

s1: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500
        inet6 fe80::bcc0:62ff:fe38:a247  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether be:c0:62:38:a2:47  txqueuelen 1000  (Ethernet)
        RX packets 2  bytes 220 (220.0 B)
        RX errors 0  dropped 2  overruns 0  frame 0
        TX packets 6  bytes 516 (516.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:09.573388" elapsed="0.000500"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:09.577460" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-05-25T01:55:09.657745" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:09.658028" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:09.577154" elapsed="0.080974"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:09.574719" elapsed="0.083502"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:09.658619" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:09.658280" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:09.574686" elapsed="0.084105"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:09.663031" elapsed="0.000088"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:09.658915" elapsed="0.004291"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:09.664461" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:09.663570" elapsed="0.000954"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:09.663261" elapsed="0.001344"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:09.658878" elapsed="0.005777"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:09.664730" elapsed="0.000062"/>
</return>
<msg time="2026-05-25T01:55:09.665096" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:09.574272" elapsed="0.090888"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:09.666177" level="INFO">9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:09.665497" elapsed="0.000810"/>
</kw>
<for flavor="IN">
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<msg time="2026-05-25T01:55:09.668510" level="FAIL">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</msg>
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="FAIL" start="2026-05-25T01:55:09.667474" elapsed="0.001224">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-05-25T01:55:09.666964" elapsed="0.001901">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-05-25T01:55:09.666933" elapsed="0.001974">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:09.669135" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:09.668973" elapsed="0.000219"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:09.668956" elapsed="0.000259"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-05-25T01:55:09.666868" elapsed="0.002390">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="FAIL" start="2026-05-25T01:55:09.666424" elapsed="0.002897">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</for>
<arg>${switch}</arg>
<arg>${switch.openflow_validation_cmd}</arg>
<arg>${switch.openflow_enable_validations}</arg>
<doc>A generic keyword that will execute one command on the switch, and check for each string in the @{validations} argument.  There is a boolean flag ${should_exist} that can be used to check that the validations are or are NOT in the output of the command executed.</doc>
<status status="FAIL" start="2026-05-25T01:55:09.529766" elapsed="0.139696">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<kw name="Validate Switch Output" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:10.688603" elapsed="0.001785"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:10.685778" elapsed="0.004662"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:10.685743" elapsed="0.004727"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:10.692283" elapsed="0.001924"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:10.690528" elapsed="0.003720"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:10.690510" elapsed="0.003764"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:10.696172" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:10.694330" elapsed="0.001902"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:10.694312" elapsed="0.001944"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:10.698104" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:10.696311" elapsed="0.001856"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:10.696295" elapsed="0.001897"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:10.685436" elapsed="0.012809"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:10.700440" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:10.698696" elapsed="0.001962"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:10.698678" elapsed="0.002004"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:10.702492" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:10.700738" elapsed="0.001816"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:10.700721" elapsed="0.001856"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:10.698461" elapsed="0.004164"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:10.705114" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-05-25T01:55:10.718562" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:10.718839" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:10.704917" elapsed="0.013986"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:10.703164" elapsed="0.015824"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:10.719446" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:10.719046" elapsed="0.000527"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:10.703145" elapsed="0.016476"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:10.723650" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:10.719746" elapsed="0.004049"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:10.725044" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:10.724252" elapsed="0.000854"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:10.723854" elapsed="0.001305"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:10.719709" elapsed="0.005481"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:10.725244" elapsed="0.000052"/>
</return>
<msg time="2026-05-25T01:55:10.725471" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${tmp}</var>
<arg>${switch}</arg>
<arg>/sbin/ifconfig</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:10.702890" elapsed="0.022620"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:10.726148" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:2f:dc:c0  txqueuelen 1000  (Ethernet)
        RX packets 7140  bytes 20274479 (20.2 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4527  bytes 1270071 (1.2 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 274  bytes 24208 (24.2 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 274  bytes 24208 (24.2 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

s1: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500
        inet6 fe80::bcc0:62ff:fe38:a247  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether be:c0:62:38:a2:47  txqueuelen 1000  (Ethernet)
        RX packets 2  bytes 220 (220.0 B)
        RX errors 0  dropped 2  overruns 0  frame 0
        TX packets 7  bytes 586 (586.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:10.725725" elapsed="0.000599"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:10.729859" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-05-25T01:55:10.824828" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:10.825145" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:10.729625" elapsed="0.095583"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:10.727215" elapsed="0.098078"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:10.825684" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:10.825350" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:10.727189" elapsed="0.098667"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:10.829906" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:10.825979" elapsed="0.004057"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:10.831244" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:10.830431" elapsed="0.000875"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:10.830122" elapsed="0.001265"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:10.825943" elapsed="0.005493"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:10.831512" elapsed="0.000063"/>
</return>
<msg time="2026-05-25T01:55:10.831848" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:10.726760" elapsed="0.105147"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:10.833000" level="INFO">9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:10.832342" elapsed="0.000720"/>
</kw>
<for flavor="IN">
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<msg time="2026-05-25T01:55:10.834057" level="FAIL">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</msg>
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="FAIL" start="2026-05-25T01:55:10.833612" elapsed="0.000543">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-05-25T01:55:10.833396" elapsed="0.000836">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-05-25T01:55:10.833382" elapsed="0.000883">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:10.834478" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:10.834334" elapsed="0.000199"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:10.834316" elapsed="0.000239"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-05-25T01:55:10.833350" elapsed="0.001249">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="FAIL" start="2026-05-25T01:55:10.833139" elapsed="0.001522">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</for>
<arg>${switch}</arg>
<arg>${switch.openflow_validation_cmd}</arg>
<arg>${switch.openflow_enable_validations}</arg>
<doc>A generic keyword that will execute one command on the switch, and check for each string in the @{validations} argument.  There is a boolean flag ${should_exist} that can be used to check that the validations are or are NOT in the output of the command executed.</doc>
<status status="FAIL" start="2026-05-25T01:55:10.680794" elapsed="0.153974">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<kw name="Validate Switch Output" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:11.852233" elapsed="0.001698"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:11.850491" elapsed="0.003488"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:11.850467" elapsed="0.003539"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:11.855847" elapsed="0.002004"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:11.854063" elapsed="0.003830"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:11.854045" elapsed="0.003872"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:11.859739" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:11.857973" elapsed="0.001823"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:11.857956" elapsed="0.001864"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:11.861603" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:11.859880" elapsed="0.001781"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:11.859863" elapsed="0.001822"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:11.850243" elapsed="0.011492"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:11.863901" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:11.862200" elapsed="0.001936"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:11.862182" elapsed="0.001978"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:11.865912" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:11.864214" elapsed="0.001750"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:11.864198" elapsed="0.001789"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:11.861948" elapsed="0.004089"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:11.868450" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-05-25T01:55:11.883031" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:11.883340" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:11.868277" elapsed="0.015126"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:11.866569" elapsed="0.016917"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:11.883882" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:11.883542" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:11.866551" elapsed="0.017501"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:11.888178" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:11.884212" elapsed="0.004101"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:11.889660" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:11.888712" elapsed="0.001017"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:11.888366" elapsed="0.001446"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:11.884173" elapsed="0.005688"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:11.889940" elapsed="0.000072"/>
</return>
<msg time="2026-05-25T01:55:11.890337" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${tmp}</var>
<arg>${switch}</arg>
<arg>/sbin/ifconfig</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:11.866319" elapsed="0.024080"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:11.891411" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:2f:dc:c0  txqueuelen 1000  (Ethernet)
        RX packets 7168  bytes 20277227 (20.2 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4554  bytes 1280605 (1.2 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 274  bytes 24208 (24.2 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 274  bytes 24208 (24.2 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

s1: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500
        inet6 fe80::bcc0:62ff:fe38:a247  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether be:c0:62:38:a2:47  txqueuelen 1000  (Ethernet)
        RX packets 3  bytes 330 (330.0 B)
        RX errors 0  dropped 3  overruns 0  frame 0
        TX packets 7  bytes 586 (586.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:11.890735" elapsed="0.000828"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:11.894930" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-05-25T01:55:11.983848" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:11.984322" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
            is_connected: true
        Port s1
            Interface s1
              ...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:11.894762" elapsed="0.089628"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:11.892868" elapsed="0.091611"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:11.984942" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:11.984539" elapsed="0.000569"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:11.892820" elapsed="0.092339"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:11.989569" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:11.985289" elapsed="0.004415"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:11.990886" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
            is_connected: true
        Port s1
            Interface s1
              ...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:11.990066" elapsed="0.000884"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:11.989759" elapsed="0.001274"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:11.985252" elapsed="0.005862"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:11.991197" elapsed="0.000065"/>
</return>
<msg time="2026-05-25T01:55:11.991536" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
            is_connected: true
        Port s1
            Interface s1
              ...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:11.892168" elapsed="0.099428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:11.992655" level="INFO">9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
            is_connected: true
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:11.991933" elapsed="0.000867"/>
</kw>
<for flavor="IN">
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:11.993481" elapsed="0.000389"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:11.993264" elapsed="0.000646"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:11.993250" elapsed="0.000685"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:11.994220" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:11.993988" elapsed="0.000289"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:11.993972" elapsed="0.000329"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="PASS" start="2026-05-25T01:55:11.993218" elapsed="0.001106"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-05-25T01:55:11.992942" elapsed="0.001412"/>
</for>
<arg>${switch}</arg>
<arg>${switch.openflow_validation_cmd}</arg>
<arg>${switch.openflow_enable_validations}</arg>
<doc>A generic keyword that will execute one command on the switch, and check for each string in the @{validations} argument.  There is a boolean flag ${should_exist} that can be used to check that the validations are or are NOT in the output of the command executed.</doc>
<status status="PASS" start="2026-05-25T01:55:11.846895" elapsed="0.147517"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>Validate Switch Output</arg>
<arg>${switch}</arg>
<arg>${switch.openflow_validation_cmd}</arg>
<arg>${switch.openflow_enable_validations}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:07.247401" elapsed="4.747066"/>
</kw>
<arg>${test_switch}</arg>
<doc>executes the switch.openflow_enable_config on the given switch and validates that openflow is operational with the switch.openflow_validation_command against all the strings in the switch.openflow_enable_validations list.</doc>
<status status="PASS" start="2026-05-25T01:55:07.185790" elapsed="4.808745"/>
</kw>
<kw name="Get Switch Datapath ID" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:11.997209" elapsed="0.001633"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:11.995454" elapsed="0.003426"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:11.995436" elapsed="0.003472"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:12.000758" elapsed="0.001897"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:11.998966" elapsed="0.003729"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:11.998949" elapsed="0.003771"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:12.004558" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:12.002775" elapsed="0.001866"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:12.002758" elapsed="0.001913"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:12.006458" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:12.004728" elapsed="0.001801"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:12.004712" elapsed="0.001848"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:11.995212" elapsed="0.011400"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:12.008933" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:12.007127" elapsed="0.002030"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:12.007108" elapsed="0.002074"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:12.010967" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:12.009238" elapsed="0.001782"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:12.009221" elapsed="0.001823"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:12.006872" elapsed="0.004236"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:12.014962" level="INFO">Executing command '/sbin/ifconfig s1 | grep -o -E "([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}"'.</msg>
<msg time="2026-05-25T01:55:12.028975" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:12.029287" level="INFO">${output} = be:c0:62:38:a2:47</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:12.014787" elapsed="0.014556"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:12.013011" elapsed="0.016417"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:12.029810" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:12.029486" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:12.012992" elapsed="0.016990"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:12.034012" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:12.030139" elapsed="0.004037"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:12.035341" level="INFO">${output} = be:c0:62:38:a2:47</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:12.034538" elapsed="0.000864"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:12.034230" elapsed="0.001254"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:12.030098" elapsed="0.005434"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:12.035614" elapsed="0.000062"/>
</return>
<msg time="2026-05-25T01:55:12.036016" level="INFO">${switch.datapath_id_output_string} = be:c0:62:38:a2:47</msg>
<var>${switch.datapath_id_output_string}</var>
<arg>${switch}</arg>
<arg>${switch.datapath_id_output_command}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:12.011366" elapsed="0.024739"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:12.040808" level="INFO">be:c0:62:38:a2:47</msg>
<arg>${switch.datapath_id_output_string}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:12.036450" elapsed="0.004508"/>
</kw>
<kw name="Call Method" owner="BuiltIn">
<arg>${switch}</arg>
<arg>update_datapath_id</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-05-25T01:55:12.041174" elapsed="0.000395"/>
</kw>
<return>
<value>${switch.datapath_id}</value>
<status status="PASS" start="2026-05-25T01:55:12.041622" elapsed="0.000032"/>
</return>
<msg time="2026-05-25T01:55:12.043394" level="INFO">${datapath_id_from_switch} = 209733490876999</msg>
<var>${datapath_id_from_switch}</var>
<arg>${test_switch}</arg>
<doc>Using the connection index for the given switch, will execute the command string
"datapath_id_output_command" which will store the output in switch.datapath_id_output_string.
The switch object method "update_datapath_id" is called which is assumed to place the ODL
friendly (decimal) version of the datapath id in to switch.datapath_id and the value is also
returned from this keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:11.994732" elapsed="0.048690"/>
</kw>
<kw name="Verify Switch In Operational Data Store" owner="SwitchUtils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:12.058680" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes 
 path_url=/rests/data/opendaylight-inventory:nodes 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:12.062720" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node05y7peil7t5vqgklr7iakg71i10.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 24-May-2026 01:55:12 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:nodes":{"node":[{"id":"openflow:1","flow-node-inventory:table":[{"id":2},{"id":0}]},{"id":"openflow:209733490876999","flow-node-inventory:port-number":51386,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-69","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"6","byte-count":"496","duration":{"second":6,"nanosecond":28000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"7","active-flows":1,"packets-matched":"6"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-st... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:55:12.063330" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${REST_CONTEXT}</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:12.043902" elapsed="0.019492"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:12.069022" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:1","flow-node-inventory:table":[{"id":2},{"id":0}]},{"id":"openflow:209733490876999","flow-node-inventory:port-number":51386,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-69","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"6","byte-count":"496","duration":{"second":6,"nanosecond":28000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"7","active-flows":1,"packets-matched":"6"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"None","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:55:10.844Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:209733490876999:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"be:c0:62:38:a2:47","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"2","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"7","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":6,"nanosecond":349000000},"bytes":{"transmitted":"586","received":"220"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:55:10.862Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:12.063775" elapsed="0.005641"/>
</kw>
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>openflow:${switch.datapath_id}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:12.069572" elapsed="0.004201"/>
</kw>
<arg>${test_switch}</arg>
<doc>Verifies the existence of the switch.datapath_id in the operational datastore.</doc>
<status status="PASS" start="2026-05-25T01:55:12.043600" elapsed="0.030247"/>
</kw>
<kw name="Disable OpenFlow" owner="SwitchUtils">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:12.074613" level="INFO">Will toggle openflow to be OFF</msg>
<arg>Will toggle openflow to be OFF</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:12.074357" elapsed="0.000313"/>
</kw>
<kw name="Iterate Switch Commands From List" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:12.080808" elapsed="0.001636"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:12.079063" elapsed="0.003419"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:12.079042" elapsed="0.003466"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:12.084272" elapsed="0.001913"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:12.082564" elapsed="0.003662"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:12.082547" elapsed="0.003704"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:12.087991" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:12.086306" elapsed="0.001741"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:12.086289" elapsed="0.001795"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:12.089840" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:12.088142" elapsed="0.001764"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:12.088126" elapsed="0.001804"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:12.078825" elapsed="0.011153"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:12.090605" level="INFO">sudo ovs-vsctl set-controller s1 tcp:1.1.1.1</msg>
<arg>${cmd}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:12.090317" elapsed="0.000347"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:12.092988" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:12.091131" elapsed="0.002075"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:12.091113" elapsed="0.002118"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:12.094998" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:12.093286" elapsed="0.001765"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:12.093270" elapsed="0.001818"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:12.090877" elapsed="0.004261"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:12.097565" level="INFO">Executing command 'sudo ovs-vsctl set-controller s1 tcp:1.1.1.1'.</msg>
<msg time="2026-05-25T01:55:12.121195" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:12.121471" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:12.097397" elapsed="0.024130"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:12.095665" elapsed="0.025946"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:12.121999" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:12.121670" elapsed="0.000500"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:12.095647" elapsed="0.026573"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:12.126246" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:12.122349" elapsed="0.004031"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:12.127546" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:12.126740" elapsed="0.000865"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:12.126434" elapsed="0.001252"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:12.122312" elapsed="0.005423"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:12.127813" elapsed="0.000065"/>
</return>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:12.095390" elapsed="0.032731"/>
</kw>
<var name="${cmd}">sudo ovs-vsctl set-controller s1 tcp:1.1.1.1</var>
<status status="PASS" start="2026-05-25T01:55:12.090190" elapsed="0.038017"/>
</iter>
<var>${cmd}</var>
<value>@{cmd_list}</value>
<status status="PASS" start="2026-05-25T01:55:12.090029" elapsed="0.038244"/>
</for>
<arg>${switch}</arg>
<arg>${switch.openflow_disable_config}</arg>
<doc>Each string in the @{cmd_list} argument is executed on the switch.connection_index.</doc>
<status status="PASS" start="2026-05-25T01:55:12.076984" elapsed="0.051405"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:12.132333" elapsed="0.000228"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:12.129566" elapsed="0.003043"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:12.129525" elapsed="0.003119"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:12.135207" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:12.132735" elapsed="0.002546"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:12.132711" elapsed="0.002603"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:12.128908" elapsed="0.006473"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Validate Switch Output" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:12.147531" elapsed="0.001655"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:12.145779" elapsed="0.003447"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:12.145760" elapsed="0.003496"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:12.150976" elapsed="0.001874"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:12.149309" elapsed="0.003582"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:12.149293" elapsed="0.003622"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:12.154660" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:12.152969" elapsed="0.001746"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:12.152952" elapsed="0.001786"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:12.156474" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:12.154790" elapsed="0.001742"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:12.154775" elapsed="0.001780"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:12.145545" elapsed="0.011056"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:12.158946" elapsed="0.000210"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:12.157063" elapsed="0.002129"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:12.157045" elapsed="0.002171"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:12.161000" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:12.159275" elapsed="0.001778"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:12.159254" elapsed="0.001837"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:12.156832" elapsed="0.004309"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:12.163606" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-05-25T01:55:12.176979" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:12.177294" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:12.163437" elapsed="0.013920"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:12.161649" elapsed="0.015795"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:12.177833" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:12.177504" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:12.161631" elapsed="0.016375"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:12.182323" elapsed="0.000038"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:12.178161" elapsed="0.004263"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:12.183385" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:12.182709" elapsed="0.000733"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:12.182465" elapsed="0.001047"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:12.178122" elapsed="0.005434"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:12.183627" elapsed="0.000058"/>
</return>
<msg time="2026-05-25T01:55:12.183929" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${tmp}</var>
<arg>${switch}</arg>
<arg>/sbin/ifconfig</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:12.161397" elapsed="0.022588"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:12.184981" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:2f:dc:c0  txqueuelen 1000  (Ethernet)
        RX packets 7190  bytes 20279799 (20.2 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4583  bytes 1285663 (1.2 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 274  bytes 24208 (24.2 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 274  bytes 24208 (24.2 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

s1: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500
        inet6 fe80::bcc0:62ff:fe38:a247  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether be:c0:62:38:a2:47  txqueuelen 1000  (Ethernet)
        RX packets 3  bytes 330 (330.0 B)
        RX errors 0  dropped 3  overruns 0  frame 0
        TX packets 7  bytes 586 (586.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:12.184391" elapsed="0.000755"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:12.190047" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-05-25T01:55:12.235248" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:12.235531" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:1.1.1.1"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2....</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:12.189812" elapsed="0.045779"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:12.186215" elapsed="0.049463"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:12.236116" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:12.235738" elapsed="0.000512"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:12.186178" elapsed="0.050119"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:12.240420" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:12.236423" elapsed="0.004129"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:12.241768" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:1.1.1.1"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2....</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:12.240943" elapsed="0.000887"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:12.240604" elapsed="0.001309"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:12.236386" elapsed="0.005576"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:12.242039" elapsed="0.000099"/>
</return>
<msg time="2026-05-25T01:55:12.242417" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:1.1.1.1"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2....</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:12.185659" elapsed="0.056817"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:12.243479" level="INFO">9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:1.1.1.1"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:12.242808" elapsed="0.000799"/>
</kw>
<for flavor="IN">
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:12.244621" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:12.244300" elapsed="0.000499"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:12.244268" elapsed="0.000586"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:12.245401" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:12.244973" elapsed="0.000558"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:12.244938" elapsed="0.000643"/>
</if>
<var name="${str}"/>
<status status="NOT RUN" start="2026-05-25T01:55:12.244199" elapsed="0.001432"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="NOT RUN" start="2026-05-25T01:55:12.243729" elapsed="0.001960"/>
</for>
<arg>${switch}</arg>
<arg>${switch.openflow_validation_cmd}</arg>
<arg>${switch.openflow_disable_validations}</arg>
<doc>A generic keyword that will execute one command on the switch, and check for each string in the @{validations} argument.  There is a boolean flag ${should_exist} that can be used to check that the validations are or are NOT in the output of the command executed.</doc>
<status status="PASS" start="2026-05-25T01:55:12.142393" elapsed="0.103426"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>Validate Switch Output</arg>
<arg>${switch}</arg>
<arg>${switch.openflow_validation_cmd}</arg>
<arg>${switch.openflow_disable_validations}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:12.135602" elapsed="0.110335"/>
</kw>
<arg>${test_switch}</arg>
<doc>executes the switch.openflow_disable_config on the given switch and validates that openflow is NOT operational with the switch.openflow_validation_command against all the strings in the switch.openflow_disable_validations list.</doc>
<status status="PASS" start="2026-05-25T01:55:12.074020" elapsed="0.171989"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Verify Switch Not In Operational Data Store" owner="SwitchUtils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:12.258343" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes 
 path_url=/rests/data/opendaylight-inventory:nodes 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node05y7peil7t5vqgklr7iakg71i10.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:12.258902" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:nodes":{"node":[{"id":"openflow:1","flow-node-inventory:table":[{"id":2},{"id":0}]},{"id":"openflow:209733490876999","flow-node-inventory:port-number":51386,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-69","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"6","byte-count":"496","duration":{"second":6,"nanosecond":28000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"7","active-flows":1,"packets-matched":"6"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-st... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:55:12.259325" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${REST_CONTEXT}</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:12.247031" elapsed="0.012334"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:12.263288" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:1","flow-node-inventory:table":[{"id":2},{"id":0}]},{"id":"openflow:209733490876999","flow-node-inventory:port-number":51386,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-69","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"6","byte-count":"496","duration":{"second":6,"nanosecond":28000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"7","active-flows":1,"packets-matched":"6"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"None","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:55:10.844Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:209733490876999:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"be:c0:62:38:a2:47","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"2","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"7","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":6,"nanosecond":349000000},"bytes":{"transmitted":"586","received":"220"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:55:10.862Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:12.259588" elapsed="0.004248"/>
</kw>
<kw name="Should Not Match Regexp" owner="BuiltIn">
<msg time="2026-05-25T01:55:12.270159" level="FAIL">'{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:1","flow-node-inventory:table":[{"id":2},{"id":0}]},{"id":"openflow:209733490876999","flow-node-inventory:port-number":51386,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-69","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"6","byte-count":"496","duration":{"second":6,"nanosecond":28000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"7","active-flows":1,"packets-matched":"6"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"None","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:55:10.844Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:209733490876999:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"be:c0:62:38:a2:47","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"2","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"7","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":6,"nanosecond":349000000},"bytes":{"transmitted":"586","received":"220"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:55:10.862Z"}}]}}' matches 'openflow:209733490876999'</msg>
<arg>${resp.text}</arg>
<arg>openflow:${switch.datapath_id}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="FAIL" start="2026-05-25T01:55:12.264051" elapsed="0.006543">'{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:1","flow-node-inventory:table":[{"id":2},{"id":0}]},{"id":"openflow:209733490876999","flow-node-inventory:port-number":51386,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"i...
    [ Message content over the limit has been removed. ]
...,"flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:55:10.844Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:209733490876999:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"be:c0:62:38:a2:47","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"2","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"7","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":6,"nanosecond":349000000},"bytes":{"transmitted":"586","received":"220"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:55:10.862Z"}}]}}' matches 'openflow:209733490876999'</status>
</kw>
<arg>${test_switch}</arg>
<doc>Verifies that the given switch.datapath_id is not in the operational datastore.</doc>
<status status="FAIL" start="2026-05-25T01:55:12.246691" elapsed="0.024091">'{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:1","flow-node-inventory:table":[{"id":2},{"id":0}]},{"id":"openflow:209733490876999","flow-node-inventory:port-number":51386,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"i...
    [ Message content over the limit has been removed. ]
...,"flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:55:10.844Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:209733490876999:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"be:c0:62:38:a2:47","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"2","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"7","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":6,"nanosecond":349000000},"bytes":{"transmitted":"586","received":"220"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:55:10.862Z"}}]}}' matches 'openflow:209733490876999'</status>
</kw>
<kw name="Verify Switch Not In Operational Data Store" owner="SwitchUtils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:13.280251" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes 
 path_url=/rests/data/opendaylight-inventory:nodes 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node05y7peil7t5vqgklr7iakg71i10.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:13.280534" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '111'} 
 body={"opendaylight-inventory:nodes":{"node":[{"id":"openflow:1","flow-node-inventory:table":[{"id":2},{"id":0}]}]}} 
 </msg>
<msg time="2026-05-25T01:55:13.280745" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${REST_CONTEXT}</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:13.272557" elapsed="0.008227"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:13.284011" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:1","flow-node-inventory:table":[{"id":2},{"id":0}]}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:13.281031" elapsed="0.003151"/>
</kw>
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>openflow:${switch.datapath_id}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:13.284438" elapsed="0.005391"/>
</kw>
<arg>${test_switch}</arg>
<doc>Verifies that the given switch.datapath_id is not in the operational datastore.</doc>
<status status="PASS" start="2026-05-25T01:55:13.271602" elapsed="0.018326"/>
</kw>
<arg>3s</arg>
<arg>1s</arg>
<arg>Verify Switch Not In Operational Data Store</arg>
<arg>${test_switch}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:12.246190" elapsed="1.043871"/>
</kw>
<tag>switch_qualification</tag>
<timeout value="5 minutes"/>
<status status="PASS" start="2026-05-25T01:55:04.437630" elapsed="8.852639"/>
</test>
<kw name="Switch Qualification Suite Teardown" type="TEARDOWN">
<kw name="Cleanup Switch" owner="SwitchUtils">
<kw name="Iterate Switch Commands From List" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:13.300849" elapsed="0.001621"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:13.299061" elapsed="0.003454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:13.299032" elapsed="0.003512"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:13.304367" elapsed="0.001939"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:13.302601" elapsed="0.003746"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:13.302583" elapsed="0.003789"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:13.308101" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:13.306426" elapsed="0.001733"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:13.306410" elapsed="0.001773"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:13.309906" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:13.308245" elapsed="0.001719"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:13.308229" elapsed="0.001758"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:13.298839" elapsed="0.011194"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:13.310705" level="INFO">/sbin/ifconfig -a | egrep '^s' | awk '{print "sudo ovs-vsctl del-br",$1}' | sh</msg>
<arg>${cmd}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:13.310438" elapsed="0.000314"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:13.313100" elapsed="0.000162"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:13.311171" elapsed="0.002129"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:13.311153" elapsed="0.002175"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:13.315080" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:13.313382" elapsed="0.001752"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:13.313366" elapsed="0.001792"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:13.310970" elapsed="0.004234"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:13.317544" level="INFO">Executing command '/sbin/ifconfig -a | egrep '^s' | awk '{print "sudo ovs-vsctl del-br",$1}' | sh'.</msg>
<msg time="2026-05-25T01:55:13.391695" level="INFO">Command exited with return code 1.</msg>
<msg time="2026-05-25T01:55:13.391919" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:13.317407" elapsed="0.074582"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:13.315691" elapsed="0.076441"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:13.392540" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:13.392197" elapsed="0.000468"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:13.315673" elapsed="0.077040"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:13.396819" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:13.392837" elapsed="0.004117"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:13.398142" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:13.397417" elapsed="0.000767"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:13.397007" elapsed="0.001229"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:13.392801" elapsed="0.005467"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:13.398324" elapsed="0.000053"/>
</return>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:13.315466" elapsed="0.083055"/>
</kw>
<var name="${cmd}">/sbin/ifconfig -a | egrep '^s' | awk '{print "sudo ovs-vsctl del-br",$1}' | sh</var>
<status status="PASS" start="2026-05-25T01:55:13.310284" elapsed="0.088290"/>
</iter>
<var>${cmd}</var>
<value>@{cmd_list}</value>
<status status="PASS" start="2026-05-25T01:55:13.310107" elapsed="0.088512"/>
</for>
<arg>${switch}</arg>
<arg>${switch.cleanup_cmds}</arg>
<doc>Each string in the @{cmd_list} argument is executed on the switch.connection_index.</doc>
<status status="PASS" start="2026-05-25T01:55:13.296230" elapsed="0.102573"/>
</kw>
<arg>${test_switch}</arg>
<doc>will execute and command strings stored in switch.cleanup_cmds</doc>
<status status="PASS" start="2026-05-25T01:55:13.292741" elapsed="0.106171"/>
</kw>
<kw name="Close All Connections" owner="SSHLibrary">
<doc>Closes all open connections.</doc>
<status status="PASS" start="2026-05-25T01:55:13.399208" elapsed="0.000366"/>
</kw>
<kw name="Close All Connections" owner="Telnet">
<doc>Closes all open connections and empties the connection cache.</doc>
<status status="PASS" start="2026-05-25T01:55:13.399764" elapsed="0.000168"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:13.291261" elapsed="0.108748"/>
</kw>
<doc>TODO</doc>
<status status="PASS" start="2026-05-25T01:55:01.683234" elapsed="11.716815"/>
</suite>
<suite id="s1-s4-s2" name="020 OpenFlow Actions" source="/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Switch_Qualification/020_OpenFlow_Actions.robot">
<kw name="OpenFlow Actions Suite Setup" type="SETUP">
<kw name="Get Switch" owner="Ovs">
<msg time="2026-05-25T01:55:13.662769" level="INFO">${test_switch} = &lt;Ovs.Ovs object at 0x7f5acc445750&gt;</msg>
<var>${test_switch}</var>
<arg>${SWITCH_CLASS}</arg>
<doc>Generic method that will allow Robot Code to pass a string
to this "keyword - Get Switch" and create an object of that
type.  (EX: Get Switch  OVS)</doc>
<status status="PASS" start="2026-05-25T01:55:13.662557" elapsed="0.000247"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:13.663439" level="INFO">${test_switch} = &lt;Ovs.Ovs object at 0x7f5acc445750&gt;</msg>
<arg>${test_switch}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:13.663055" elapsed="0.000430"/>
</kw>
<kw name="Call Method" owner="BuiltIn">
<arg>${test_switch}</arg>
<arg>set_mgmt_ip</arg>
<arg>${SWITCH_IP}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-05-25T01:55:13.663681" elapsed="0.000317"/>
</kw>
<kw name="Call Method" owner="BuiltIn">
<arg>${test_switch}</arg>
<arg>set_controller_ip</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-05-25T01:55:13.664215" elapsed="0.000304"/>
</kw>
<kw name="Call Method" owner="BuiltIn">
<arg>${test_switch}</arg>
<arg>set_mgmt_prompt</arg>
<arg>${SWITCH_PROMPT}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-05-25T01:55:13.664717" elapsed="0.000298"/>
</kw>
<kw name="Run Command On Controller" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:13.667702" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:13.667278" elapsed="0.000506"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:13.667242" elapsed="0.000579"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:55:13.668289" level="INFO">index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:55:13.668437" level="INFO">${current_ssh_connection} = index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:55:13.668039" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:13.669288" level="INFO">Attempting to execute command "ps -elf | grep java" on remote system "10.30.170.200" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:13.668694" elapsed="0.000667"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:55:13.670139" level="INFO">${conn_id} = 1</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:55:13.669590" elapsed="0.000589"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:55:13.671451" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:55:13.671559" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:55:13.671035" elapsed="0.000557"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:13.671823" elapsed="0.000470"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:55:13.673541" level="INFO">Logging into '10.30.170.200:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:55:14.331600" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-173-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:55:13 UTC 2026

  System load:  0.09               Processes:             120
  Usage of /:   11.1% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.200
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

10 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


[?2004h[jenkins@releng-14419-729-0-builder-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:55:13.673043" elapsed="0.658750"/>
</kw>
<msg time="2026-05-25T01:55:14.331886" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:13.672536" elapsed="0.659441"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:55:13.670521" elapsed="0.661598"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:14.332763" level="INFO">Executing command 'ps -elf | grep java'.</msg>
<msg time="2026-05-25T01:55:14.345754" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:14.345957" level="INFO">${stdout} = 0 S jenkins     2025    1969 45  80   0 - 2290925 futex_ 01:51 ?      00:01:56 /usr/lib/jvm/java-21-openjdk-amd64/bin/java -Djava.security.properties=/tmp/karaf-0.22.3/etc/odl.java.security -XX:+Unloc...</msg>
<msg time="2026-05-25T01:55:14.346060" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:14.332492" elapsed="0.013666"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:14.346540" elapsed="0.000796"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:14.348504" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:14.347823" elapsed="0.000777"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:55:14.349116" elapsed="0.000045"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:14.348780" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:14.348725" elapsed="0.000563"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:55:14.349670" elapsed="0.000058"/>
</return>
<status status="PASS" start="2026-05-25T01:55:14.349408" elapsed="0.000394"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:14.349373" elapsed="0.000481"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:55:14.349929" elapsed="0.000030"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:14.354885" elapsed="0.000350"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:55:14.355409" elapsed="0.000173"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:14.355734" elapsed="0.000098"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:55:14.350695" elapsed="0.005189"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:55:13.666539" elapsed="0.689439"/>
</kw>
<msg time="2026-05-25T01:55:14.356054" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:13.665736" elapsed="0.690383"/>
</kw>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>ps -elf | grep java</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Controller machine.</doc>
<status status="PASS" start="2026-05-25T01:55:13.665224" elapsed="0.691077"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:14.368248" level="INFO">MAKE: OpenVswitch
MODEL: OVS
IP: 10.30.171.68
PROMPT: &gt;
CONTROLLER_IP: 10.30.170.200
MGMT_PROTOCOL: ssh</msg>
<arg>MAKE: ${test_switch.make}\nMODEL: ${test_switch.model}\nIP: ${test_switch.mgmt_ip}\nPROMPT: ${test_switch.mgmt_prompt}\nCONTROLLER_IP: ${test_switch.of_controller_ip}\nMGMT_PROTOCOL: ${test_switch.mgmt_protocol}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:14.356550" elapsed="0.011746"/>
</kw>
<kw name="Ping" owner="SwitchUtils">
<kw name="Run" owner="OperatingSystem">
<msg time="2026-05-25T01:55:14.371652" level="INFO">Running command 'ping 10.30.171.68 -c 1 -W 1 2&gt;&amp;1'.</msg>
<msg time="2026-05-25T01:55:14.376505" level="INFO">${output} = PING 10.30.171.68 (10.30.171.68) 56(84) bytes of data.
64 bytes from 10.30.171.68: icmp_seq=1 ttl=64 time=0.942 ms

--- 10.30.171.68 ping statistics ---
1 packets transmitted, 1 received, 0% packet lo...</msg>
<var>${output}</var>
<arg>ping ${ip} -c 1 -W 1</arg>
<doc>_This keyword is considered deprecated. Use the
[http://robotframework.org/robotframework/latest/libraries/Process.html|
Process] library instead._</doc>
<status status="PASS" start="2026-05-25T01:55:14.370725" elapsed="0.005824"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${output}</arg>
<arg>1 packets transmitted, 1 received</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:14.376832" elapsed="0.000534"/>
</kw>
<arg>${test_switch.mgmt_ip}</arg>
<status status="PASS" start="2026-05-25T01:55:14.368477" elapsed="0.008976"/>
</kw>
<kw name="Initialize Switch" owner="SwitchUtils">
<kw name="Connect To Switch" owner="SwitchUtils">
<kw name="Open Connection Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Call Method" owner="BuiltIn">
<arg>${switch}</arg>
<arg>set_ssh_key</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-05-25T01:55:14.382520" elapsed="0.000346"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:14.379522" elapsed="0.003387"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:14.379495" elapsed="0.003439"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Call Method" owner="BuiltIn">
<arg>${switch}</arg>
<arg>set_mgmt_user</arg>
<arg>${TOOLS_SYSTEM_USER}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-05-25T01:55:14.385113" elapsed="0.000312"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:14.382990" elapsed="0.002477"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:14.382973" elapsed="0.002519"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:55:14.391803" level="INFO">${connection_index} = 3</msg>
<var>${connection_index}</var>
<arg>${switch.mgmt_ip}</arg>
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=30s</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:55:14.387640" elapsed="0.004190"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:14.385559" elapsed="0.006581"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${connection_index}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:14.392383" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:14.392178" elapsed="0.000263"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:14.385542" elapsed="0.006921"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:55:14.398773" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:55:14.720303" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:55:01 UTC 2026

  System load:  0.03               Processes:             107
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:55:02 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${switch.mgmt_user}</arg>
<arg>${switch.ssh_key}</arg>
<arg>any</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:55:14.394725" elapsed="0.325728"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:14.392520" elapsed="0.328001"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:14.392503" elapsed="0.328060"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Open Connection" owner="Telnet">
<var>${connection_index}</var>
<arg>${switch.mgmt_ip}</arg>
<doc>Opens a new Telnet connection to the given host and port.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:14.723116" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:14.720664" elapsed="0.002519"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:14.723847" level="INFO">${connection_index} = 3</msg>
<var>${connection_index}</var>
<arg>${connection_index}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:14.723444" elapsed="0.000431"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:14.723208" elapsed="0.000704"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:14.720630" elapsed="0.003306"/>
</if>
<return>
<value>${connection_index}</value>
<status status="PASS" start="2026-05-25T01:55:14.723977" elapsed="0.000043"/>
</return>
<msg time="2026-05-25T01:55:14.724179" level="INFO">${connection_index} = 3</msg>
<var>${connection_index}</var>
<arg>${switch}</arg>
<doc>Some switches require telnet access and others require ssh access.  Based on the
switch.mgmt_protocol, the connection open will be handled by the right robot
library (Telnet or SSHLibrary).  The connection_index is returned.</doc>
<status status="PASS" start="2026-05-25T01:55:14.379257" elapsed="0.344949"/>
</kw>
<kw name="Call Method" owner="BuiltIn">
<arg>${switch}</arg>
<arg>set_connection_index</arg>
<arg>${connection_index}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-05-25T01:55:14.724408" elapsed="0.000314"/>
</kw>
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:14.727443" elapsed="0.002197"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:14.725292" elapsed="0.004407"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:14.725272" elapsed="0.004452"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:14.731848" elapsed="0.002262"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:14.729779" elapsed="0.004372"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:14.729762" elapsed="0.004414"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:14.736274" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:14.734231" elapsed="0.002099"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:14.734215" elapsed="0.002138"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:14.738465" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:14.736408" elapsed="0.002115"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:14.736392" elapsed="0.002155"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:14.725083" elapsed="0.013509"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Write Bare Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Write Bare" owner="SSHLibrary">
<arg>${cmd}</arg>
<doc>Writes the given ``text`` on the remote machine without appending a newline.</doc>
<status status="PASS" start="2026-05-25T01:55:14.743192" elapsed="0.000270"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:14.741095" elapsed="0.002406"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:14.741063" elapsed="0.002473"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Write Bare" owner="Telnet">
<arg>${cmd}</arg>
<doc>Writes the given text, and nothing else, into the connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:14.745683" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:14.743591" elapsed="0.002150"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:14.743574" elapsed="0.002190"/>
</if>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Write Bare command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:14.740855" elapsed="0.004955"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-05-25T01:55:15.746452" level="INFO">Slept 1 second.</msg>
<arg>1</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-05-25T01:55:14.745995" elapsed="1.000696"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<msg time="2026-05-25T01:55:15.753454" level="INFO">pwd</msg>
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:15.753169" elapsed="0.000393"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:15.748156" elapsed="0.005479"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:15.748106" elapsed="0.005639"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:15.758648" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:15.753876" elapsed="0.004891"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:15.753838" elapsed="0.004982"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:15.747605" elapsed="0.011337"/>
</kw>
<var name="${cmd}">pwd</var>
<status status="PASS" start="2026-05-25T01:55:14.740628" elapsed="1.018379"/>
</iter>
<var>${cmd}</var>
<value>@{switch.connection_configs}</value>
<status status="PASS" start="2026-05-25T01:55:14.738656" elapsed="1.020393"/>
</for>
<arg>${switch}</arg>
<doc>Will Open a connection to the switch, which will set the switch.connection_index.
For each switch.connection_configs string, a write bare will be executed on the
switch connection.  The write bare is done becuase some switch consoles require
extra input (CR/LF, etc.) that are needed.  The connection_configs strings should
be sufficient to put the switch console in to a usuable state so that further
interactions with the switch can be used with the robot keyword "Execute
Command"</doc>
<status status="PASS" start="2026-05-25T01:55:14.378526" elapsed="1.380607"/>
</kw>
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:15.761689" elapsed="0.001998"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:15.759637" elapsed="0.004089"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:15.759620" elapsed="0.004130"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:15.765851" elapsed="0.002208"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:15.763805" elapsed="0.004309"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:15.763788" elapsed="0.004352"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:15.770261" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:15.768195" elapsed="0.002122"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:15.768178" elapsed="0.002163"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:15.772443" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:15.770396" elapsed="0.002106"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:15.770380" elapsed="0.002145"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:15.759445" elapsed="0.013126"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Write Bare Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Write Bare" owner="SSHLibrary">
<arg>${cmd}</arg>
<doc>Writes the given ``text`` on the remote machine without appending a newline.</doc>
<status status="PASS" start="2026-05-25T01:55:15.777089" elapsed="0.000304"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:15.775028" elapsed="0.002404"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:15.775010" elapsed="0.002448"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Write Bare" owner="Telnet">
<arg>${cmd}</arg>
<doc>Writes the given text, and nothing else, into the connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:15.779670" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:15.777511" elapsed="0.002217"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:15.777495" elapsed="0.002257"/>
</if>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Write Bare command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:15.774801" elapsed="0.004998"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-05-25T01:55:16.780520" level="INFO">Slept 1 second.</msg>
<arg>1</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-05-25T01:55:15.780006" elapsed="1.000731"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<msg time="2026-05-25T01:55:16.789466" level="INFO">['/sbin/ifconfig -a | egrep \'^s\' | awk \'{print "sudo ovs-vsctl del-br",$1}\' | sh']</msg>
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:16.789178" elapsed="0.000408"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:16.783203" elapsed="0.006466"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:16.783153" elapsed="0.006578"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:16.794689" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:16.789864" elapsed="0.004945"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:16.789824" elapsed="0.005037"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:16.782673" elapsed="0.012296"/>
</kw>
<arg>Read Wrapper</arg>
<arg>${switch}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:16.781441" elapsed="0.013671"/>
</kw>
<var name="${cmd}">['/sbin/ifconfig -a | egrep \'^s\' | awk \'{print "sudo ovs-vsctl del-br",$1}\' | sh']</var>
<status status="PASS" start="2026-05-25T01:55:15.774575" elapsed="1.020616"/>
</iter>
<var>${cmd}</var>
<value>@{switch.initialization_cmds}</value>
<status status="PASS" start="2026-05-25T01:55:15.772627" elapsed="1.022638"/>
</for>
<if>
<branch type="IF" condition="&quot;${switch.initialization_type}&quot; == &quot;reboot&quot;">
<kw name="Wait For Switch Reboot" owner="SwitchUtils">
<arg>${switch}</arg>
<doc>If a switch has been set to reboot, it may take some time.  This keyword will first
make sure the switch has gone down (10 pings over 10 seconds should not see
a 100% success, although it may respond for a short time after the reload is
issued).  Then a poll is done with a single ping request every 5s until a success
is found, at which point it is assumed the switch is up and ready.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:16.800226" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:16.795411" elapsed="0.004879"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:16.795371" elapsed="0.004943"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.initialization_type}&quot; == &quot;reboot&quot;">
<kw name="Connect To Switch" owner="SwitchUtils">
<arg>${switch}</arg>
<doc>Will Open a connection to the switch, which will set the switch.connection_index.
For each switch.connection_configs string, a write bare will be executed on the
switch connection.  The write bare is done becuase some switch consoles require
extra input (CR/LF, etc.) that are needed.  The connection_configs strings should
be sufficient to put the switch console in to a usuable state so that further
interactions with the switch can be used with the robot keyword "Execute
Command"</doc>
<status status="NOT RUN" start="2026-05-25T01:55:16.802472" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:16.800370" elapsed="0.002164"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:16.800354" elapsed="0.002204"/>
</if>
<arg>${test_switch}</arg>
<doc>Will connect and execute all switch.initialization_cmds on the given switch.
In some cases, this may be a reboot.  If so, the switch.initialization_type can
be set to "reboot" and further logic is invoked to wait for the reboot to complete
and a reconnect to the switch is made.</doc>
<status status="PASS" start="2026-05-25T01:55:14.377924" elapsed="2.424682"/>
</kw>
<kw name="Configure OpenFlow" owner="SwitchUtils">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:16.803405" level="INFO">Applying configs to configure openflow on the given switch.</msg>
<arg>Applying configs to configure openflow on the given switch.</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:16.803162" elapsed="0.000289"/>
</kw>
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:16.805981" elapsed="0.001993"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:16.803938" elapsed="0.004074"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:16.803920" elapsed="0.004117"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:16.810152" elapsed="0.002205"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:16.808108" elapsed="0.004289"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:16.808090" elapsed="0.004332"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:16.814748" elapsed="0.000061"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:16.812476" elapsed="0.002417"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:16.812460" elapsed="0.002488"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:16.819514" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:16.815105" elapsed="0.004497"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:16.815037" elapsed="0.004599"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:16.803753" elapsed="0.015952"/>
</kw>
<kw name="Iterate Switch Commands From List" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:16.829318" elapsed="0.002010"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:16.827246" elapsed="0.004122"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:16.827228" elapsed="0.004165"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:16.833495" elapsed="0.002191"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:16.831448" elapsed="0.004278"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:16.831431" elapsed="0.004320"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:16.837865" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:16.835805" elapsed="0.002115"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:16.835788" elapsed="0.002158"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:16.840086" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:16.838001" elapsed="0.002146"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:16.837985" elapsed="0.002185"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:16.827046" elapsed="0.013173"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:16.840907" level="INFO">sudo ovs-vsctl add-br s1</msg>
<arg>${cmd}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:16.840625" elapsed="0.000334"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:16.843654" elapsed="0.000125"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:16.841414" elapsed="0.002398"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:16.841397" elapsed="0.002500"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:16.846004" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:16.843954" elapsed="0.002102"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:16.843938" elapsed="0.002156"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:16.841223" elapsed="0.004918"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:16.848860" level="INFO">Executing command 'sudo ovs-vsctl add-br s1'.</msg>
<msg time="2026-05-25T01:55:16.872319" level="INFO">Command exited with return code 1.</msg>
<msg time="2026-05-25T01:55:16.872605" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:16.848728" elapsed="0.023937"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:16.846670" elapsed="0.026100"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:16.873428" elapsed="0.000058"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:16.872837" elapsed="0.000736"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:16.846652" elapsed="0.026972"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:16.878948" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:16.873763" elapsed="0.005269"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:16.879814" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:16.879342" elapsed="0.000508"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:16.879084" elapsed="0.000817"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:16.873722" elapsed="0.006209"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:16.879983" elapsed="0.000049"/>
</return>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:16.846423" elapsed="0.033773"/>
</kw>
<var name="${cmd}">sudo ovs-vsctl add-br s1</var>
<status status="PASS" start="2026-05-25T01:55:16.840430" elapsed="0.039820"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:16.880982" level="INFO">sudo ovs-vsctl set bridge s1 protocols=OpenFlow13</msg>
<arg>${cmd}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:16.880631" elapsed="0.000413"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:16.884564" elapsed="0.000167"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:16.881678" elapsed="0.003100"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:16.881653" elapsed="0.003158"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:16.887588" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:16.884885" elapsed="0.002755"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:16.884862" elapsed="0.002801"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:16.881409" elapsed="0.006298"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:16.890413" level="INFO">Executing command 'sudo ovs-vsctl set bridge s1 protocols=OpenFlow13'.</msg>
<msg time="2026-05-25T01:55:16.932029" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:16.932295" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:16.890282" elapsed="0.042070"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:16.888227" elapsed="0.044215"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:16.932957" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:16.932502" elapsed="0.000612"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:16.888209" elapsed="0.044955"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:16.937979" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:16.933291" elapsed="0.004859"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:16.939219" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:16.938665" elapsed="0.000591"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:16.938205" elapsed="0.001102"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:16.933254" elapsed="0.006084"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:16.939388" elapsed="0.000043"/>
</return>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:16.887986" elapsed="0.051579"/>
</kw>
<var name="${cmd}">sudo ovs-vsctl set bridge s1 protocols=OpenFlow13</var>
<status status="PASS" start="2026-05-25T01:55:16.880390" elapsed="0.059227"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:16.940360" level="INFO">sudo ovs-vsctl set-controller s1 tcp:10.30.170.200</msg>
<arg>${cmd}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:16.939990" elapsed="0.000434"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:16.944157" elapsed="0.000163"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:16.941013" elapsed="0.003426"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:16.940989" elapsed="0.003487"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:16.947438" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:16.944554" elapsed="0.002958"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:16.944530" elapsed="0.003015"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:16.940753" elapsed="0.006858"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:16.951303" level="INFO">Executing command 'sudo ovs-vsctl set-controller s1 tcp:10.30.170.200'.</msg>
<msg time="2026-05-25T01:55:16.991144" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:16.991360" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:16.951171" elapsed="0.040245"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:16.948333" elapsed="0.043169"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:16.991990" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:16.991559" elapsed="0.000589"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:16.948308" elapsed="0.043889"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:16.997010" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:16.992321" elapsed="0.004850"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:16.998328" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:16.997630" elapsed="0.000758"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:16.997226" elapsed="0.001241"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:16.992284" elapsed="0.006250"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:16.998612" elapsed="0.000064"/>
</return>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:16.947995" elapsed="0.050889"/>
</kw>
<var name="${cmd}">sudo ovs-vsctl set-controller s1 tcp:10.30.170.200</var>
<status status="PASS" start="2026-05-25T01:55:16.939751" elapsed="0.059218"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:17.000164" level="INFO">sudo ifconfig s1 up</msg>
<arg>${cmd}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:16.999586" elapsed="0.000679"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:17.004290" elapsed="0.000118"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:17.001229" elapsed="0.003212"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:17.001188" elapsed="0.003277"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:17.006578" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:17.004519" elapsed="0.002112"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:17.004503" elapsed="0.002152"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:17.000786" elapsed="0.005915"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:17.009405" level="INFO">Executing command 'sudo ifconfig s1 up'.</msg>
<msg time="2026-05-25T01:55:17.040986" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:17.041332" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:17.009277" elapsed="0.032115"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:17.007215" elapsed="0.034281"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:17.042124" elapsed="0.000054"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:17.041563" elapsed="0.000693"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:17.007198" elapsed="0.035104"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:17.047946" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:17.042440" elapsed="0.005681"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:17.049459" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:17.048620" elapsed="0.000901"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:17.048181" elapsed="0.001429"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:17.042400" elapsed="0.007262"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:17.049749" elapsed="0.000077"/>
</return>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:17.006977" elapsed="0.043083"/>
</kw>
<var name="${cmd}">sudo ifconfig s1 up</var>
<status status="PASS" start="2026-05-25T01:55:16.999208" elapsed="0.051095"/>
</iter>
<var>${cmd}</var>
<value>@{cmd_list}</value>
<status status="PASS" start="2026-05-25T01:55:16.840275" elapsed="0.210106"/>
</for>
<arg>${switch}</arg>
<arg>${switch.base_openflow_config}</arg>
<doc>Each string in the @{cmd_list} argument is executed on the switch.connection_index.</doc>
<status status="PASS" start="2026-05-25T01:55:16.823726" elapsed="0.226836"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:17.053386" elapsed="0.000124"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:17.051300" elapsed="0.002243"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:17.051282" elapsed="0.002286"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:17.055869" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:17.053622" elapsed="0.002305"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:17.053606" elapsed="0.002345"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:17.051085" elapsed="0.004912"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Validate Switch Output" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:17.069422" elapsed="0.002011"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:17.067372" elapsed="0.004102"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:17.067352" elapsed="0.004148"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:17.073610" elapsed="0.002326"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:17.071555" elapsed="0.004421"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:17.071538" elapsed="0.004463"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:17.078118" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:17.076056" elapsed="0.002119"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:17.076039" elapsed="0.002158"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:17.080346" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:17.078251" elapsed="0.002154"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:17.078236" elapsed="0.002192"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:17.067184" elapsed="0.013291"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:17.082957" elapsed="0.000136"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:17.080892" elapsed="0.002237"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:17.080874" elapsed="0.002279"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:17.085325" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:17.083206" elapsed="0.002171"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:17.083190" elapsed="0.002211"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:17.080707" elapsed="0.004740"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:17.088188" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-05-25T01:55:17.101112" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:17.101332" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:17.088037" elapsed="0.013359"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:17.085936" elapsed="0.015546"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:17.101975" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:17.101539" elapsed="0.000594"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:17.085919" elapsed="0.016261"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:17.106967" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:17.102303" elapsed="0.004746"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:17.107793" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:17.107356" elapsed="0.000478"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:17.107102" elapsed="0.000783"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:17.102267" elapsed="0.005647"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:17.107964" elapsed="0.000048"/>
</return>
<msg time="2026-05-25T01:55:17.108207" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${tmp}</var>
<arg>${switch}</arg>
<arg>/sbin/ifconfig</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:17.085733" elapsed="0.022513"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:17.108937" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:2f:dc:c0  txqueuelen 1000  (Ethernet)
        RX packets 7255  bytes 20288729 (20.2 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4651  bytes 1299009 (1.2 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 274  bytes 24208 (24.2 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 274  bytes 24208 (24.2 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

s1: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500
        inet6 fe80::bcc0:62ff:fe38:a247  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether be:c0:62:38:a2:47  txqueuelen 1000  (Ethernet)
        RX packets 3  bytes 330 (330.0 B)
        RX errors 0  dropped 3  overruns 0  frame 0
        TX packets 7  bytes 586 (586.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:17.108590" elapsed="0.000428"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:17.113059" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-05-25T01:55:17.159410" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:17.159655" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:17.112880" elapsed="0.046837"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:17.109744" elapsed="0.050070"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:17.160407" elapsed="0.000054"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:17.159879" elapsed="0.000669"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:17.109719" elapsed="0.050878"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:17.165893" elapsed="0.000054"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:17.160734" elapsed="0.005301"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:17.167361" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:17.166559" elapsed="0.000863"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:17.166123" elapsed="0.001381"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:17.160693" elapsed="0.006856"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:17.167624" elapsed="0.000069"/>
</return>
<msg time="2026-05-25T01:55:17.167966" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:17.109429" elapsed="0.058593"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:17.169017" level="INFO">9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:17.168479" elapsed="0.000670"/>
</kw>
<for flavor="IN">
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<msg time="2026-05-25T01:55:17.171126" level="FAIL">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</msg>
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="FAIL" start="2026-05-25T01:55:17.170401" elapsed="0.000809">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-05-25T01:55:17.169809" elapsed="0.001481">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-05-25T01:55:17.169778" elapsed="0.001544">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:17.171581" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:17.171390" elapsed="0.000246"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:17.171373" elapsed="0.000286"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-05-25T01:55:17.169712" elapsed="0.001991">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="FAIL" start="2026-05-25T01:55:17.169269" elapsed="0.002495">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</for>
<arg>${switch}</arg>
<arg>${switch.openflow_validation_cmd}</arg>
<arg>${switch.openflow_enable_validations}</arg>
<doc>A generic keyword that will execute one command on the switch, and check for each string in the @{validations} argument.  There is a boolean flag ${should_exist} that can be used to check that the validations are or are NOT in the output of the command executed.</doc>
<status status="FAIL" start="2026-05-25T01:55:17.063304" elapsed="0.108569">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<kw name="Validate Switch Output" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:18.194327" elapsed="0.002058"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:18.192221" elapsed="0.004218"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:18.192120" elapsed="0.004347"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:18.198579" elapsed="0.002210"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:18.196523" elapsed="0.004310"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:18.196506" elapsed="0.004352"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:18.202987" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:18.200917" elapsed="0.002129"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:18.200897" elapsed="0.002185"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:18.205222" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:18.203139" elapsed="0.002141"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:18.203122" elapsed="0.002182"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:18.191921" elapsed="0.013435"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:18.208057" elapsed="0.000146"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:18.205817" elapsed="0.002420"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:18.205800" elapsed="0.002461"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:18.210362" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:18.208316" elapsed="0.002098"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:18.208299" elapsed="0.002138"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:18.205623" elapsed="0.004860"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:18.213257" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-05-25T01:55:18.227274" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:18.227552" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:18.213112" elapsed="0.014504"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:18.211013" elapsed="0.016703"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:18.228347" elapsed="0.000054"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:18.227783" elapsed="0.000697"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:18.210989" elapsed="0.017539"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:18.232998" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:18.228665" elapsed="0.004441"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:18.233958" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:18.233421" elapsed="0.000581"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:18.233143" elapsed="0.000914"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:18.228624" elapsed="0.005486"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:18.234168" elapsed="0.000053"/>
</return>
<msg time="2026-05-25T01:55:18.234414" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${tmp}</var>
<arg>${switch}</arg>
<arg>/sbin/ifconfig</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:18.210771" elapsed="0.023684"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:18.235156" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:2f:dc:c0  txqueuelen 1000  (Ethernet)
        RX packets 7287  bytes 20291929 (20.2 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4684  bytes 1311251 (1.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 274  bytes 24208 (24.2 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 274  bytes 24208 (24.2 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

s1: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500
        inet6 fe80::bcc0:62ff:fe38:a247  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether be:c0:62:38:a2:47  txqueuelen 1000  (Ethernet)
        RX packets 4  bytes 440 (440.0 B)
        RX errors 0  dropped 4  overruns 0  frame 0
        TX packets 7  bytes 586 (586.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:18.234745" elapsed="0.000591"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:18.239504" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-05-25T01:55:18.287615" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:18.287935" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:18.239310" elapsed="0.048686"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:18.236170" elapsed="0.051982"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:18.288775" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:18.288226" elapsed="0.000679"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:18.236142" elapsed="0.052814"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:18.293991" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:18.289124" elapsed="0.005029"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:18.295451" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:18.294624" elapsed="0.000887"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:18.294207" elapsed="0.001384"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:18.289052" elapsed="0.006588"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:18.295719" elapsed="0.000070"/>
</return>
<msg time="2026-05-25T01:55:18.296011" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:18.235785" elapsed="0.060252"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:18.296510" level="INFO">9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:18.296254" elapsed="0.000305"/>
</kw>
<for flavor="IN">
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<msg time="2026-05-25T01:55:18.297545" level="FAIL">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</msg>
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="FAIL" start="2026-05-25T01:55:18.297167" elapsed="0.000453">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-05-25T01:55:18.296890" elapsed="0.000805">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-05-25T01:55:18.296875" elapsed="0.000852">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:18.297985" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:18.297796" elapsed="0.000245"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:18.297778" elapsed="0.000286"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-05-25T01:55:18.296842" elapsed="0.001283">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="FAIL" start="2026-05-25T01:55:18.296618" elapsed="0.001571">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</for>
<arg>${switch}</arg>
<arg>${switch.openflow_validation_cmd}</arg>
<arg>${switch.openflow_enable_validations}</arg>
<doc>A generic keyword that will execute one command on the switch, and check for each string in the @{validations} argument.  There is a boolean flag ${should_exist} that can be used to check that the validations are or are NOT in the output of the command executed.</doc>
<status status="FAIL" start="2026-05-25T01:55:18.187782" elapsed="0.110511">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<kw name="Validate Switch Output" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:19.319413" elapsed="0.002001"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:19.317296" elapsed="0.004170"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:19.317272" elapsed="0.004221"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:19.323673" elapsed="0.002220"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:19.321548" elapsed="0.004386"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:19.321531" elapsed="0.004428"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:19.328126" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:19.326016" elapsed="0.002169"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:19.325999" elapsed="0.002210"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:19.330310" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:19.328264" elapsed="0.002105"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:19.328248" elapsed="0.002145"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:19.317097" elapsed="0.013344"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:19.332924" elapsed="0.000125"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:19.330859" elapsed="0.002238"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:19.330842" elapsed="0.002281"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:19.335456" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:19.333177" elapsed="0.002333"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:19.333161" elapsed="0.002373"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:19.330673" elapsed="0.004908"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:19.338282" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-05-25T01:55:19.351653" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:19.351794" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:19.338144" elapsed="0.013690"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:19.336084" elapsed="0.015803"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:19.352236" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:19.351922" elapsed="0.000396"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:19.336051" elapsed="0.016295"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:19.355339" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:19.352424" elapsed="0.003032"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:19.356222" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:19.355742" elapsed="0.000520"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:19.355490" elapsed="0.000824"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:19.352402" elapsed="0.003942"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:19.356394" elapsed="0.000047"/>
</return>
<msg time="2026-05-25T01:55:19.356611" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${tmp}</var>
<arg>${switch}</arg>
<arg>/sbin/ifconfig</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:19.335866" elapsed="0.020783"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:19.357283" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:2f:dc:c0  txqueuelen 1000  (Ethernet)
        RX packets 7297  bytes 20293101 (20.2 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4698  bytes 1314607 (1.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 274  bytes 24208 (24.2 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 274  bytes 24208 (24.2 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

s1: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500
        inet6 fe80::bcc0:62ff:fe38:a247  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether be:c0:62:38:a2:47  txqueuelen 1000  (Ethernet)
        RX packets 4  bytes 440 (440.0 B)
        RX errors 0  dropped 4  overruns 0  frame 0
        TX packets 8  bytes 656 (656.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:19.356916" elapsed="0.000446"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:19.363048" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-05-25T01:55:19.441506" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:19.441796" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:19.362866" elapsed="0.078990"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:19.358057" elapsed="0.083886"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:19.442471" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:19.442005" elapsed="0.000597"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:19.358032" elapsed="0.084614"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:19.447567" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:19.442772" elapsed="0.004932"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:19.448567" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:19.448149" elapsed="0.000457"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:19.447757" elapsed="0.000901"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:19.442734" elapsed="0.005954"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:19.448735" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:55:19.448943" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:19.357746" elapsed="0.091234"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:19.449607" level="INFO">9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:19.449265" elapsed="0.000407"/>
</kw>
<for flavor="IN">
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<msg time="2026-05-25T01:55:19.450975" level="FAIL">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</msg>
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="FAIL" start="2026-05-25T01:55:19.450471" elapsed="0.000626">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-05-25T01:55:19.450109" elapsed="0.001092">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-05-25T01:55:19.450086" elapsed="0.001162">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:19.451616" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:19.451341" elapsed="0.000354"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:19.451317" elapsed="0.000410"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-05-25T01:55:19.450025" elapsed="0.001763">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="FAIL" start="2026-05-25T01:55:19.449745" elapsed="0.002126">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</for>
<arg>${switch}</arg>
<arg>${switch.openflow_validation_cmd}</arg>
<arg>${switch.openflow_enable_validations}</arg>
<doc>A generic keyword that will execute one command on the switch, and check for each string in the @{validations} argument.  There is a boolean flag ${should_exist} that can be used to check that the validations are or are NOT in the output of the command executed.</doc>
<status status="FAIL" start="2026-05-25T01:55:19.313129" elapsed="0.138881">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<kw name="Validate Switch Output" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:20.470385" elapsed="0.002033"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:20.468295" elapsed="0.004176"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:20.468272" elapsed="0.004226"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:20.474677" elapsed="0.002216"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:20.472552" elapsed="0.004382"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:20.472536" elapsed="0.004422"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:20.479153" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:20.477013" elapsed="0.002198"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:20.476997" elapsed="0.002238"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:20.481352" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:20.479290" elapsed="0.002121"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:20.479274" elapsed="0.002160"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:20.468091" elapsed="0.013392"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:20.484092" elapsed="0.000134"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:20.481965" elapsed="0.002297"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:20.481938" elapsed="0.002348"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:20.486566" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:20.484339" elapsed="0.002280"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:20.484323" elapsed="0.002319"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:20.481732" elapsed="0.004959"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:20.489437" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-05-25T01:55:20.502966" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:20.503256" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:20.489296" elapsed="0.014031"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:20.487204" elapsed="0.016218"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:20.504015" elapsed="0.000083"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:20.503485" elapsed="0.000705"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:20.487186" elapsed="0.017054"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:20.509331" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:20.504377" elapsed="0.005091"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:20.510689" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:20.509930" elapsed="0.000825"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:20.509521" elapsed="0.001317"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:20.504337" elapsed="0.006549"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:20.510967" elapsed="0.000073"/>
</return>
<msg time="2026-05-25T01:55:20.511352" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${tmp}</var>
<arg>${switch}</arg>
<arg>/sbin/ifconfig</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:20.486978" elapsed="0.024437"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:20.512501" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:2f:dc:c0  txqueuelen 1000  (Ethernet)
        RX packets 7309  bytes 20294405 (20.2 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4712  bytes 1317851 (1.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 274  bytes 24208 (24.2 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 274  bytes 24208 (24.2 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

s1: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500
        inet6 fe80::bcc0:62ff:fe38:a247  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether be:c0:62:38:a2:47  txqueuelen 1000  (Ethernet)
        RX packets 4  bytes 440 (440.0 B)
        RX errors 0  dropped 4  overruns 0  frame 0
        TX packets 8  bytes 656 (656.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:20.511896" elapsed="0.000736"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:20.516616" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-05-25T01:55:20.603546" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:20.603801" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:20.516433" elapsed="0.087470"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:20.513481" elapsed="0.090518"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:20.604698" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:20.604213" elapsed="0.000627"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:20.513455" elapsed="0.091441"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:20.609792" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:20.605032" elapsed="0.004897"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:20.611180" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:20.610443" elapsed="0.000801"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:20.609990" elapsed="0.001335"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:20.604992" elapsed="0.006381"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:20.611454" elapsed="0.000071"/>
</return>
<msg time="2026-05-25T01:55:20.611807" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_versio...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:20.513161" elapsed="0.098753"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:20.612948" level="INFO">9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:20.612385" elapsed="0.000710"/>
</kw>
<for flavor="IN">
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<msg time="2026-05-25T01:55:20.614096" level="FAIL">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</msg>
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="FAIL" start="2026-05-25T01:55:20.613699" elapsed="0.000480">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-05-25T01:55:20.613435" elapsed="0.000821">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-05-25T01:55:20.613421" elapsed="0.000869">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:20.614549" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:20.614357" elapsed="0.000248"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:20.614340" elapsed="0.000287"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-05-25T01:55:20.613389" elapsed="0.001283">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="FAIL" start="2026-05-25T01:55:20.613168" elapsed="0.001566">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</for>
<arg>${switch}</arg>
<arg>${switch.openflow_validation_cmd}</arg>
<arg>${switch.openflow_enable_validations}</arg>
<doc>A generic keyword that will execute one command on the switch, and check for each string in the @{validations} argument.  There is a boolean flag ${should_exist} that can be used to check that the validations are or are NOT in the output of the command executed.</doc>
<status status="FAIL" start="2026-05-25T01:55:20.463694" elapsed="0.151148">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<kw name="Validate Switch Output" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:21.633949" elapsed="0.002005"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:21.631820" elapsed="0.004184"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:21.631796" elapsed="0.004237"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:21.638173" elapsed="0.002220"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:21.636105" elapsed="0.004330"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:21.636087" elapsed="0.004373"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:21.642581" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:21.640515" elapsed="0.002124"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:21.640498" elapsed="0.002165"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:21.644784" elapsed="0.000084"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:21.642718" elapsed="0.002189"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:21.642702" elapsed="0.002229"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:21.631622" elapsed="0.013359"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:21.647487" elapsed="0.000126"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:21.645419" elapsed="0.002229"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:21.645401" elapsed="0.002272"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:21.649788" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:21.647727" elapsed="0.002114"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:21.647710" elapsed="0.002155"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:21.645232" elapsed="0.004680"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:21.652648" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-05-25T01:55:21.665888" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:21.666007" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:21.652510" elapsed="0.013526"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:21.650417" elapsed="0.015679"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:21.666371" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:21.666126" elapsed="0.000304"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:21.650399" elapsed="0.016052"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:21.670716" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:21.666510" elapsed="0.004338"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:21.672094" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:21.671341" elapsed="0.000822"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:21.670901" elapsed="0.001363"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:21.666493" elapsed="0.005822"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:21.672397" elapsed="0.000073"/>
</return>
<msg time="2026-05-25T01:55:21.672749" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${tmp}</var>
<arg>${switch}</arg>
<arg>/sbin/ifconfig</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:21.650212" elapsed="0.022599"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:21.673828" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:2f:dc:c0  txqueuelen 1000  (Ethernet)
        RX packets 7337  bytes 20297157 (20.2 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4737  bytes 1328253 (1.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 274  bytes 24208 (24.2 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 274  bytes 24208 (24.2 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

s1: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500
        inet6 fe80::bcc0:62ff:fe38:a247  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether be:c0:62:38:a2:47  txqueuelen 1000  (Ethernet)
        RX packets 5  bytes 550 (550.0 B)
        RX errors 0  dropped 5  overruns 0  frame 0
        TX packets 8  bytes 656 (656.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:21.673274" elapsed="0.000682"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:21.678636" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-05-25T01:55:21.797933" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:21.798267" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
            is_connected: true
        Port s1
            Interface s1
              ...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:21.678506" elapsed="0.119825"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:21.675172" elapsed="0.123263"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:21.799019" elapsed="0.000081"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:21.798502" elapsed="0.000682"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:21.675130" elapsed="0.124101"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:21.804362" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:21.799366" elapsed="0.005135"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:21.805728" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
            is_connected: true
        Port s1
            Interface s1
              ...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:21.804974" elapsed="0.000819"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:21.804557" elapsed="0.001321"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:21.799327" elapsed="0.006601"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:21.806007" elapsed="0.000098"/>
</return>
<msg time="2026-05-25T01:55:21.806395" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
            is_connected: true
        Port s1
            Interface s1
              ...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:21.674629" elapsed="0.131826"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:21.807482" level="INFO">9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.200"
            is_connected: true
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:21.806886" elapsed="0.000703"/>
</kw>
<for flavor="IN">
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:21.808929" elapsed="0.000367"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:21.808343" elapsed="0.000994"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:21.808264" elapsed="0.001098"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:21.809673" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:21.809416" elapsed="0.000315"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:21.809399" elapsed="0.000356"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="PASS" start="2026-05-25T01:55:21.808196" elapsed="0.001581"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-05-25T01:55:21.807707" elapsed="0.002100"/>
</for>
<arg>${switch}</arg>
<arg>${switch.openflow_validation_cmd}</arg>
<arg>${switch.openflow_enable_validations}</arg>
<doc>A generic keyword that will execute one command on the switch, and check for each string in the @{validations} argument.  There is a boolean flag ${should_exist} that can be used to check that the validations are or are NOT in the output of the command executed.</doc>
<status status="PASS" start="2026-05-25T01:55:21.627654" elapsed="0.182209"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>Validate Switch Output</arg>
<arg>${switch}</arg>
<arg>${switch.openflow_validation_cmd}</arg>
<arg>${switch.openflow_enable_validations}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:17.056235" elapsed="4.753686"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:21.812464" elapsed="0.000122"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:21.810397" elapsed="0.002222"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:21.810380" elapsed="0.002263"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:21.814748" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:21.812697" elapsed="0.002102"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:21.812680" elapsed="0.002142"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:21.810199" elapsed="0.004670"/>
</kw>
<arg>${test_switch}</arg>
<doc>The commands neccessary to configure openflow on the given switch object should exist in the switch.base_openflow_config attribute.  Also, the commands/logic to verify that openflow is working are checked in this keyword and come
from switch.openflow_validation_cmd output where the validation strings are
stored in switch.openflow_enable_validations</doc>
<status status="PASS" start="2026-05-25T01:55:16.802813" elapsed="5.012108"/>
</kw>
<kw name="Create Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:21.815464" level="INFO">Creating Session using : alias=session, url=http://10.30.170.200:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7f5acc2c3a10&gt;, timeout=None, proxies=None, verify=False,                     debug=0 </msg>
<arg>session</arg>
<arg>http://${ODL_SYSTEM_IP}:${RESTCONFPORT}</arg>
<arg>auth=${AUTH}</arg>
<arg>headers=${HEADERS_XML}</arg>
<doc>Create Session: create a HTTP session to a server</doc>
<status status="PASS" start="2026-05-25T01:55:21.815128" elapsed="0.000509"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:13.661786" elapsed="8.153918"/>
</kw>
<test id="s1-s4-s2-t1" name="INPORT" line="56">
<kw name="Create And Remove Flow">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:21.817582" level="INFO">${ethernet_match_dict} = {'type': '0x800', 'destination': 'ff:ff:ff:ff:ff:ff', 'source': '00:ab:cd:ef:01:23'}</msg>
<var>${ethernet_match_dict}</var>
<arg>type=${eth_type}</arg>
<arg>destination=${eth_dst}</arg>
<arg>source=${eth_src}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:21.817102" elapsed="0.000508"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:21.818237" level="INFO">${ipv4_match_dict} = {'source': '11.3.0.0/16', 'destination': '99.0.0.0/8'}</msg>
<var>${ipv4_match_dict}</var>
<arg>source=${ipv4_src}</arg>
<arg>destination=${ipv4_dst}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:21.817818" elapsed="0.000446"/>
</kw>
<kw name="Create Inventory Flow" owner="FlowLib">
<kw name="Make Inventory Flow" owner="FlowLib">
<msg time="2026-05-25T01:55:21.818910" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7f5acc377390&gt;</msg>
<var>${flow}</var>
<doc>Robot Keyword to create and return an instance of the Flow
class.</doc>
<status status="PASS" start="2026-05-25T01:55:21.818782" elapsed="0.000155"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:21.818979" elapsed="0.000063"/>
</return>
<msg time="2026-05-25T01:55:21.819186" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7f5acc377390&gt;</msg>
<var>${flow}</var>
<doc>Calls FlowLib.Make_Inventory_Flow function and initializes and sanitizes
the basic flow elements that can be given to flow:inventory</doc>
<status status="PASS" start="2026-05-25T01:55:21.818449" elapsed="0.000764"/>
</kw>
<kw name="Set &quot;${flow}&quot; &quot;table_id&quot; With &quot;${table_id}&quot;" owner="FlowLib" source_name="Set &quot;${flow}&quot; &quot;${property}&quot; With &quot;${property_val}&quot;">
<if>
<branch type="IF" condition="&quot;table_id&quot; != &quot;${property}&quot; and &quot;cookie_mask&quot; != &quot;${property}&quot;">
<kw name="Replace String" owner="String">
<var>${property}</var>
<arg>${property}</arg>
<arg>_</arg>
<arg>-</arg>
<doc>Replaces ``search_for`` in the given ``string`` with ``replace_with``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:21.824252" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:21.823940" elapsed="0.000390"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:21.824837" level="INFO">${property} = table_id</msg>
<var>${property}</var>
<arg>${property}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:21.824539" elapsed="0.000325"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:21.824355" elapsed="0.000546"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:21.823921" elapsed="0.001002"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:21.831642" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc0d6520&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:21.829437" elapsed="0.002233"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:21.832310" elapsed="0.000331"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:21.831877" elapsed="0.000820"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:21.833259" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:21.832900" elapsed="0.000388"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:21.833481" elapsed="0.000161"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:21.833693" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc377390&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:21.829020" elapsed="0.004795"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:21.865242" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc0d44f0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:21.862957" elapsed="0.002313"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:21.865469" elapsed="0.000436"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:21.866441" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:21.866123" elapsed="0.000347"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:21.866658" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:21.869208" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:21.867008" elapsed="0.002248"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:21.869301" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:21.862469" elapsed="0.006955"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:21.869620" elapsed="0.000184"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:21.869853" elapsed="0.000026"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-05-25T01:55:21.823639" elapsed="0.046331"/>
</kw>
<kw name="Set &quot;${flow}&quot; &quot;id&quot; With &quot;${flow_id}&quot;" owner="FlowLib" source_name="Set &quot;${flow}&quot; &quot;${property}&quot; With &quot;${property_val}&quot;">
<if>
<branch type="IF" condition="&quot;table_id&quot; != &quot;${property}&quot; and &quot;cookie_mask&quot; != &quot;${property}&quot;">
<kw name="Replace String" owner="String">
<msg time="2026-05-25T01:55:21.874955" level="INFO">${property} = id</msg>
<var>${property}</var>
<arg>${property}</arg>
<arg>_</arg>
<arg>-</arg>
<doc>Replaces ``search_for`` in the given ``string`` with ``replace_with``.</doc>
<status status="PASS" start="2026-05-25T01:55:21.874738" elapsed="0.000243"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:21.874451" elapsed="0.000572"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${property}</var>
<arg>${property}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:21.875249" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:21.875048" elapsed="0.000297"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:21.874432" elapsed="0.000935"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:21.882218" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc0d49f0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:21.880009" elapsed="0.002238"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:21.882835" elapsed="0.000312"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:21.882451" elapsed="0.000752"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:21.883710" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:21.883395" elapsed="0.000343"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:21.883928" elapsed="0.000174"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:21.884153" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc377390&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:21.879601" elapsed="0.004674"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:21.915716" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc0d55d0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:21.913525" elapsed="0.002219"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:21.915938" elapsed="0.000469"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:21.916930" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;161&lt;/id&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:21.916610" elapsed="0.000349"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:21.917167" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:21.919683" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;161&lt;/id&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:21.917519" elapsed="0.002212"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:21.919776" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:21.913027" elapsed="0.006872"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:21.920112" elapsed="0.000184"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:21.920356" elapsed="0.000028"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-05-25T01:55:21.874158" elapsed="0.046320"/>
</kw>
<kw name="Set &quot;${flow}&quot; &quot;priority&quot; With &quot;${priority}&quot;" owner="FlowLib" source_name="Set &quot;${flow}&quot; &quot;${property}&quot; With &quot;${property_val}&quot;">
<if>
<branch type="IF" condition="&quot;table_id&quot; != &quot;${property}&quot; and &quot;cookie_mask&quot; != &quot;${property}&quot;">
<kw name="Replace String" owner="String">
<msg time="2026-05-25T01:55:21.925481" level="INFO">${property} = priority</msg>
<var>${property}</var>
<arg>${property}</arg>
<arg>_</arg>
<arg>-</arg>
<doc>Replaces ``search_for`` in the given ``string`` with ``replace_with``.</doc>
<status status="PASS" start="2026-05-25T01:55:21.925267" elapsed="0.000241"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:21.924962" elapsed="0.000588"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${property}</var>
<arg>${property}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:21.925760" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:21.925575" elapsed="0.000241"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:21.924944" elapsed="0.000892"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:21.932481" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfe49620&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:21.930295" elapsed="0.002215"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:21.933110" elapsed="0.000296"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:21.932714" elapsed="0.000746"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:21.933970" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;161&lt;/id&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:21.933656" elapsed="0.000378"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:21.934245" elapsed="0.000160"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:21.934455" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc377390&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:21.929881" elapsed="0.004695"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:21.966243" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfe4bb50&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:21.964008" elapsed="0.002264"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:21.966467" elapsed="0.000429"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:21.967437" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;161&lt;/id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:21.967114" elapsed="0.000353"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:21.967657" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:21.970206" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;161&lt;/id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:21.968012" elapsed="0.002242"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:21.970299" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:21.963521" elapsed="0.006901"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:21.970619" elapsed="0.000181"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:21.970848" elapsed="0.000027"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-05-25T01:55:21.924671" elapsed="0.046297"/>
</kw>
<kw name="Clear Flow Actions" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:21.977970" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc0d55d0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:21.975789" elapsed="0.002210"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:21.978603" elapsed="0.000329"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:21.978220" elapsed="0.000767"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:21.979517" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;161&lt;/id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:21.979195" elapsed="0.000351"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:21.979733" elapsed="0.000157"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:21.979941" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>instructions/instruction</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc377390&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:21.975410" elapsed="0.004651"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:21.980125" elapsed="0.000026"/>
</return>
<arg>${flow}</arg>
<doc>Will clean out any existing flow actions in the given &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object</doc>
<status status="PASS" start="2026-05-25T01:55:21.971199" elapsed="0.009042"/>
</kw>
<kw name="Set Flow Output Action" owner="FlowLib">
<kw name="Set Flow Action" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:21.989770" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc3bd170&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:21.987432" elapsed="0.002366"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:21.990415" elapsed="0.000295"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:21.990011" elapsed="0.000754"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:21.991344" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;161&lt;/id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:21.991001" elapsed="0.000372"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:21.991565" elapsed="0.000160"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:21.991775" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>instruction</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc377390&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:21.987041" elapsed="0.004853"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:22.025143" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfe4bd30&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:22.022929" elapsed="0.002242"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.025365" elapsed="0.000430"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:22.026344" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction /&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;161&lt;/id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.025999" elapsed="0.000375"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:22.026566" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.029139" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction /&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;161&lt;/id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:22.026917" elapsed="0.002272"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:22.029234" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>instruction</arg>
<arg>${EMPTY}</arg>
<arg>instructions</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:22.020730" elapsed="0.008628"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:22.060772" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfe4bb00&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:22.058559" elapsed="0.002241"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.060991" elapsed="0.000453"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:22.061970" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;161&lt;/id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.061643" elapsed="0.000357"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:22.062208" elapsed="0.000162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.064722" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;161&lt;/id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:22.062559" elapsed="0.002213"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:22.064815" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>order</arg>
<arg>${instruction_order}</arg>
<arg>instructions/instruction</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:22.058088" elapsed="0.006850"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:22.098163" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc0648b0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:22.095927" elapsed="0.002263"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.098383" elapsed="0.000442"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:22.099395" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions /&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;161&lt;/id&gt;&lt;priority&gt;1&lt;/priorit...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.099035" elapsed="0.000392"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:22.099664" elapsed="0.000164"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.102448" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions /&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;161&lt;/id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:22.100023" elapsed="0.002476"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:22.102551" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>apply-actions</arg>
<arg>${EMPTY}</arg>
<arg>instructions/instruction</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:22.093731" elapsed="0.008943"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:22.135850" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfe4a250&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:22.133665" elapsed="0.002250"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.136141" elapsed="0.000489"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:22.137214" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action /&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;161&lt;...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.136841" elapsed="0.000404"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:22.137437" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.139951" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action /&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;161&lt;/id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:22.137786" elapsed="0.002216"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:22.140046" elapsed="0.000055"/>
</return>
<arg>${flow}</arg>
<arg>action</arg>
<arg>${EMPTY}</arg>
<arg>instructions/instruction/apply-actions</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:22.131472" elapsed="0.008728"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:22.171557" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc064540&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:22.169365" elapsed="0.002220"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.171780" elapsed="0.000469"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:22.172819" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.172475" elapsed="0.000374"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:22.173040" elapsed="0.000178"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.175589" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;161&lt;/id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:22.173407" elapsed="0.002232"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:22.175686" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>order</arg>
<arg>${action_order}</arg>
<arg>instructions/instruction/apply-actions/action</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:22.168880" elapsed="0.006929"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:22.207298" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc066a70&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:22.205098" elapsed="0.002228"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.207521" elapsed="0.000487"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:22.208594" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action /&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.208231" elapsed="0.000394"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:22.208817" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.211488" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action /&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;161&lt;/id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:22.209185" elapsed="0.002355"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:22.211585" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>${action}</arg>
<arg>${action_val}</arg>
<arg>instructions/instruction/apply-actions/action</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:22.204585" elapsed="0.007125"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:22.211764" elapsed="0.000026"/>
</return>
<arg>${flow}</arg>
<arg>${instruction_order}</arg>
<arg>${action_order}</arg>
<arg>output-action</arg>
<doc>Will remove the instruction element first, then add the proper xml structure
to implement the action as given in the arguments</doc>
<status status="PASS" start="2026-05-25T01:55:21.980892" elapsed="0.230986"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:22.243438" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfe4ba60&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:22.241243" elapsed="0.002223"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.243658" elapsed="0.000483"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:22.244714" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/ou...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.244351" elapsed="0.000394"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:22.244935" elapsed="0.000175"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.247460" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;161&lt;/id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:22.245299" elapsed="0.002213"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:22.247557" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>output-node-connector</arg>
<arg>${output_port}</arg>
<arg>instructions/instruction/apply-actions/action/output-action</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:22.240760" elapsed="0.006922"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:22.247737" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>0</arg>
<arg>0</arg>
<arg>${output_port}</arg>
<status status="PASS" start="2026-05-25T01:55:21.980448" elapsed="0.267404"/>
</kw>
<kw name="Set Flow Ethernet Match" owner="FlowLib">
<kw name="Clear Flow Matches" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:22.259255" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc0653f0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:22.257039" elapsed="0.002244"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:22.259876" elapsed="0.000334"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:22.259489" elapsed="0.000776"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:22.260811" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/ou...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.260468" elapsed="0.000374"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:22.261080" elapsed="0.000165"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:22.261296" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>match/${match_element}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc377390&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:22.256632" elapsed="0.004784"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:22.261463" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>match/ethernet-match</arg>
<doc>Will clean out any existing flow matches in the given &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object</doc>
<status status="PASS" start="2026-05-25T01:55:22.252397" elapsed="0.009180"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:22.294632" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc0d6570&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:22.292419" elapsed="0.002241"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.294855" elapsed="0.000444"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:22.295848" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/ou...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.295504" elapsed="0.000375"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:22.296087" elapsed="0.000162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.298616" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match /&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;161&lt;/id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:22.296439" elapsed="0.002231"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:22.298714" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>ethernet-match</arg>
<arg>${EMPTY}</arg>
<arg>match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:22.290237" elapsed="0.008600"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:22.299268" level="INFO">${type} = 0x800</msg>
<var>${type}</var>
<arg>${match_value_dict}</arg>
<arg>type</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:22.299051" elapsed="0.000243"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:22.332293" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc066110&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:22.330092" elapsed="0.002229"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.332533" elapsed="0.000454"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:22.333553" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/ou...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.333203" elapsed="0.000381"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:22.333776" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.336308" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type /&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;161&lt;/id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:22.334147" elapsed="0.002216"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:22.336408" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>ethernet-type</arg>
<arg>${EMPTY}</arg>
<arg>match/ethernet-match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:22.327869" elapsed="0.008688"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:22.367815" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc067ce0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:22.365599" elapsed="0.002243"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.368090" elapsed="0.000482"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:22.369152" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/ou...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.368778" elapsed="0.000405"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:22.369375" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.372013" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;161&lt;/id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:22.369724" elapsed="0.002359"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:22.372130" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>type</arg>
<arg>${type}</arg>
<arg>match/ethernet-match/ethernet-type</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:22.365125" elapsed="0.007131"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:22.372657" level="INFO">${src} = 00:ab:cd:ef:01:23</msg>
<var>${src}</var>
<arg>${match_value_dict}</arg>
<arg>source</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:22.372462" elapsed="0.000220"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:22.405805" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc066bb0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:22.403570" elapsed="0.002263"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.406030" elapsed="0.000456"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:22.407044" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/ou...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.406689" elapsed="0.000400"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:22.407281" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.409796" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source /&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;161&lt;/id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:22.407629" elapsed="0.002223"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:22.409896" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>ethernet-source</arg>
<arg>${EMPTY}</arg>
<arg>match/ethernet-match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:22.401369" elapsed="0.008650"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:22.441471" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc067510&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:22.439248" elapsed="0.002250"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.441693" elapsed="0.000464"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:22.442719" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/ou...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.442361" elapsed="0.000389"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:22.442940" elapsed="0.000182"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.446293" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;161&lt;/id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:22.443315" elapsed="0.003113"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:22.446490" elapsed="0.000038"/>
</return>
<arg>${flow}</arg>
<arg>address</arg>
<arg>${src}</arg>
<arg>match/ethernet-match/ethernet-source</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:22.438767" elapsed="0.007859"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:22.447051" level="INFO">${dst} = ff:ff:ff:ff:ff:ff</msg>
<var>${dst}</var>
<arg>${match_value_dict}</arg>
<arg>destination</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:22.446855" elapsed="0.000237"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:22.480347" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc066520&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:22.478111" elapsed="0.002264"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.480579" elapsed="0.000434"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:22.481605" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/ou...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.481232" elapsed="0.000403"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:22.481828" elapsed="0.000165"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.485489" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination /&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;161&lt;/id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:22.482196" elapsed="0.003349"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:22.485590" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>ethernet-destination</arg>
<arg>${EMPTY}</arg>
<arg>match/ethernet-match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:22.475877" elapsed="0.009837"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:22.517409" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5accba95d0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:22.515175" elapsed="0.002262"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.517630" elapsed="0.000464"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:22.518663" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/ou...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.518298" elapsed="0.000395"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:22.518884" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.521427" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;161&lt;/id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:22.519248" elapsed="0.002241"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:22.521538" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>address</arg>
<arg>${dst}</arg>
<arg>match/ethernet-match/ethernet-destination</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:22.514689" elapsed="0.006973"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:22.521751" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>${ethernet_match_dict}</arg>
<doc>Specific keyword for adding an ethernet match rules where the elements are given
in key/value pairs inside the ${match_value_dict} argument. This keyword will also remove any
existing ethernet-match elements from the flow before adding</doc>
<status status="PASS" start="2026-05-25T01:55:22.251949" elapsed="0.269923"/>
</kw>
<kw name="Set Flow IPv4 Match" owner="FlowLib">
<kw name="Clear Flow Matches" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:22.533369" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc0d7100&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:22.531151" elapsed="0.002247"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:22.533993" elapsed="0.000337"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:22.533607" elapsed="0.000778"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:22.534939" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/ou...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.534577" elapsed="0.000392"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:22.535173" elapsed="0.000160"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:22.535382" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>match/${match_element}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc377390&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:22.530725" elapsed="0.004777"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:22.535548" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>match/ipv4-source</arg>
<doc>Will clean out any existing flow matches in the given &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object</doc>
<status status="PASS" start="2026-05-25T01:55:22.526359" elapsed="0.009301"/>
</kw>
<kw name="Clear Flow Matches" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:22.542886" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc0d5670&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:22.540677" elapsed="0.002237"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:22.543519" elapsed="0.000316"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:22.543136" elapsed="0.000755"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:22.544466" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/ou...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.544100" elapsed="0.000396"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:22.544708" elapsed="0.000160"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:22.544917" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>match/${match_element}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc377390&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:22.540243" elapsed="0.004800"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:22.545106" elapsed="0.000027"/>
</return>
<arg>${flow}</arg>
<arg>match/ipv4-destination</arg>
<doc>Will clean out any existing flow matches in the given &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object</doc>
<status status="PASS" start="2026-05-25T01:55:22.535872" elapsed="0.009350"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:22.545599" level="INFO">${src} = 11.3.0.0/16</msg>
<var>${src}</var>
<arg>${match_value_dict}</arg>
<arg>source</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:22.545417" elapsed="0.000207"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:22.576872" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc0d54e0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:22.574636" elapsed="0.002264"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.577109" elapsed="0.000431"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:22.578126" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/ou...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.577743" elapsed="0.000414"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:22.578348" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.580879" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;161&lt;/id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:22.578699" elapsed="0.002279"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:22.581025" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>ipv4-source</arg>
<arg>${src}</arg>
<arg>match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:22.574166" elapsed="0.007002"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:22.581565" level="INFO">${dst} = 99.0.0.0/8</msg>
<var>${dst}</var>
<arg>${match_value_dict}</arg>
<arg>destination</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:22.581372" elapsed="0.000218"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:22.612968" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc0d6890&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:22.610733" elapsed="0.002263"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.613205" elapsed="0.000428"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:22.614225" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/ou...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:22.613836" elapsed="0.000419"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:22.614445" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.617123" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;161&lt;/id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:22.614791" elapsed="0.002393"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:22.617230" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>ipv4-destination</arg>
<arg>${dst}</arg>
<arg>match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc377390&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:22.610269" elapsed="0.007087"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:22.617410" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>${ipv4_match_dict}</arg>
<doc>Specific keyword for adding an ipv4 match rules where the elements are given
in key/value pairs inside the ${match_value_dict} argument. This keyword will also remove any
existing ipv4 match elements from the flow before adding</doc>
<status status="PASS" start="2026-05-25T01:55:22.525914" elapsed="0.091610"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.619865" level="INFO">Flow XML is &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;161&lt;/id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>Flow XML is ${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:22.617713" elapsed="0.002211"/>
</kw>
<kw name="Call Method" owner="BuiltIn">
<arg>${test_switch}</arg>
<arg>create_flow_match_elements</arg>
<arg>${flow.xml}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-05-25T01:55:22.620131" elapsed="0.002296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.624660" level="INFO">['dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=IN_PORT', 'table=200']</msg>
<arg>${test_switch.flow_validations}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:22.622624" elapsed="0.002083"/>
</kw>
<kw name="Get Switch Datapath ID" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:22.627764" elapsed="0.002035"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:22.625664" elapsed="0.004173"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.625642" elapsed="0.004222"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:22.631986" elapsed="0.002285"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:22.629920" elapsed="0.004424"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.629903" elapsed="0.004469"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:22.636507" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:22.634428" elapsed="0.002135"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.634412" elapsed="0.002175"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:22.638748" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:22.636666" elapsed="0.002140"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.636649" elapsed="0.002181"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:22.625423" elapsed="0.013453"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:22.641441" elapsed="0.000143"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:22.639358" elapsed="0.002260"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.639341" elapsed="0.002302"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:22.643777" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:22.641696" elapsed="0.002132"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.641679" elapsed="0.002172"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:22.639124" elapsed="0.004773"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:22.648417" level="INFO">Executing command '/sbin/ifconfig s1 | grep -o -E "([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}"'.</msg>
<msg time="2026-05-25T01:55:22.661707" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:22.661839" level="INFO">${output} = be:c0:62:38:a2:47</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:22.648280" elapsed="0.013593"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:22.646208" elapsed="0.015719"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:22.662259" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:22.661962" elapsed="0.000378"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.646190" elapsed="0.016180"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:22.665408" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:22.662446" elapsed="0.003043"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.666211" level="INFO">${output} = be:c0:62:38:a2:47</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:22.665775" elapsed="0.000473"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:22.665522" elapsed="0.000776"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.662424" elapsed="0.003904"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:22.666375" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:55:22.666625" level="INFO">${switch.datapath_id_output_string} = be:c0:62:38:a2:47</msg>
<var>${switch.datapath_id_output_string}</var>
<arg>${switch}</arg>
<arg>${switch.datapath_id_output_command}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:22.644209" elapsed="0.022452"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.669857" level="INFO">be:c0:62:38:a2:47</msg>
<arg>${switch.datapath_id_output_string}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:22.666930" elapsed="0.002990"/>
</kw>
<kw name="Call Method" owner="BuiltIn">
<arg>${switch}</arg>
<arg>update_datapath_id</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-05-25T01:55:22.670207" elapsed="0.000389"/>
</kw>
<return>
<value>${switch.datapath_id}</value>
<status status="PASS" start="2026-05-25T01:55:22.670663" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:55:22.673542" level="INFO">${dpid_id} = 209733490876999</msg>
<var>${dpid_id}</var>
<arg>${test_switch}</arg>
<doc>Using the connection index for the given switch, will execute the command string
"datapath_id_output_command" which will store the output in switch.datapath_id_output_string.
The switch object method "update_datapath_id" is called which is assumed to place the ODL
friendly (decimal) version of the datapath id in to switch.datapath_id and the value is also
returned from this keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:22.624929" elapsed="0.048640"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Add Flow To Controller And Verify" owner="FlowLib">
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:22.697877" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=161 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=161 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Content-Length': '665', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;161&lt;/id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:55:22.697978" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=161 
 status=201, reason=Created 
 headers={'Set-Cookie': 'JSESSIONID=node017ncy2bg6j4jtalpiszt0cnfu11.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 24-May-2026 01:55:22 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:22.698123" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>headers=${HEADERS_XML}</arg>
<arg>data=${flow_body}</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:22.680565" elapsed="0.017586"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.700871" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:22.698361" elapsed="0.002555"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:22.708106" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=161?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=161?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node017ncy2bg6j4jtalpiszt0cnfu11.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:22.709263" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=161?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '664'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;161&lt;/id&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:55:22.709431" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${ACCEPT_XML}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:22.701254" elapsed="0.008214"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.712961" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;161&lt;/id&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;priority&gt;1&lt;/priority&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;INPORT&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:22.709752" elapsed="0.003288"/>
</kw>
<kw name="Compare Xml" owner="Common">
<arg>${flow_body}</arg>
<arg>${resp.text}</arg>
<doc>compare the two XML files to see if they contain the same data
but could be if different order.
It just split the xml in to lines and just check the line is in
the other file</doc>
<status status="PASS" start="2026-05-25T01:55:22.713331" elapsed="0.003049"/>
</kw>
<arg>${flow.xml}</arg>
<arg>openflow%3A${dpid_id}</arg>
<arg>${flow.table_id}</arg>
<arg>${flow.id}</arg>
<doc>Push flow through REST-API and verify in data-store</doc>
<status status="PASS" start="2026-05-25T01:55:22.674326" elapsed="0.042142"/>
</kw>
<arg>3s</arg>
<arg>1s</arg>
<arg>Add Flow To Controller And Verify</arg>
<arg>${flow.xml}</arg>
<arg>openflow%3A${dpid_id}</arg>
<arg>${flow.table_id}</arg>
<arg>${flow.id}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:22.673780" elapsed="0.042765"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Validate Switch Output" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:22.732393" elapsed="0.002043"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:22.730142" elapsed="0.004333"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.730120" elapsed="0.004382"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:22.736628" elapsed="0.002205"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:22.734556" elapsed="0.004317"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.734540" elapsed="0.004358"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:22.741032" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:22.738953" elapsed="0.002150"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.738937" elapsed="0.002191"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:22.743243" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:22.741182" elapsed="0.002118"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.741166" elapsed="0.002158"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:22.729888" elapsed="0.013483"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:22.745976" elapsed="0.000133"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:22.743886" elapsed="0.002256"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.743868" elapsed="0.002299"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:22.748314" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:22.746221" elapsed="0.002145"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.746205" elapsed="0.002184"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:22.743647" elapsed="0.004788"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:22.751227" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-05-25T01:55:22.763932" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:22.764178" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:22.751095" elapsed="0.013149"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:22.748989" elapsed="0.015340"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:22.764838" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:22.764386" elapsed="0.000580"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.748971" elapsed="0.016042"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:22.769598" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:22.765170" elapsed="0.004509"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.770398" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:22.769966" elapsed="0.000473"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:22.769712" elapsed="0.000777"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.765131" elapsed="0.005388"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:22.770566" elapsed="0.000041"/>
</return>
<msg time="2026-05-25T01:55:22.770772" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${tmp}</var>
<arg>${switch}</arg>
<arg>/sbin/ifconfig</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:22.748728" elapsed="0.022083"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.771435" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:2f:dc:c0  txqueuelen 1000  (Ethernet)
        RX packets 7356  bytes 20299347 (20.2 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4759  bytes 1332489 (1.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 274  bytes 24208 (24.2 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 274  bytes 24208 (24.2 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

s1: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500
        inet6 fe80::bcc0:62ff:fe38:a247  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether be:c0:62:38:a2:47  txqueuelen 1000  (Ethernet)
        RX packets 5  bytes 550 (550.0 B)
        RX errors 0  dropped 5  overruns 0  frame 0
        TX packets 8  bytes 656 (656.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:22.771094" elapsed="0.000419"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:22.775402" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-05-25T01:55:22.823126" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:22.823338" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=5.168s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.117s, table=200, n_packet...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:22.775226" elapsed="0.048170"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:22.772302" elapsed="0.051179"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:22.823959" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:22.823538" elapsed="0.000576"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.772277" elapsed="0.051886"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:22.829010" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:22.824290" elapsed="0.004880"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.830314" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=5.168s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.117s, table=200, n_packet...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:22.829629" elapsed="0.000817"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:22.829224" elapsed="0.001310"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.824252" elapsed="0.006330"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:22.830660" elapsed="0.000068"/>
</return>
<msg time="2026-05-25T01:55:22.830998" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=5.168s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.117s, table=200, n_packet...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:22.771900" elapsed="0.059156"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.832058" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=5.168s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.117s, table=200, n_packets=0, n_bytes=0, priority=1,ip,dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=IN_PORT</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:22.831514" elapsed="0.000681"/>
</kw>
<for flavor="IN">
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:22.833350" elapsed="0.000526"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:22.832944" elapsed="0.000973"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.832909" elapsed="0.001033"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:22.834282" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:22.833996" elapsed="0.000345"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.833980" elapsed="0.000384"/>
</if>
<var name="${str}">dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=IN_PORT</var>
<status status="PASS" start="2026-05-25T01:55:22.832838" elapsed="0.001548"/>
</iter>
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:22.834829" elapsed="0.000379"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:22.834578" elapsed="0.000671"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.834563" elapsed="0.000711"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:22.835580" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:22.835326" elapsed="0.000311"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.835310" elapsed="0.000349"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-05-25T01:55:22.834535" elapsed="0.001147"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-05-25T01:55:22.832326" elapsed="0.003384"/>
</for>
<arg>${test_switch}</arg>
<arg>${test_switch.dump_all_flows}</arg>
<arg>${test_switch.flow_validations}</arg>
<doc>A generic keyword that will execute one command on the switch, and check for each string in the @{validations} argument.  There is a boolean flag ${should_exist} that can be used to check that the validations are or are NOT in the output of the command executed.</doc>
<status status="PASS" start="2026-05-25T01:55:22.725598" elapsed="0.110166"/>
</kw>
<arg>3s</arg>
<arg>1s</arg>
<arg>Validate Switch Output</arg>
<arg>${test_switch}</arg>
<arg>${test_switch.dump_all_flows}</arg>
<arg>${test_switch.flow_validations}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:22.716868" elapsed="0.118949"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Remove Flow From Controller And Verify" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:22.847921" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=161 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=161 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node017ncy2bg6j4jtalpiszt0cnfu11.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:22.847967" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=161 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:22.848090" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:22.841113" elapsed="0.007006"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.850545" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:22.848324" elapsed="0.002264"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:22.855162" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=161?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=161?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node017ncy2bg6j4jtalpiszt0cnfu11.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:22.855439" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=161?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/yang-data+json', 'Content-Length': '242'} 
 body={
  "errors": {
    "error": [
      {
        "error-tag": "data-missing",
        "error-message": "Request could not be completed because the relevant data model content does not exist",
        "error-type": "protocol"
      }
    ]
  }
} 
 </msg>
<msg time="2026-05-25T01:55:22.855688" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:22.850750" elapsed="0.005005"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code} == 404 or ${resp.status_code} == 409">
<return>
<status status="PASS" start="2026-05-25T01:55:22.865607" elapsed="0.000030"/>
</return>
<status status="PASS" start="2026-05-25T01:55:22.856035" elapsed="0.009633"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.855982" elapsed="0.009711"/>
</if>
<kw name="Log" owner="BuiltIn">
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:22.865852" elapsed="0.000024"/>
</kw>
<kw name="Fail" owner="BuiltIn">
<arg>The request failed with code ${resp.status_code}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:22.866029" elapsed="0.000021"/>
</kw>
<arg>openflow%3A${dpid_id}</arg>
<arg>${flow.table_id}</arg>
<arg>${flow.id}</arg>
<doc>Remove flow and verify</doc>
<status status="PASS" start="2026-05-25T01:55:22.836598" elapsed="0.029529"/>
</kw>
<arg>3s</arg>
<arg>1s</arg>
<arg>Remove Flow From Controller And Verify</arg>
<arg>openflow%3A${dpid_id}</arg>
<arg>${flow.table_id}</arg>
<arg>${flow.id}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:22.836033" elapsed="0.030148"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Validate Switch Output" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:22.880229" elapsed="0.002020"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:22.878164" elapsed="0.004124"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.878144" elapsed="0.004169"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:22.884427" elapsed="0.002199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:22.882368" elapsed="0.004298"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.882351" elapsed="0.004339"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:22.888812" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:22.886745" elapsed="0.002123"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.886728" elapsed="0.002163"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:22.891004" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:22.888945" elapsed="0.002116"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.888930" elapsed="0.002169"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:22.877911" elapsed="0.013236"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:22.893721" elapsed="0.000121"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:22.891622" elapsed="0.002254"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.891603" elapsed="0.002298"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:22.896046" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:22.893956" elapsed="0.002158"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.893938" elapsed="0.002200"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:22.891385" elapsed="0.004800"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:22.899117" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-05-25T01:55:22.911407" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:22.911614" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:22.898967" elapsed="0.012707"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:22.896727" elapsed="0.015030"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:22.912285" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:22.911812" elapsed="0.000601"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.896708" elapsed="0.015751"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:22.917385" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:22.912581" elapsed="0.004934"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.918680" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:22.917967" elapsed="0.000778"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:22.917567" elapsed="0.001258"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.912545" elapsed="0.006328"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:22.918950" elapsed="0.000068"/>
</return>
<msg time="2026-05-25T01:55:22.919315" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${tmp}</var>
<arg>${switch}</arg>
<arg>/sbin/ifconfig</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:22.896463" elapsed="0.023007"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.920489" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:2f:dc:c0  txqueuelen 1000  (Ethernet)
        RX packets 7367  bytes 20300745 (20.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4774  bytes 1335911 (1.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 274  bytes 24208 (24.2 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 274  bytes 24208 (24.2 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

s1: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500
        inet6 fe80::bcc0:62ff:fe38:a247  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether be:c0:62:38:a2:47  txqueuelen 1000  (Ethernet)
        RX packets 5  bytes 550 (550.0 B)
        RX errors 0  dropped 5  overruns 0  frame 0
        TX packets 8  bytes 656 (656.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:22.919907" elapsed="0.000707"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:22.925116" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-05-25T01:55:22.970750" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:22.970977" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=5.315s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:22.924903" elapsed="0.046136"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:22.921608" elapsed="0.049569"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:22.971704" elapsed="0.000057"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:22.971241" elapsed="0.000605"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.921581" elapsed="0.050314"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:22.977168" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:22.972028" elapsed="0.005225"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.977950" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=5.315s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:22.977540" elapsed="0.000448"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:22.977286" elapsed="0.000753"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.971988" elapsed="0.006100"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:22.978140" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:55:22.978347" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=5.315s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:22.921197" elapsed="0.057186"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.978989" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=5.315s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:22.978648" elapsed="0.000403"/>
</kw>
<for flavor="IN">
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:22.979866" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:22.979504" elapsed="0.000443"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.979483" elapsed="0.000496"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:22.980422" elapsed="0.000486"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:22.980052" elapsed="0.000913"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.980030" elapsed="0.000968"/>
</if>
<var name="${str}">dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=IN_PORT</var>
<status status="PASS" start="2026-05-25T01:55:22.979440" elapsed="0.001589"/>
</iter>
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:22.981676" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:22.981319" elapsed="0.000439"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.981299" elapsed="0.000490"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:22.982229" elapsed="0.000439"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:22.981862" elapsed="0.000861"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.981841" elapsed="0.000915"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-05-25T01:55:22.981258" elapsed="0.001529"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-05-25T01:55:22.979154" elapsed="0.003672"/>
</for>
<arg>${test_switch}</arg>
<arg>${test_switch.dump_all_flows}</arg>
<arg>${test_switch.flow_validations}</arg>
<arg>false</arg>
<doc>A generic keyword that will execute one command on the switch, and check for each string in the @{validations} argument.  There is a boolean flag ${should_exist} that can be used to check that the validations are or are NOT in the output of the command executed.</doc>
<status status="PASS" start="2026-05-25T01:55:22.873619" elapsed="0.109280"/>
</kw>
<arg>3s</arg>
<arg>1s</arg>
<arg>Validate Switch Output</arg>
<arg>${test_switch}</arg>
<arg>${test_switch.dump_all_flows}</arg>
<arg>${test_switch.flow_validations}</arg>
<arg>false</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:22.866393" elapsed="0.116644"/>
</kw>
<arg>${TEST_NAME}</arg>
<arg>200</arg>
<arg>161</arg>
<arg>1</arg>
<status status="PASS" start="2026-05-25T01:55:21.816651" elapsed="1.166505"/>
</kw>
<doc>OF1.3: OFPP_INPORT = 0xfffffff8, /* Send the packet out the input port. This
reserved port must be explicitly used
in order to send back out of the input
port. */
</doc>
<tag>inport</tag>
<status status="PASS" start="2026-05-25T01:55:21.815801" elapsed="1.167531"/>
</test>
<test id="s1-s4-s2-t2" name="TABLE" line="59">
<kw name="Create And Remove Flow">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.986018" level="INFO">${ethernet_match_dict} = {'type': '0x800', 'destination': 'ff:ff:ff:ff:ff:ff', 'source': '00:ab:cd:ef:01:23'}</msg>
<var>${ethernet_match_dict}</var>
<arg>type=${eth_type}</arg>
<arg>destination=${eth_dst}</arg>
<arg>source=${eth_src}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:22.985356" elapsed="0.000700"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.986932" level="INFO">${ipv4_match_dict} = {'source': '11.3.0.0/16', 'destination': '99.0.0.0/8'}</msg>
<var>${ipv4_match_dict}</var>
<arg>source=${ipv4_src}</arg>
<arg>destination=${ipv4_dst}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:22.986369" elapsed="0.000604"/>
</kw>
<kw name="Create Inventory Flow" owner="FlowLib">
<kw name="Make Inventory Flow" owner="FlowLib">
<msg time="2026-05-25T01:55:22.987851" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7f5acc010590&gt;</msg>
<var>${flow}</var>
<doc>Robot Keyword to create and return an instance of the Flow
class.</doc>
<status status="PASS" start="2026-05-25T01:55:22.987680" elapsed="0.000208"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:22.987947" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:55:22.988173" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7f5acc010590&gt;</msg>
<var>${flow}</var>
<doc>Calls FlowLib.Make_Inventory_Flow function and initializes and sanitizes
the basic flow elements that can be given to flow:inventory</doc>
<status status="PASS" start="2026-05-25T01:55:22.987250" elapsed="0.000960"/>
</kw>
<kw name="Set &quot;${flow}&quot; &quot;table_id&quot; With &quot;${table_id}&quot;" owner="FlowLib" source_name="Set &quot;${flow}&quot; &quot;${property}&quot; With &quot;${property_val}&quot;">
<if>
<branch type="IF" condition="&quot;table_id&quot; != &quot;${property}&quot; and &quot;cookie_mask&quot; != &quot;${property}&quot;">
<kw name="Replace String" owner="String">
<var>${property}</var>
<arg>${property}</arg>
<arg>_</arg>
<arg>-</arg>
<doc>Replaces ``search_for`` in the given ``string`` with ``replace_with``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:22.993499" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:22.993204" elapsed="0.000360"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:22.994059" level="INFO">${property} = table_id</msg>
<var>${property}</var>
<arg>${property}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:22.993768" elapsed="0.000332"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:22.993587" elapsed="0.000551"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:22.993185" elapsed="0.000974"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:23.000863" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc241b70&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:22.998645" elapsed="0.002246"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.001511" elapsed="0.000306"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:23.001116" elapsed="0.000757"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:23.002427" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.002081" elapsed="0.000375"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:23.002649" elapsed="0.000160"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.002859" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc010590&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:22.998242" elapsed="0.004738"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:23.034358" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2414e0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.032134" elapsed="0.002252"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.034583" elapsed="0.000431"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:23.035549" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.035233" elapsed="0.000344"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:23.035765" elapsed="0.000157"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:23.038295" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:23.036128" elapsed="0.002215"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.038387" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:23.031617" elapsed="0.006892"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:23.038753" elapsed="0.000185"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.038988" elapsed="0.000027"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-05-25T01:55:22.992889" elapsed="0.046234"/>
</kw>
<kw name="Set &quot;${flow}&quot; &quot;id&quot; With &quot;${flow_id}&quot;" owner="FlowLib" source_name="Set &quot;${flow}&quot; &quot;${property}&quot; With &quot;${property_val}&quot;">
<if>
<branch type="IF" condition="&quot;table_id&quot; != &quot;${property}&quot; and &quot;cookie_mask&quot; != &quot;${property}&quot;">
<kw name="Replace String" owner="String">
<msg time="2026-05-25T01:55:23.044316" level="INFO">${property} = id</msg>
<var>${property}</var>
<arg>${property}</arg>
<arg>_</arg>
<arg>-</arg>
<doc>Replaces ``search_for`` in the given ``string`` with ``replace_with``.</doc>
<status status="PASS" start="2026-05-25T01:55:23.044092" elapsed="0.000251"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:23.043777" elapsed="0.000607"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${property}</var>
<arg>${property}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:23.044592" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:23.044409" elapsed="0.000238"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:23.043759" elapsed="0.000908"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:23.051487" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc240a90&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.049305" elapsed="0.002210"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.052114" elapsed="0.000296"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:23.051719" elapsed="0.000746"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:23.052990" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.052657" elapsed="0.000364"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:23.053226" elapsed="0.000160"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.053436" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc010590&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:23.048890" elapsed="0.004666"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:23.084923" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc241fd0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.082720" elapsed="0.002231"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.085160" elapsed="0.000432"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:23.086126" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;261&lt;/id&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.085793" elapsed="0.000363"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:23.086345" elapsed="0.000158"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:23.088884" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;261&lt;/id&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:23.086692" elapsed="0.002241"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.088978" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:23.082236" elapsed="0.006880"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:23.089316" elapsed="0.000191"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.089556" elapsed="0.000027"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-05-25T01:55:23.043483" elapsed="0.046189"/>
</kw>
<kw name="Set &quot;${flow}&quot; &quot;priority&quot; With &quot;${priority}&quot;" owner="FlowLib" source_name="Set &quot;${flow}&quot; &quot;${property}&quot; With &quot;${property_val}&quot;">
<if>
<branch type="IF" condition="&quot;table_id&quot; != &quot;${property}&quot; and &quot;cookie_mask&quot; != &quot;${property}&quot;">
<kw name="Replace String" owner="String">
<msg time="2026-05-25T01:55:23.094673" level="INFO">${property} = priority</msg>
<var>${property}</var>
<arg>${property}</arg>
<arg>_</arg>
<arg>-</arg>
<doc>Replaces ``search_for`` in the given ``string`` with ``replace_with``.</doc>
<status status="PASS" start="2026-05-25T01:55:23.094462" elapsed="0.000238"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:23.094174" elapsed="0.000603"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${property}</var>
<arg>${property}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:23.094991" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:23.094803" elapsed="0.000242"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:23.094156" elapsed="0.000924"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:23.101710" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc241d50&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.099539" elapsed="0.002199"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.102342" elapsed="0.000294"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:23.101940" elapsed="0.000750"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:23.103212" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;261&lt;/id&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.102881" elapsed="0.000360"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:23.103429" elapsed="0.000156"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.103635" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc010590&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:23.099141" elapsed="0.004614"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:23.135115" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc241c60&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.132921" elapsed="0.002223"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.135341" elapsed="0.000427"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:23.136309" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;261&lt;/id&gt;&lt;priority&gt;65535&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.135970" elapsed="0.000368"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:23.136529" elapsed="0.000158"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:23.139085" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;261&lt;/id&gt;&lt;priority&gt;65535&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:23.136901" elapsed="0.002236"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.139181" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:23.132419" elapsed="0.006885"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:23.139502" elapsed="0.000189"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.139740" elapsed="0.000026"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-05-25T01:55:23.093871" elapsed="0.045984"/>
</kw>
<kw name="Clear Flow Actions" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:23.146838" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2405e0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.144641" elapsed="0.002225"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.147463" elapsed="0.000302"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:23.147083" elapsed="0.000742"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:23.148365" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;261&lt;/id&gt;&lt;priority&gt;65535&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.148015" elapsed="0.000380"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:23.148582" elapsed="0.000156"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.148846" elapsed="0.000031"/>
</return>
<arg>${flow}</arg>
<arg>instructions/instruction</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc010590&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:23.144266" elapsed="0.004707"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.149020" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<doc>Will clean out any existing flow actions in the given &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object</doc>
<status status="PASS" start="2026-05-25T01:55:23.140079" elapsed="0.009072"/>
</kw>
<kw name="Set Flow Output Action" owner="FlowLib">
<kw name="Set Flow Action" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:23.158615" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc240db0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.156292" elapsed="0.002351"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.159247" elapsed="0.000296"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:23.158847" elapsed="0.000751"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:23.160126" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;261&lt;/id&gt;&lt;priority&gt;65535&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.159789" elapsed="0.000367"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:23.160344" elapsed="0.000159"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.160552" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>instruction</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc010590&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:23.155906" elapsed="0.004766"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:23.194134" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc242750&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.191788" elapsed="0.002374"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.194358" elapsed="0.000426"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:23.195333" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction /&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;261&lt;/id&gt;&lt;priority&gt;65535&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.194986" elapsed="0.000377"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:23.195553" elapsed="0.000158"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:23.198086" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction /&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;261&lt;/id&gt;&lt;priority&gt;65535&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:23.195902" elapsed="0.002235"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.198182" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>instruction</arg>
<arg>${EMPTY}</arg>
<arg>instructions</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:23.189594" elapsed="0.008711"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:23.230017" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc242d40&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.227809" elapsed="0.002240"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.230259" elapsed="0.000436"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:23.231241" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;261&lt;/id&gt;&lt;priority&gt;65535&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.230896" elapsed="0.000376"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:23.231462" elapsed="0.000158"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:23.233998" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;261&lt;/id&gt;&lt;priority&gt;65535&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:23.231811" elapsed="0.002235"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.234105" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>order</arg>
<arg>${instruction_order}</arg>
<arg>instructions/instruction</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:23.227345" elapsed="0.006923"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:23.267348" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc240720&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.265163" elapsed="0.002213"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.267568" elapsed="0.000431"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:23.268548" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions /&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;261&lt;/id&gt;&lt;priority&gt;65535&lt;/pri...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.268216" elapsed="0.000362"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:23.268768" elapsed="0.000195"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:23.271469" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions /&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;261&lt;/id&gt;&lt;priority&gt;65535&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:23.269168" elapsed="0.002352"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.271565" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>apply-actions</arg>
<arg>${EMPTY}</arg>
<arg>instructions/instruction</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:23.262951" elapsed="0.008736"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:23.304934" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2438d0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.302730" elapsed="0.002231"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.305167" elapsed="0.000439"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:23.306157" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action /&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;261&lt;...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.305807" elapsed="0.000381"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:23.306379" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:23.308900" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action /&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;261&lt;/id&gt;&lt;priority&gt;65535&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:23.306728" elapsed="0.002223"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.309000" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>action</arg>
<arg>${EMPTY}</arg>
<arg>instructions/instruction/apply-actions</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:23.300516" elapsed="0.008623"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:23.340385" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc242570&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.338187" elapsed="0.002226"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.340605" elapsed="0.000458"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:23.341618" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.341280" elapsed="0.000368"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:23.341836" elapsed="0.000157"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:23.344391" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;261&lt;/id&gt;&lt;priority&gt;65535&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:23.342241" elapsed="0.002201"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.344486" elapsed="0.000034"/>
</return>
<arg>${flow}</arg>
<arg>order</arg>
<arg>${action_order}</arg>
<arg>instructions/instruction/apply-actions/action</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:23.337712" elapsed="0.006902"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:23.375928" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc242480&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.373703" elapsed="0.002253"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.376169" elapsed="0.000433"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:23.377173" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action /&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.376802" elapsed="0.000402"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:23.377393" elapsed="0.000169"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:23.381033" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action /&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;261&lt;/id&gt;&lt;priority&gt;65535&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:23.377751" elapsed="0.003350"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.381147" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>${action}</arg>
<arg>${action_val}</arg>
<arg>instructions/instruction/apply-actions/action</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:23.373217" elapsed="0.008055"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.381325" elapsed="0.000026"/>
</return>
<arg>${flow}</arg>
<arg>${instruction_order}</arg>
<arg>${action_order}</arg>
<arg>output-action</arg>
<doc>Will remove the instruction element first, then add the proper xml structure
to implement the action as given in the arguments</doc>
<status status="PASS" start="2026-05-25T01:55:23.149772" elapsed="0.231668"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:23.412927" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2425c0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.410712" elapsed="0.002243"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.413169" elapsed="0.000435"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:23.414165" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.413804" elapsed="0.000391"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:23.414385" elapsed="0.000164"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:23.416927" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;261&lt;/id&gt;&lt;priority&gt;65535&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:23.414738" elapsed="0.002242"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.417024" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>output-node-connector</arg>
<arg>${output_port}</arg>
<arg>instructions/instruction/apply-actions/action/output-action</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:23.410243" elapsed="0.006921"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.417218" elapsed="0.000026"/>
</return>
<arg>${flow}</arg>
<arg>0</arg>
<arg>0</arg>
<arg>${output_port}</arg>
<status status="PASS" start="2026-05-25T01:55:23.149331" elapsed="0.268037"/>
</kw>
<kw name="Set Flow Ethernet Match" owner="FlowLib">
<kw name="Clear Flow Matches" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:23.428738" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfe4a1b0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.426545" elapsed="0.002220"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.429393" elapsed="0.000305"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:23.428990" elapsed="0.000762"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:23.430304" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.429945" elapsed="0.000389"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:23.430523" elapsed="0.000158"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.430729" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>match/${match_element}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc010590&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:23.426132" elapsed="0.004717"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.430895" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>match/ethernet-match</arg>
<doc>Will clean out any existing flow matches in the given &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object</doc>
<status status="PASS" start="2026-05-25T01:55:23.421883" elapsed="0.009124"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:23.464102" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc0672e0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.461881" elapsed="0.002250"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.464325" elapsed="0.000426"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:23.465344" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.464978" elapsed="0.000396"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:23.465565" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:23.468063" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match /&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;261&lt;/id&gt;&lt;priority&gt;65535&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:23.465915" elapsed="0.002215"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.468174" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>ethernet-match</arg>
<arg>${EMPTY}</arg>
<arg>match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:23.459548" elapsed="0.008749"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:23.468702" level="INFO">${type} = 0x800</msg>
<var>${type}</var>
<arg>${match_value_dict}</arg>
<arg>type</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:23.468502" elapsed="0.000226"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:23.501874" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5ace4f4ef0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.499659" elapsed="0.002243"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.502141" elapsed="0.000439"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:23.503150" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.502783" elapsed="0.000397"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:23.503371" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:23.505902" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type /&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;261&lt;/id&gt;&lt;priority&gt;65535&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:23.503719" elapsed="0.002274"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.506039" elapsed="0.000043"/>
</return>
<arg>${flow}</arg>
<arg>ethernet-type</arg>
<arg>${EMPTY}</arg>
<arg>match/ethernet-match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:23.497483" elapsed="0.008698"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:23.537766" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc091490&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.535532" elapsed="0.002262"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.537987" elapsed="0.000454"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:23.538996" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.538643" elapsed="0.000383"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:23.539235" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:23.541937" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;261&lt;/id&gt;&lt;priority&gt;65535&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:23.539584" elapsed="0.002410"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.542042" elapsed="0.000044"/>
</return>
<arg>${flow}</arg>
<arg>type</arg>
<arg>${type}</arg>
<arg>match/ethernet-match/ethernet-type</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:23.535053" elapsed="0.007131"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:23.542574" level="INFO">${src} = 00:ab:cd:ef:01:23</msg>
<var>${src}</var>
<arg>${match_value_dict}</arg>
<arg>source</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:23.542389" elapsed="0.000210"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:23.575728" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc240860&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.573487" elapsed="0.002268"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.575950" elapsed="0.000451"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:23.576982" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.576604" elapsed="0.000412"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:23.577232" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:23.579784" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source /&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;261&lt;/id&gt;&lt;priority&gt;65535&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:23.577582" elapsed="0.002257"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.579883" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>ethernet-source</arg>
<arg>${EMPTY}</arg>
<arg>match/ethernet-match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:23.571286" elapsed="0.008726"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:23.611709" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2428e0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.609488" elapsed="0.002249"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.611931" elapsed="0.000457"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:23.612951" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.612592" elapsed="0.000402"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:23.613202" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:23.615754" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;261&lt;/id&gt;&lt;priority&gt;65535&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:23.613553" elapsed="0.002255"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.615853" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>address</arg>
<arg>${src}</arg>
<arg>match/ethernet-match/ethernet-source</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:23.609000" elapsed="0.006977"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:23.616383" level="INFO">${dst} = ff:ff:ff:ff:ff:ff</msg>
<var>${dst}</var>
<arg>${match_value_dict}</arg>
<arg>destination</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:23.616198" elapsed="0.000211"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:23.649879" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2405e0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.647641" elapsed="0.002266"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.650123" elapsed="0.000435"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:23.651140" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.650762" elapsed="0.000409"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:23.651364" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:23.654058" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination /&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;261&lt;/id&gt;&lt;priority&gt;65535&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:23.651715" elapsed="0.002416"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.654177" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>ethernet-destination</arg>
<arg>${EMPTY}</arg>
<arg>match/ethernet-match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:23.645435" elapsed="0.008865"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:23.685801" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc0d6890&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.683554" elapsed="0.002275"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.686031" elapsed="0.000450"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:23.687095" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.686689" elapsed="0.000478"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:23.687399" elapsed="0.000177"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:23.689981" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;261&lt;/id&gt;&lt;priority&gt;65535&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:23.687768" elapsed="0.002271"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.690108" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>address</arg>
<arg>${dst}</arg>
<arg>match/ethernet-match/ethernet-destination</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:23.683087" elapsed="0.007147"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.690288" elapsed="0.000026"/>
</return>
<arg>${flow}</arg>
<arg>${ethernet_match_dict}</arg>
<doc>Specific keyword for adding an ethernet match rules where the elements are given
in key/value pairs inside the ${match_value_dict} argument. This keyword will also remove any
existing ethernet-match elements from the flow before adding</doc>
<status status="PASS" start="2026-05-25T01:55:23.421456" elapsed="0.268951"/>
</kw>
<kw name="Set Flow IPv4 Match" owner="FlowLib">
<kw name="Clear Flow Matches" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:23.701812" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2411c0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.699572" elapsed="0.002268"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.702467" elapsed="0.000303"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:23.702055" elapsed="0.000769"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:23.703397" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.703017" elapsed="0.000411"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:23.703619" elapsed="0.000159"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.703827" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>match/${match_element}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc010590&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:23.699163" elapsed="0.004784"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.703993" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>match/ipv4-source</arg>
<doc>Will clean out any existing flow matches in the given &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object</doc>
<status status="PASS" start="2026-05-25T01:55:23.694921" elapsed="0.009314"/>
</kw>
<kw name="Clear Flow Matches" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:23.711527" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc242570&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.709310" elapsed="0.002245"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.712161" elapsed="0.000307"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:23.711761" elapsed="0.000762"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:23.713124" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.712714" elapsed="0.000442"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:23.713348" elapsed="0.000159"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.713556" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>match/${match_element}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc010590&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:23.708856" elapsed="0.004820"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.713723" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>match/ipv4-destination</arg>
<doc>Will clean out any existing flow matches in the given &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object</doc>
<status status="PASS" start="2026-05-25T01:55:23.704454" elapsed="0.009422"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:23.714272" level="INFO">${src} = 11.3.0.0/16</msg>
<var>${src}</var>
<arg>${match_value_dict}</arg>
<arg>source</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:23.714086" elapsed="0.000212"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:23.745740" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc243f10&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.743485" elapsed="0.002283"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.745964" elapsed="0.000475"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:23.747021" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.746642" elapsed="0.000408"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:23.747257" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:23.749798" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;261&lt;/id&gt;&lt;priority&gt;65535&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:23.747613" elapsed="0.002241"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.749899" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>ipv4-source</arg>
<arg>${src}</arg>
<arg>match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:23.743005" elapsed="0.007018"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:23.750445" level="INFO">${dst} = 99.0.0.0/8</msg>
<var>${dst}</var>
<arg>${match_value_dict}</arg>
<arg>destination</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:23.750254" elapsed="0.000217"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:23.782023" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc243740&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:23.779788" elapsed="0.002263"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.782262" elapsed="0.000433"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:23.783295" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:23.782899" elapsed="0.000426"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:23.783517" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:23.786216" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;261&lt;/id&gt;&lt;priority&gt;65535&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:23.783871" elapsed="0.002404"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.786320" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>ipv4-destination</arg>
<arg>${dst}</arg>
<arg>match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc010590&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:23.779323" elapsed="0.007122"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:23.786499" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>${ipv4_match_dict}</arg>
<doc>Specific keyword for adding an ipv4 match rules where the elements are given
in key/value pairs inside the ${match_value_dict} argument. This keyword will also remove any
existing ipv4 match elements from the flow before adding</doc>
<status status="PASS" start="2026-05-25T01:55:23.694492" elapsed="0.092121"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:23.789006" level="INFO">Flow XML is &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;261&lt;/id&gt;&lt;priority&gt;65535&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>Flow XML is ${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:23.786843" elapsed="0.002261"/>
</kw>
<kw name="Call Method" owner="BuiltIn">
<arg>${test_switch}</arg>
<arg>create_flow_match_elements</arg>
<arg>${flow.xml}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-05-25T01:55:23.789301" elapsed="0.002272"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:23.793817" level="INFO">['dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=TABLE', 'table=200']</msg>
<arg>${test_switch.flow_validations}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:23.791773" elapsed="0.002091"/>
</kw>
<kw name="Get Switch Datapath ID" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:23.796911" elapsed="0.002036"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:23.794811" elapsed="0.004174"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:23.794789" elapsed="0.004222"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:23.801167" elapsed="0.002218"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:23.799079" elapsed="0.004345"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:23.799049" elapsed="0.004400"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:23.805616" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:23.803504" elapsed="0.002167"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:23.803487" elapsed="0.002208"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:23.807819" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:23.805749" elapsed="0.002128"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:23.805734" elapsed="0.002167"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:23.794571" elapsed="0.013376"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:23.810617" elapsed="0.000127"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:23.808432" elapsed="0.002345"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:23.808414" elapsed="0.002387"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:23.812927" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:23.810855" elapsed="0.002124"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:23.810839" elapsed="0.002163"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:23.808197" elapsed="0.004893"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:23.817578" level="INFO">Executing command '/sbin/ifconfig s1 | grep -o -E "([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}"'.</msg>
<msg time="2026-05-25T01:55:23.831372" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:23.831583" level="INFO">${output} = be:c0:62:38:a2:47</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:23.817446" elapsed="0.014192"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:23.815348" elapsed="0.016376"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:23.832255" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:23.831781" elapsed="0.000604"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:23.815330" elapsed="0.017101"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:23.837341" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:23.832553" elapsed="0.004920"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:23.838441" level="INFO">${output} = be:c0:62:38:a2:47</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:23.837931" elapsed="0.000547"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:23.837526" elapsed="0.001001"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:23.832518" elapsed="0.006039"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:23.838651" elapsed="0.000042"/>
</return>
<msg time="2026-05-25T01:55:23.838904" level="INFO">${switch.datapath_id_output_string} = be:c0:62:38:a2:47</msg>
<var>${switch.datapath_id_output_string}</var>
<arg>${switch}</arg>
<arg>${switch.datapath_id_output_command}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:23.813376" elapsed="0.025563"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:23.842215" level="INFO">be:c0:62:38:a2:47</msg>
<arg>${switch.datapath_id_output_string}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:23.839226" elapsed="0.003058"/>
</kw>
<kw name="Call Method" owner="BuiltIn">
<arg>${switch}</arg>
<arg>update_datapath_id</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-05-25T01:55:23.842553" elapsed="0.000386"/>
</kw>
<return>
<value>${switch.datapath_id}</value>
<status status="PASS" start="2026-05-25T01:55:23.843006" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:55:23.846094" level="INFO">${dpid_id} = 209733490876999</msg>
<var>${dpid_id}</var>
<arg>${test_switch}</arg>
<doc>Using the connection index for the given switch, will execute the command string
"datapath_id_output_command" which will store the output in switch.datapath_id_output_string.
The switch object method "update_datapath_id" is called which is assumed to place the ODL
friendly (decimal) version of the datapath id in to switch.datapath_id and the value is also
returned from this keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:23.794095" elapsed="0.052027"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Add Flow To Controller And Verify" owner="FlowLib">
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:23.862290" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=261 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=261 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node017ncy2bg6j4jtalpiszt0cnfu11.node0', 'Content-Length': '668', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;261&lt;/id&gt;&lt;priority&gt;65535&lt;/priority&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:55:23.862353" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=261 
 status=201, reason=Created 
 headers={'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:23.862461" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>headers=${HEADERS_XML}</arg>
<arg>data=${flow_body}</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:23.853157" elapsed="0.009331"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:23.864921" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:23.862692" elapsed="0.002273"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:23.871058" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=261?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=261?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node017ncy2bg6j4jtalpiszt0cnfu11.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:23.872319" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=261?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '667'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;261&lt;/id&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;priority&gt;65535&lt;/priority&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:55:23.872583" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${ACCEPT_XML}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:23.865182" elapsed="0.007461"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:23.876775" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;261&lt;/id&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;priority&gt;65535&lt;/priority&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;TABLE&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:23.873218" elapsed="0.003640"/>
</kw>
<kw name="Compare Xml" owner="Common">
<arg>${flow_body}</arg>
<arg>${resp.text}</arg>
<doc>compare the two XML files to see if they contain the same data
but could be if different order.
It just split the xml in to lines and just check the line is in
the other file</doc>
<status status="PASS" start="2026-05-25T01:55:23.877214" elapsed="0.003247"/>
</kw>
<arg>${flow.xml}</arg>
<arg>openflow%3A${dpid_id}</arg>
<arg>${flow.table_id}</arg>
<arg>${flow.id}</arg>
<doc>Push flow through REST-API and verify in data-store</doc>
<status status="PASS" start="2026-05-25T01:55:23.846861" elapsed="0.033691"/>
</kw>
<arg>3s</arg>
<arg>1s</arg>
<arg>Add Flow To Controller And Verify</arg>
<arg>${flow.xml}</arg>
<arg>openflow%3A${dpid_id}</arg>
<arg>${flow.table_id}</arg>
<arg>${flow.id}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:23.846334" elapsed="0.034297"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Validate Switch Output" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:23.895641" elapsed="0.002073"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:23.893456" elapsed="0.004297"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:23.893434" elapsed="0.004345"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:23.899951" elapsed="0.002280"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:23.897834" elapsed="0.004438"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:23.897818" elapsed="0.004479"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:23.904470" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:23.902352" elapsed="0.002175"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:23.902335" elapsed="0.002215"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:23.906751" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:23.904606" elapsed="0.002204"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:23.904589" elapsed="0.002245"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:23.893216" elapsed="0.013665"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:23.909501" elapsed="0.000119"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:23.907368" elapsed="0.002286"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:23.907351" elapsed="0.002328"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:23.911867" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:23.909733" elapsed="0.002187"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:23.909717" elapsed="0.002227"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:23.907131" elapsed="0.004860"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:23.914990" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-05-25T01:55:23.928024" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:23.928274" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:23.914858" elapsed="0.013479"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:23.912538" elapsed="0.015885"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:23.928912" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:23.928482" elapsed="0.000558"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:23.912521" elapsed="0.016633"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:23.934197" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:23.929292" elapsed="0.004991"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:23.934993" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:23.934573" elapsed="0.000461"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:23.934317" elapsed="0.000789"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:23.929254" elapsed="0.005884"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:23.935188" elapsed="0.000044"/>
</return>
<msg time="2026-05-25T01:55:23.935404" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${tmp}</var>
<arg>${switch}</arg>
<arg>/sbin/ifconfig</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:23.912286" elapsed="0.023157"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:23.936060" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:2f:dc:c0  txqueuelen 1000  (Ethernet)
        RX packets 7397  bytes 20303941 (20.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4808  bytes 1347275 (1.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 274  bytes 24208 (24.2 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 274  bytes 24208 (24.2 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

s1: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500
        inet6 fe80::bcc0:62ff:fe38:a247  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether be:c0:62:38:a2:47  txqueuelen 1000  (Ethernet)
        RX packets 5  bytes 550 (550.0 B)
        RX errors 0  dropped 5  overruns 0  frame 0
        TX packets 8  bytes 656 (656.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:23.935715" elapsed="0.000500"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:23.940321" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-05-25T01:55:23.991581" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:23.991815" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=6.338s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.123s, table=200, n_packet...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:23.940120" elapsed="0.051754"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:23.937004" elapsed="0.054961"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:23.992518" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:23.992025" elapsed="0.000619"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:23.936978" elapsed="0.055714"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:23.997660" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:23.992820" elapsed="0.004971"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:23.998946" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=6.338s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.123s, table=200, n_packet...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:23.998274" elapsed="0.000731"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:23.997842" elapsed="0.001272"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:23.992783" elapsed="0.006382"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:23.999243" elapsed="0.000065"/>
</return>
<msg time="2026-05-25T01:55:23.999577" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=6.338s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.123s, table=200, n_packet...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:23.936616" elapsed="0.063022"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:24.000630" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=6.338s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.123s, table=200, n_packets=0, n_bytes=0, priority=65535,ip,dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=TABLE</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:24.000062" elapsed="0.000670"/>
</kw>
<for flavor="IN">
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:24.002058" elapsed="0.000546"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:24.001526" elapsed="0.001119"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:24.001494" elapsed="0.001175"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:24.002986" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:24.002723" elapsed="0.000321"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:24.002706" elapsed="0.000374"/>
</if>
<var name="${str}">dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=TABLE</var>
<status status="PASS" start="2026-05-25T01:55:24.001423" elapsed="0.001682"/>
</iter>
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:24.003548" elapsed="0.000313"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:24.003295" elapsed="0.000606"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:24.003281" elapsed="0.000643"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:24.004248" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:24.003976" elapsed="0.000329"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:24.003960" elapsed="0.000367"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-05-25T01:55:24.003252" elapsed="0.001098"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-05-25T01:55:24.000852" elapsed="0.003525"/>
</for>
<arg>${test_switch}</arg>
<arg>${test_switch.dump_all_flows}</arg>
<arg>${test_switch.flow_validations}</arg>
<doc>A generic keyword that will execute one command on the switch, and check for each string in the @{validations} argument.  There is a boolean flag ${should_exist} that can be used to check that the validations are or are NOT in the output of the command executed.</doc>
<status status="PASS" start="2026-05-25T01:55:23.888795" elapsed="0.115637"/>
</kw>
<arg>3s</arg>
<arg>1s</arg>
<arg>Validate Switch Output</arg>
<arg>${test_switch}</arg>
<arg>${test_switch.dump_all_flows}</arg>
<arg>${test_switch.flow_validations}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:23.880933" elapsed="0.123556"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Remove Flow From Controller And Verify" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:24.017941" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=261 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=261 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node017ncy2bg6j4jtalpiszt0cnfu11.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:24.017992" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=261 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:24.018175" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:24.009622" elapsed="0.008580"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:24.020799" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:24.018401" elapsed="0.002442"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:24.025317" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=261?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=261?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node017ncy2bg6j4jtalpiszt0cnfu11.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:24.025494" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=261?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/yang-data+json', 'Content-Length': '242'} 
 body={
  "errors": {
    "error": [
      {
        "error-tag": "data-missing",
        "error-message": "Request could not be completed because the relevant data model content does not exist",
        "error-type": "protocol"
      }
    ]
  }
} 
 </msg>
<msg time="2026-05-25T01:55:24.025634" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:24.021012" elapsed="0.004658"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code} == 404 or ${resp.status_code} == 409">
<return>
<status status="PASS" start="2026-05-25T01:55:24.031543" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-05-25T01:55:24.025785" elapsed="0.005842"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:24.025757" elapsed="0.005904"/>
</if>
<kw name="Log" owner="BuiltIn">
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:24.031877" elapsed="0.000030"/>
</kw>
<kw name="Fail" owner="BuiltIn">
<arg>The request failed with code ${resp.status_code}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:24.032138" elapsed="0.000030"/>
</kw>
<arg>openflow%3A${dpid_id}</arg>
<arg>${flow.table_id}</arg>
<arg>${flow.id}</arg>
<doc>Remove flow and verify</doc>
<status status="PASS" start="2026-05-25T01:55:24.005297" elapsed="0.026951"/>
</kw>
<arg>3s</arg>
<arg>1s</arg>
<arg>Remove Flow From Controller And Verify</arg>
<arg>openflow%3A${dpid_id}</arg>
<arg>${flow.table_id}</arg>
<arg>${flow.id}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:24.004702" elapsed="0.027616"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Validate Switch Output" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:24.048080" elapsed="0.002020"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:24.045994" elapsed="0.004145"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:24.045974" elapsed="0.004189"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:24.052276" elapsed="0.002203"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:24.050218" elapsed="0.004303"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:24.050201" elapsed="0.004344"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:24.056659" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:24.054599" elapsed="0.002115"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:24.054583" elapsed="0.002159"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:24.058865" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:24.056796" elapsed="0.002126"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:24.056780" elapsed="0.002165"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:24.045759" elapsed="0.013232"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:24.061591" elapsed="0.000119"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:24.059477" elapsed="0.002266"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:24.059459" elapsed="0.002308"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:24.063876" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:24.061820" elapsed="0.002108"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:24.061803" elapsed="0.002148"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:24.059243" elapsed="0.004754"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:24.066778" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-05-25T01:55:24.079682" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:24.079818" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:24.066651" elapsed="0.013250"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:24.064543" elapsed="0.015415"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:24.080483" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:24.080006" elapsed="0.000606"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:24.064526" elapsed="0.016131"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:24.085536" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:24.080782" elapsed="0.004884"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:24.086818" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:24.086160" elapsed="0.000724"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:24.085719" elapsed="0.001248"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:24.080745" elapsed="0.006269"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:24.087120" elapsed="0.000067"/>
</return>
<msg time="2026-05-25T01:55:24.087461" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${tmp}</var>
<arg>${switch}</arg>
<arg>/sbin/ifconfig</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:24.064289" elapsed="0.023233"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:24.088527" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:2f:dc:c0  txqueuelen 1000  (Ethernet)
        RX packets 7408  bytes 20305339 (20.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4823  bytes 1350713 (1.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 274  bytes 24208 (24.2 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 274  bytes 24208 (24.2 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

s1: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500
        inet6 fe80::bcc0:62ff:fe38:a247  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether be:c0:62:38:a2:47  txqueuelen 1000  (Ethernet)
        RX packets 5  bytes 550 (550.0 B)
        RX errors 0  dropped 5  overruns 0  frame 0
        TX packets 8  bytes 656 (656.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:24.087942" elapsed="0.000711"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:24.092478" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-05-25T01:55:24.139605" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:24.139930" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=6.486s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:24.092351" elapsed="0.047621"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:24.089973" elapsed="0.050126"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:24.140788" elapsed="0.000060"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:24.140160" elapsed="0.000768"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:24.089928" elapsed="0.051050"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:24.145298" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:24.141206" elapsed="0.004184"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:24.146295" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=6.486s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:24.145693" elapsed="0.000643"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:24.145423" elapsed="0.000967"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:24.141127" elapsed="0.005292"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:24.146478" elapsed="0.000058"/>
</return>
<msg time="2026-05-25T01:55:24.146730" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=6.486s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:24.089359" elapsed="0.057414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:24.147675" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=6.486s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:24.147161" elapsed="0.000617"/>
</kw>
<for flavor="IN">
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:24.149064" elapsed="0.000078"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:24.148485" elapsed="0.000789"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:24.148436" elapsed="0.000894"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:24.150125" elapsed="0.000687"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:24.149578" elapsed="0.001315"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:24.149538" elapsed="0.001410"/>
</if>
<var name="${str}">dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=TABLE</var>
<status status="PASS" start="2026-05-25T01:55:24.148370" elapsed="0.002632"/>
</iter>
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:24.151955" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:24.151449" elapsed="0.000653"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:24.151420" elapsed="0.000741"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:24.152814" elapsed="0.000696"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:24.152277" elapsed="0.001313"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:24.152244" elapsed="0.001395"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-05-25T01:55:24.151359" elapsed="0.002331"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-05-25T01:55:24.147909" elapsed="0.005845"/>
</for>
<arg>${test_switch}</arg>
<arg>${test_switch.dump_all_flows}</arg>
<arg>${test_switch.flow_validations}</arg>
<arg>false</arg>
<doc>A generic keyword that will execute one command on the switch, and check for each string in the @{validations} argument.  There is a boolean flag ${should_exist} that can be used to check that the validations are or are NOT in the output of the command executed.</doc>
<status status="PASS" start="2026-05-25T01:55:24.041429" elapsed="0.112459"/>
</kw>
<arg>3s</arg>
<arg>1s</arg>
<arg>Validate Switch Output</arg>
<arg>${test_switch}</arg>
<arg>${test_switch.dump_all_flows}</arg>
<arg>${test_switch.flow_validations}</arg>
<arg>false</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:24.032611" elapsed="0.121405"/>
</kw>
<arg>${TEST_NAME}</arg>
<arg>200</arg>
<arg>261</arg>
<arg>65535</arg>
<status status="PASS" start="2026-05-25T01:55:22.984557" elapsed="1.169629"/>
</kw>
<doc>OF1.3: OFPP_TABLE = 0xfffffff9, /* Submit the packet to the first flow table NB: This destination port can only be used in packet-out messages. */</doc>
<tag>table</tag>
<status status="PASS" start="2026-05-25T01:55:22.983670" elapsed="1.170773"/>
</test>
<test id="s1-s4-s2-t3" name="NORMAL" line="62">
<kw name="Create And Remove Flow">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:24.158320" level="INFO">${ethernet_match_dict} = {'type': '0x800', 'destination': 'ff:ff:ff:ff:ff:ff', 'source': '00:ab:cd:ef:01:23'}</msg>
<var>${ethernet_match_dict}</var>
<arg>type=${eth_type}</arg>
<arg>destination=${eth_dst}</arg>
<arg>source=${eth_src}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:24.157347" elapsed="0.001013"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:24.159266" level="INFO">${ipv4_match_dict} = {'source': '11.3.0.0/16', 'destination': '99.0.0.0/8'}</msg>
<var>${ipv4_match_dict}</var>
<arg>source=${ipv4_src}</arg>
<arg>destination=${ipv4_dst}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:24.158666" elapsed="0.000641"/>
</kw>
<kw name="Create Inventory Flow" owner="FlowLib">
<kw name="Make Inventory Flow" owner="FlowLib">
<msg time="2026-05-25T01:55:24.160261" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt;</msg>
<var>${flow}</var>
<doc>Robot Keyword to create and return an instance of the Flow
class.</doc>
<status status="PASS" start="2026-05-25T01:55:24.160042" elapsed="0.000261"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.160369" elapsed="0.000047"/>
</return>
<msg time="2026-05-25T01:55:24.160593" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt;</msg>
<var>${flow}</var>
<doc>Calls FlowLib.Make_Inventory_Flow function and initializes and sanitizes
the basic flow elements that can be given to flow:inventory</doc>
<status status="PASS" start="2026-05-25T01:55:24.159588" elapsed="0.001042"/>
</kw>
<kw name="Set &quot;${flow}&quot; &quot;table_id&quot; With &quot;${table_id}&quot;" owner="FlowLib" source_name="Set &quot;${flow}&quot; &quot;${property}&quot; With &quot;${property_val}&quot;">
<if>
<branch type="IF" condition="&quot;table_id&quot; != &quot;${property}&quot; and &quot;cookie_mask&quot; != &quot;${property}&quot;">
<kw name="Replace String" owner="String">
<var>${property}</var>
<arg>${property}</arg>
<arg>_</arg>
<arg>-</arg>
<doc>Replaces ``search_for`` in the given ``string`` with ``replace_with``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:24.169304" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:24.168540" elapsed="0.000920"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:24.170414" level="INFO">${property} = table_id</msg>
<var>${property}</var>
<arg>${property}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:24.169925" elapsed="0.000532"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:24.169515" elapsed="0.000997"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:24.168497" elapsed="0.002047"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:24.179990" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc243330&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.177654" elapsed="0.002365"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.180654" elapsed="0.000309"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:24.180250" elapsed="0.000773"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:24.181607" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.181248" elapsed="0.000389"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:24.181833" elapsed="0.000169"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.182055" elapsed="0.000049"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt;
object. The &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:24.176991" elapsed="0.005211"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:24.214381" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2402c0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.211909" elapsed="0.002509"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.214638" elapsed="0.000480"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:24.215697" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.215330" elapsed="0.000397"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:24.215924" elapsed="0.000182"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:24.218543" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:24.216310" elapsed="0.002283"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.218647" elapsed="0.000050"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:24.211086" elapsed="0.007721"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:24.219008" elapsed="0.000203"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.219261" elapsed="0.000027"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-05-25T01:55:24.167816" elapsed="0.051568"/>
</kw>
<kw name="Set &quot;${flow}&quot; &quot;id&quot; With &quot;${flow_id}&quot;" owner="FlowLib" source_name="Set &quot;${flow}&quot; &quot;${property}&quot; With &quot;${property_val}&quot;">
<if>
<branch type="IF" condition="&quot;table_id&quot; != &quot;${property}&quot; and &quot;cookie_mask&quot; != &quot;${property}&quot;">
<kw name="Replace String" owner="String">
<msg time="2026-05-25T01:55:24.224594" level="INFO">${property} = id</msg>
<var>${property}</var>
<arg>${property}</arg>
<arg>_</arg>
<arg>-</arg>
<doc>Replaces ``search_for`` in the given ``string`` with ``replace_with``.</doc>
<status status="PASS" start="2026-05-25T01:55:24.224345" elapsed="0.000277"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:24.224007" elapsed="0.000659"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${property}</var>
<arg>${property}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:24.224885" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:24.224693" elapsed="0.000249"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:24.223984" elapsed="0.000979"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:24.231677" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fe480&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.229498" elapsed="0.002207"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.232333" elapsed="0.000298"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:24.231919" elapsed="0.000766"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:24.233241" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.232877" elapsed="0.000394"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:24.233462" elapsed="0.000162"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.233674" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt;
object. The &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:24.229081" elapsed="0.004714"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:24.265380" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fdd00&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.263176" elapsed="0.002231"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.265604" elapsed="0.000433"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:24.266576" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;361&lt;/id&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.266257" elapsed="0.000348"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:24.266868" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:24.269452" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;361&lt;/id&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:24.267242" elapsed="0.002259"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.269546" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:24.262673" elapsed="0.006997"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:24.269867" elapsed="0.000182"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.270115" elapsed="0.000027"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-05-25T01:55:24.223689" elapsed="0.046545"/>
</kw>
<kw name="Set &quot;${flow}&quot; &quot;priority&quot; With &quot;${priority}&quot;" owner="FlowLib" source_name="Set &quot;${flow}&quot; &quot;${property}&quot; With &quot;${property_val}&quot;">
<if>
<branch type="IF" condition="&quot;table_id&quot; != &quot;${property}&quot; and &quot;cookie_mask&quot; != &quot;${property}&quot;">
<kw name="Replace String" owner="String">
<msg time="2026-05-25T01:55:24.275218" level="INFO">${property} = priority</msg>
<var>${property}</var>
<arg>${property}</arg>
<arg>_</arg>
<arg>-</arg>
<doc>Replaces ``search_for`` in the given ``string`` with ``replace_with``.</doc>
<status status="PASS" start="2026-05-25T01:55:24.274987" elapsed="0.000258"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:24.274698" elapsed="0.000589"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${property}</var>
<arg>${property}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:24.275496" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:24.275311" elapsed="0.000241"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:24.274680" elapsed="0.000892"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:24.282242" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fdb70&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.280026" elapsed="0.002243"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.282853" elapsed="0.000311"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:24.282473" elapsed="0.000746"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:24.283728" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;361&lt;/id&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.283410" elapsed="0.000346"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:24.283945" elapsed="0.000175"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.284170" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt;
object. The &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:24.279627" elapsed="0.004664"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:24.315729" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2ffe70&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.313504" elapsed="0.002253"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.315950" elapsed="0.000444"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:24.316918" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;361&lt;/id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.316597" elapsed="0.000350"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:24.317157" elapsed="0.000188"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:24.321118" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;361&lt;/id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:24.317542" elapsed="0.003627"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.321242" elapsed="0.000033"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:24.312978" elapsed="0.008405"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:24.321626" elapsed="0.000185"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.321860" elapsed="0.000027"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-05-25T01:55:24.274410" elapsed="0.047567"/>
</kw>
<kw name="Clear Flow Actions" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:24.328968" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc0d7100&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.326797" elapsed="0.002199"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.329647" elapsed="0.000309"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:24.329250" elapsed="0.000762"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:24.330544" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;361&lt;/id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.330220" elapsed="0.000354"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:24.330765" elapsed="0.000158"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.330973" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>instructions/instruction</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt;
object. The &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:24.326410" elapsed="0.004714"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.331174" elapsed="0.000026"/>
</return>
<arg>${flow}</arg>
<doc>Will clean out any existing flow actions in the given &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object</doc>
<status status="PASS" start="2026-05-25T01:55:24.322208" elapsed="0.009080"/>
</kw>
<kw name="Set Flow Output Action" owner="FlowLib">
<kw name="Set Flow Action" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:24.340634" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fe570&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.338461" elapsed="0.002201"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.341299" elapsed="0.000297"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:24.340867" elapsed="0.000784"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:24.342185" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;361&lt;/id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.341843" elapsed="0.000372"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:24.342405" elapsed="0.000158"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.342612" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>instruction</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt;
object. The &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:24.338084" elapsed="0.004649"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:24.376161" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2ff060&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.373947" elapsed="0.002242"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.376385" elapsed="0.000428"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:24.377390" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction /&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;361&lt;/id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.377017" elapsed="0.000403"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:24.377611" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:24.380127" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction /&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;361&lt;/id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:24.377962" elapsed="0.002214"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.380220" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>instruction</arg>
<arg>${EMPTY}</arg>
<arg>instructions</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:24.371740" elapsed="0.008606"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:24.411727" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fdf30&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.409542" elapsed="0.002213"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.411948" elapsed="0.000453"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:24.412931" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;361&lt;/id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.412603" elapsed="0.000359"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:24.413168" elapsed="0.000194"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:24.415712" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;361&lt;/id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:24.413552" elapsed="0.002210"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.415805" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>order</arg>
<arg>${instruction_order}</arg>
<arg>instructions/instruction</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:24.409032" elapsed="0.006897"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:24.449113" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fc040&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.446901" elapsed="0.002241"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.449362" elapsed="0.000442"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:24.450363" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions /&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;361&lt;/id&gt;&lt;priority&gt;9&lt;/priorit...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.450008" elapsed="0.000385"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:24.450583" elapsed="0.000158"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:24.453126" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions /&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;361&lt;/id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:24.450931" elapsed="0.002245"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.453220" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>apply-actions</arg>
<arg>${EMPTY}</arg>
<arg>instructions/instruction</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:24.444669" elapsed="0.008707"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:24.488333" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fd6c0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.484770" elapsed="0.003626"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.488837" elapsed="0.001069"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:24.490610" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action /&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;361&lt;...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.490272" elapsed="0.000369"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:24.490830" elapsed="0.000164"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:24.493387" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action /&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;361&lt;/id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:24.491201" elapsed="0.002237"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.493483" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>action</arg>
<arg>${EMPTY}</arg>
<arg>instructions/instruction/apply-actions</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:24.482441" elapsed="0.011207"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:24.524994" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2ff060&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.522772" elapsed="0.002249"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.525230" elapsed="0.000482"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:24.526275" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.525914" elapsed="0.000393"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:24.526498" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:24.528995" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;361&lt;/id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:24.526846" elapsed="0.002200"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.529105" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>order</arg>
<arg>${action_order}</arg>
<arg>instructions/instruction/apply-actions/action</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:24.522301" elapsed="0.006929"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:24.560662" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fdc10&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.558380" elapsed="0.002310"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.560883" elapsed="0.000468"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:24.561916" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action /&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.561560" elapsed="0.000387"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:24.562153" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:24.564669" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action /&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;361&lt;/id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:24.562501" elapsed="0.002220"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.564765" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>${action}</arg>
<arg>${action_val}</arg>
<arg>instructions/instruction/apply-actions/action</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:24.557873" elapsed="0.007016"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.564943" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>${instruction_order}</arg>
<arg>${action_order}</arg>
<arg>output-action</arg>
<doc>Will remove the instruction element first, then add the proper xml structure
to implement the action as given in the arguments</doc>
<status status="PASS" start="2026-05-25T01:55:24.331916" elapsed="0.233142"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:24.596855" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2407c0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.594595" elapsed="0.002292"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.597107" elapsed="0.000486"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:24.598196" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/ou...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.597802" elapsed="0.000494"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:24.598494" elapsed="0.000164"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:24.601053" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;361&lt;/id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:24.598857" elapsed="0.002263"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.601169" elapsed="0.000041"/>
</return>
<arg>${flow}</arg>
<arg>output-node-connector</arg>
<arg>${output_port}</arg>
<arg>instructions/instruction/apply-actions/action/output-action</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:24.594043" elapsed="0.007269"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.601381" elapsed="0.000026"/>
</return>
<arg>${flow}</arg>
<arg>0</arg>
<arg>0</arg>
<arg>${output_port}</arg>
<status status="PASS" start="2026-05-25T01:55:24.331471" elapsed="0.270028"/>
</kw>
<kw name="Set Flow Ethernet Match" owner="FlowLib">
<kw name="Clear Flow Matches" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:24.613040" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc243740&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.610797" elapsed="0.002288"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.613724" elapsed="0.000314"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:24.613308" elapsed="0.000801"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:24.614670" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/ou...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.614305" elapsed="0.000396"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:24.614894" elapsed="0.000162"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.615127" elapsed="0.000035"/>
</return>
<arg>${flow}</arg>
<arg>match/${match_element}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt;
object. The &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:24.610355" elapsed="0.004905"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.615308" elapsed="0.000026"/>
</return>
<arg>${flow}</arg>
<arg>match/ethernet-match</arg>
<doc>Will clean out any existing flow matches in the given &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object</doc>
<status status="PASS" start="2026-05-25T01:55:24.606125" elapsed="0.009307"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:24.649253" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc241c60&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.646569" elapsed="0.002719"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.649532" elapsed="0.000458"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:24.650598" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/ou...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.650215" elapsed="0.000414"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:24.650823" elapsed="0.000165"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:24.653418" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match /&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;361&lt;/id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:24.651198" elapsed="0.002276"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.653524" elapsed="0.000047"/>
</return>
<arg>${flow}</arg>
<arg>ethernet-match</arg>
<arg>${EMPTY}</arg>
<arg>match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:24.644100" elapsed="0.009579"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:24.654191" level="INFO">${type} = 0x800</msg>
<var>${type}</var>
<arg>${match_value_dict}</arg>
<arg>type</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:24.653976" elapsed="0.000242"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:24.687986" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc242610&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.685576" elapsed="0.002447"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.688293" elapsed="0.000544"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:24.689563" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/ou...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.689126" elapsed="0.000468"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:24.689791" elapsed="0.000166"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:24.692375" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type /&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;361&lt;/id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:24.690171" elapsed="0.002259"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.692484" elapsed="0.000052"/>
</return>
<arg>${flow}</arg>
<arg>ethernet-type</arg>
<arg>${EMPTY}</arg>
<arg>match/ethernet-match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:24.682979" elapsed="0.009667"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:24.724017" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2438d0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.721797" elapsed="0.002249"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.724255" elapsed="0.000436"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:24.725265" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/ou...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.724893" elapsed="0.000402"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:24.725508" elapsed="0.000163"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:24.728060" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;361&lt;/id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:24.725863" elapsed="0.002267"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.728175" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>type</arg>
<arg>${type}</arg>
<arg>match/ethernet-match/ethernet-type</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:24.721315" elapsed="0.006984"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:24.728698" level="INFO">${src} = 00:ab:cd:ef:01:23</msg>
<var>${src}</var>
<arg>${match_value_dict}</arg>
<arg>source</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:24.728506" elapsed="0.000217"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:24.762614" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fc900&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.760348" elapsed="0.002297"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.762844" elapsed="0.000468"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:24.763887" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/ou...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.763517" elapsed="0.000476"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:24.764206" elapsed="0.000164"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:24.766772" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source /&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;361&lt;/id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:24.764561" elapsed="0.002268"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.766875" elapsed="0.000036"/>
</return>
<arg>${flow}</arg>
<arg>ethernet-source</arg>
<arg>${EMPTY}</arg>
<arg>match/ethernet-match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:24.758089" elapsed="0.008922"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:24.798676" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc242020&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.796336" elapsed="0.002369"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.798902" elapsed="0.000462"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:24.799931" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/ou...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.799566" elapsed="0.000396"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:24.800169" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:24.802708" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;361&lt;/id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:24.800523" elapsed="0.002242"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.802810" elapsed="0.000031"/>
</return>
<arg>${flow}</arg>
<arg>address</arg>
<arg>${src}</arg>
<arg>match/ethernet-match/ethernet-source</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:24.795831" elapsed="0.007105"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:24.803350" level="INFO">${dst} = ff:ff:ff:ff:ff:ff</msg>
<var>${dst}</var>
<arg>${match_value_dict}</arg>
<arg>destination</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:24.803161" elapsed="0.000215"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:24.836458" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2405e0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.834246" elapsed="0.002241"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.836681" elapsed="0.000447"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:24.837718" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/ou...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.837330" elapsed="0.000418"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:24.837939" elapsed="0.000176"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:24.840598" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination /&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;361&lt;/id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:24.838307" elapsed="0.002398"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.840752" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>ethernet-destination</arg>
<arg>${EMPTY}</arg>
<arg>match/ethernet-match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:24.832032" elapsed="0.008845"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:24.872320" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc065c60&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.870104" elapsed="0.002244"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.872542" elapsed="0.000434"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:24.873591" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/ou...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.873195" elapsed="0.000427"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:24.873814" elapsed="0.000158"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:24.876496" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;361&lt;/id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:24.874177" elapsed="0.002377"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.876599" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>address</arg>
<arg>${dst}</arg>
<arg>match/ethernet-match/ethernet-destination</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:24.869624" elapsed="0.007099"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.876777" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>${ethernet_match_dict}</arg>
<doc>Specific keyword for adding an ethernet match rules where the elements are given
in key/value pairs inside the ${match_value_dict} argument. This keyword will also remove any
existing ethernet-match elements from the flow before adding</doc>
<status status="PASS" start="2026-05-25T01:55:24.605655" elapsed="0.271239"/>
</kw>
<kw name="Set Flow IPv4 Match" owner="FlowLib">
<kw name="Clear Flow Matches" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:24.888332" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc243c90&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.886114" elapsed="0.002245"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.888963" elapsed="0.000322"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:24.888572" elapsed="0.000767"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:24.889918" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/ou...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.889556" elapsed="0.000393"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:24.890152" elapsed="0.000161"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.890362" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>match/${match_element}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt;
object. The &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:24.885691" elapsed="0.004791"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.890530" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>match/ipv4-source</arg>
<doc>Will clean out any existing flow matches in the given &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object</doc>
<status status="PASS" start="2026-05-25T01:55:24.881454" elapsed="0.009189"/>
</kw>
<kw name="Clear Flow Matches" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:24.897928" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc240090&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.895697" elapsed="0.002259"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.898601" elapsed="0.000307"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:24.898215" elapsed="0.000747"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:24.899543" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/ou...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.899179" elapsed="0.000394"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:24.899765" elapsed="0.000159"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.899973" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>match/${match_element}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt;
object. The &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:24.895284" elapsed="0.004825"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.900157" elapsed="0.000026"/>
</return>
<arg>${flow}</arg>
<arg>match/ipv4-destination</arg>
<doc>Will clean out any existing flow matches in the given &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object</doc>
<status status="PASS" start="2026-05-25T01:55:24.890856" elapsed="0.009415"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:24.900646" level="INFO">${src} = 11.3.0.0/16</msg>
<var>${src}</var>
<arg>${match_value_dict}</arg>
<arg>source</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:24.900465" elapsed="0.000206"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:24.932143" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2409a0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.929856" elapsed="0.002319"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.932377" elapsed="0.000435"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:24.933460" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/ou...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.933016" elapsed="0.000482"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:24.933708" elapsed="0.000165"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:24.936288" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;361&lt;/id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:24.934084" elapsed="0.002263"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.936395" elapsed="0.000037"/>
</return>
<arg>${flow}</arg>
<arg>ipv4-source</arg>
<arg>${src}</arg>
<arg>match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:24.929283" elapsed="0.007251"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:24.936927" level="INFO">${dst} = 99.0.0.0/8</msg>
<var>${dst}</var>
<arg>${match_value_dict}</arg>
<arg>destination</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:24.936742" elapsed="0.000212"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:24.968432" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc241990&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:24.966211" elapsed="0.002249"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.968655" elapsed="0.000449"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:24.969701" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/ou...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:24.969309" elapsed="0.000423"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:24.969922" elapsed="0.000178"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:24.972650" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;361&lt;/id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:24.970295" elapsed="0.002484"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.972826" elapsed="0.000032"/>
</return>
<arg>${flow}</arg>
<arg>ipv4-destination</arg>
<arg>${dst}</arg>
<arg>match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfeaccd0&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:24.965719" elapsed="0.007235"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:24.973008" elapsed="0.000026"/>
</return>
<arg>${flow}</arg>
<arg>${ipv4_match_dict}</arg>
<doc>Specific keyword for adding an ipv4 match rules where the elements are given
in key/value pairs inside the ${match_value_dict} argument. This keyword will also remove any
existing ipv4 match elements from the flow before adding</doc>
<status status="PASS" start="2026-05-25T01:55:24.880983" elapsed="0.092159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:24.975558" level="INFO">Flow XML is &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;361&lt;/id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>Flow XML is ${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:24.973334" elapsed="0.002284"/>
</kw>
<kw name="Call Method" owner="BuiltIn">
<arg>${test_switch}</arg>
<arg>create_flow_match_elements</arg>
<arg>${flow.xml}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-05-25T01:55:24.975815" elapsed="0.002301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:24.980344" level="INFO">['dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=NORMAL', 'table=200']</msg>
<arg>${test_switch.flow_validations}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:24.978314" elapsed="0.002076"/>
</kw>
<kw name="Get Switch Datapath ID" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:24.983627" elapsed="0.002033"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:24.981511" elapsed="0.004188"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:24.981487" elapsed="0.004240"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:24.987862" elapsed="0.002265"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:24.985783" elapsed="0.004385"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:24.985766" elapsed="0.004426"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:24.992321" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:24.990247" elapsed="0.002130"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:24.990230" elapsed="0.002171"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:24.994541" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:24.992455" elapsed="0.002146"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:24.992439" elapsed="0.002185"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:24.981237" elapsed="0.013434"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:24.997228" elapsed="0.000137"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:24.995160" elapsed="0.002239"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:24.995143" elapsed="0.002280"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:24.999577" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:24.997503" elapsed="0.002126"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:24.997485" elapsed="0.002167"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:24.994908" elapsed="0.004791"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:25.004241" level="INFO">Executing command '/sbin/ifconfig s1 | grep -o -E "([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}"'.</msg>
<msg time="2026-05-25T01:55:25.017998" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:25.018267" level="INFO">${output} = be:c0:62:38:a2:47</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:25.004052" elapsed="0.014274"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:25.001970" elapsed="0.016447"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:25.018918" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:25.018477" elapsed="0.000571"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.001952" elapsed="0.017174"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:25.024037" elapsed="0.000080"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:25.019256" elapsed="0.004946"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.025374" level="INFO">${output} = be:c0:62:38:a2:47</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:25.024668" elapsed="0.000764"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:25.024256" elapsed="0.001278"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.019218" elapsed="0.006364"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:25.025658" elapsed="0.000064"/>
</return>
<msg time="2026-05-25T01:55:25.026053" level="INFO">${switch.datapath_id_output_string} = be:c0:62:38:a2:47</msg>
<var>${switch.datapath_id_output_string}</var>
<arg>${switch}</arg>
<arg>${switch.datapath_id_output_command}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:24.999989" elapsed="0.026161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.030647" level="INFO">be:c0:62:38:a2:47</msg>
<arg>${switch.datapath_id_output_string}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:25.026580" elapsed="0.004113"/>
</kw>
<kw name="Call Method" owner="BuiltIn">
<arg>${switch}</arg>
<arg>update_datapath_id</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-05-25T01:55:25.030884" elapsed="0.000298"/>
</kw>
<return>
<value>${switch.datapath_id}</value>
<status status="PASS" start="2026-05-25T01:55:25.031231" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:25.033335" level="INFO">${dpid_id} = 209733490876999</msg>
<var>${dpid_id}</var>
<arg>${test_switch}</arg>
<doc>Using the connection index for the given switch, will execute the command string
"datapath_id_output_command" which will store the output in switch.datapath_id_output_string.
The switch object method "update_datapath_id" is called which is assumed to place the ODL
friendly (decimal) version of the datapath id in to switch.datapath_id and the value is also
returned from this keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:24.980611" elapsed="0.052751"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Add Flow To Controller And Verify" owner="FlowLib">
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:25.050900" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=361 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=361 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node017ncy2bg6j4jtalpiszt0cnfu11.node0', 'Content-Length': '665', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;361&lt;/id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:55:25.050987" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=361 
 status=201, reason=Created 
 headers={'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:25.051184" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>headers=${HEADERS_XML}</arg>
<arg>data=${flow_body}</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:25.040389" elapsed="0.010832"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.054641" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:25.051509" elapsed="0.003193"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:25.060023" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=361?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=361?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node017ncy2bg6j4jtalpiszt0cnfu11.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:25.060823" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=361?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '664'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;361&lt;/id&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:55:25.061041" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${ACCEPT_XML}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:25.054930" elapsed="0.006167"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.064642" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;361&lt;/id&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;priority&gt;9&lt;/priority&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;NORMAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:25.061384" elapsed="0.003338"/>
</kw>
<kw name="Compare Xml" owner="Common">
<arg>${flow_body}</arg>
<arg>${resp.text}</arg>
<doc>compare the two XML files to see if they contain the same data
but could be if different order.
It just split the xml in to lines and just check the line is in
the other file</doc>
<status status="PASS" start="2026-05-25T01:55:25.064995" elapsed="0.003111"/>
</kw>
<arg>${flow.xml}</arg>
<arg>openflow%3A${dpid_id}</arg>
<arg>${flow.table_id}</arg>
<arg>${flow.id}</arg>
<doc>Push flow through REST-API and verify in data-store</doc>
<status status="PASS" start="2026-05-25T01:55:25.034143" elapsed="0.034054"/>
</kw>
<arg>3s</arg>
<arg>1s</arg>
<arg>Add Flow To Controller And Verify</arg>
<arg>${flow.xml}</arg>
<arg>openflow%3A${dpid_id}</arg>
<arg>${flow.table_id}</arg>
<arg>${flow.id}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:25.033590" elapsed="0.034684"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Validate Switch Output" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:25.082944" elapsed="0.002006"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:25.080859" elapsed="0.004131"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.080838" elapsed="0.004178"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:25.087178" elapsed="0.002187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:25.085083" elapsed="0.004322"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.085053" elapsed="0.004377"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:25.091572" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:25.089484" elapsed="0.002145"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.089467" elapsed="0.002185"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:25.093804" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:25.091706" elapsed="0.002157"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.091690" elapsed="0.002197"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:25.080624" elapsed="0.013309"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:25.096491" elapsed="0.000118"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:25.094414" elapsed="0.002229"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.094397" elapsed="0.002270"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:25.098946" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:25.096720" elapsed="0.002281"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.096704" elapsed="0.002323"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:25.094180" elapsed="0.004908"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:25.101890" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-05-25T01:55:25.114581" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:25.114792" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:25.101761" elapsed="0.013093"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:25.099622" elapsed="0.015317"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:25.115465" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:25.114996" elapsed="0.000598"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.099604" elapsed="0.016036"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:25.119606" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:25.115765" elapsed="0.003924"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.120468" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:25.120026" elapsed="0.000483"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:25.119767" elapsed="0.000794"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.115728" elapsed="0.004863"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:25.120640" elapsed="0.000042"/>
</return>
<msg time="2026-05-25T01:55:25.120851" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${tmp}</var>
<arg>${switch}</arg>
<arg>/sbin/ifconfig</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:25.099369" elapsed="0.021521"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.121534" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:2f:dc:c0  txqueuelen 1000  (Ethernet)
        RX packets 7427  bytes 20307569 (20.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4847  bytes 1354993 (1.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 274  bytes 24208 (24.2 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 274  bytes 24208 (24.2 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

s1: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500
        inet6 fe80::bcc0:62ff:fe38:a247  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether be:c0:62:38:a2:47  txqueuelen 1000  (Ethernet)
        RX packets 5  bytes 550 (550.0 B)
        RX errors 0  dropped 5  overruns 0  frame 0
        TX packets 8  bytes 656 (656.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:25.121176" elapsed="0.000439"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:25.125542" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-05-25T01:55:25.174609" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:25.174824" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=7.519s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.115s, table=200, n_packet...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:25.125332" elapsed="0.049551"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:25.122410" elapsed="0.052558"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:25.175499" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:25.175026" elapsed="0.000601"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.122385" elapsed="0.053290"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:25.180565" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:25.175801" elapsed="0.004895"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.181924" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=7.519s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.115s, table=200, n_packet...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:25.181212" elapsed="0.000780"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:25.180749" elapsed="0.001362"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.175764" elapsed="0.006375"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:25.182182" elapsed="0.000032"/>
</return>
<msg time="2026-05-25T01:55:25.182336" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=7.519s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.115s, table=200, n_packet...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:25.122005" elapsed="0.060358"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.182801" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=7.519s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.115s, table=200, n_packets=0, n_bytes=0, priority=9,ip,dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=NORMAL</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:25.182557" elapsed="0.000290"/>
</kw>
<for flavor="IN">
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:25.183443" elapsed="0.000654"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:25.183185" elapsed="0.000956"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.183170" elapsed="0.000996"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:25.184535" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:25.184221" elapsed="0.000381"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.184204" elapsed="0.000425"/>
</if>
<var name="${str}">dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=NORMAL</var>
<status status="PASS" start="2026-05-25T01:55:25.183137" elapsed="0.001519"/>
</iter>
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:25.185310" elapsed="0.000384"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:25.184894" elapsed="0.000843"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.184874" elapsed="0.000888"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:25.186096" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:25.185818" elapsed="0.000339"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.185801" elapsed="0.000380"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-05-25T01:55:25.184836" elapsed="0.001368"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-05-25T01:55:25.182908" elapsed="0.003324"/>
</for>
<arg>${test_switch}</arg>
<arg>${test_switch.dump_all_flows}</arg>
<arg>${test_switch.flow_validations}</arg>
<doc>A generic keyword that will execute one command on the switch, and check for each string in the @{validations} argument.  There is a boolean flag ${should_exist} that can be used to check that the validations are or are NOT in the output of the command executed.</doc>
<status status="PASS" start="2026-05-25T01:55:25.076334" elapsed="0.109956"/>
</kw>
<arg>3s</arg>
<arg>1s</arg>
<arg>Validate Switch Output</arg>
<arg>${test_switch}</arg>
<arg>${test_switch.dump_all_flows}</arg>
<arg>${test_switch.flow_validations}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:25.068575" elapsed="0.117772"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Remove Flow From Controller And Verify" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:25.198889" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=361 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=361 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node017ncy2bg6j4jtalpiszt0cnfu11.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:25.198937" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=361 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:25.199128" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:25.191978" elapsed="0.007200"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.202600" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:25.199475" elapsed="0.003184"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:25.209335" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=361?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=361?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node017ncy2bg6j4jtalpiszt0cnfu11.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:25.209513" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=361?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/yang-data+json', 'Content-Length': '242'} 
 body={
  "errors": {
    "error": [
      {
        "error-tag": "data-missing",
        "error-message": "Request could not be completed because the relevant data model content does not exist",
        "error-type": "protocol"
      }
    ]
  }
} 
 </msg>
<msg time="2026-05-25T01:55:25.209694" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:25.202888" elapsed="0.006844"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code} == 404 or ${resp.status_code} == 409">
<return>
<status status="PASS" start="2026-05-25T01:55:25.215623" elapsed="0.000044"/>
</return>
<status status="PASS" start="2026-05-25T01:55:25.209848" elapsed="0.005864"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.209818" elapsed="0.005930"/>
</if>
<kw name="Log" owner="BuiltIn">
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:25.215966" elapsed="0.000031"/>
</kw>
<kw name="Fail" owner="BuiltIn">
<arg>The request failed with code ${resp.status_code}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:25.216230" elapsed="0.000029"/>
</kw>
<arg>openflow%3A${dpid_id}</arg>
<arg>${flow.table_id}</arg>
<arg>${flow.id}</arg>
<doc>Remove flow and verify</doc>
<status status="PASS" start="2026-05-25T01:55:25.187193" elapsed="0.029150"/>
</kw>
<arg>3s</arg>
<arg>1s</arg>
<arg>Remove Flow From Controller And Verify</arg>
<arg>openflow%3A${dpid_id}</arg>
<arg>${flow.table_id}</arg>
<arg>${flow.id}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:25.186565" elapsed="0.029849"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Validate Switch Output" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:25.231160" elapsed="0.002020"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:25.229033" elapsed="0.004186"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.229014" elapsed="0.004229"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:25.235450" elapsed="0.002212"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:25.233297" elapsed="0.004404"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.233280" elapsed="0.004446"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:25.239872" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:25.237780" elapsed="0.002190"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.237764" elapsed="0.002231"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:25.243293" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:25.240051" elapsed="0.003309"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.240035" elapsed="0.003349"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:25.228800" elapsed="0.014631"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:25.246565" elapsed="0.000125"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:25.243906" elapsed="0.002818"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.243888" elapsed="0.002861"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:25.250661" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:25.246803" elapsed="0.003913"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.246787" elapsed="0.003952"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:25.243667" elapsed="0.007119"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:25.254803" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-05-25T01:55:25.268467" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:25.268577" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:25.254667" elapsed="0.013939"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:25.251352" elapsed="0.017295"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:25.268898" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:25.268674" elapsed="0.000282"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.251334" elapsed="0.017643"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:25.271470" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:25.269039" elapsed="0.002492"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.272133" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:25.271737" elapsed="0.000428"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:25.271555" elapsed="0.000648"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.269022" elapsed="0.003206"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:25.272265" elapsed="0.000036"/>
</return>
<msg time="2026-05-25T01:55:25.272426" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${tmp}</var>
<arg>${switch}</arg>
<arg>/sbin/ifconfig</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:25.251095" elapsed="0.021358"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.272899" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:2f:dc:c0  txqueuelen 1000  (Ethernet)
        RX packets 7442  bytes 20309313 (20.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4866  bytes 1358761 (1.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 286  bytes 25024 (25.0 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 286  bytes 25024 (25.0 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

s1: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500
        inet6 fe80::bcc0:62ff:fe38:a247  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether be:c0:62:38:a2:47  txqueuelen 1000  (Ethernet)
        RX packets 5  bytes 550 (550.0 B)
        RX errors 0  dropped 5  overruns 0  frame 0
        TX packets 8  bytes 656 (656.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:25.272650" elapsed="0.000306"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:25.275856" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-05-25T01:55:25.328855" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:25.329133" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=7.675s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:25.275724" elapsed="0.053443"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:25.273575" elapsed="0.055656"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:25.329651" elapsed="0.000094"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:25.329275" elapsed="0.000509"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.273542" elapsed="0.056264"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:25.332534" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:25.329885" elapsed="0.002711"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.333252" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=7.675s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:25.332810" elapsed="0.000470"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:25.332620" elapsed="0.000698"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.329862" elapsed="0.003478"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:25.333382" elapsed="0.000043"/>
</return>
<msg time="2026-05-25T01:55:25.333566" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=7.675s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:25.273277" elapsed="0.060348"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.334126" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=7.675s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:25.333831" elapsed="0.000345"/>
</kw>
<for flavor="IN">
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:25.334788" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:25.334519" elapsed="0.000328"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.334504" elapsed="0.000367"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:25.335449" elapsed="0.000461"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:25.334924" elapsed="0.001028"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.334909" elapsed="0.001069"/>
</if>
<var name="${str}">dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=NORMAL</var>
<status status="PASS" start="2026-05-25T01:55:25.334472" elapsed="0.001528"/>
</iter>
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:25.336502" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:25.336238" elapsed="0.000322"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.336223" elapsed="0.000361"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:25.336886" elapsed="0.000431"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:25.336637" elapsed="0.000722"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.336621" elapsed="0.000762"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-05-25T01:55:25.336193" elapsed="0.001213"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-05-25T01:55:25.334240" elapsed="0.003194"/>
</for>
<arg>${test_switch}</arg>
<arg>${test_switch.dump_all_flows}</arg>
<arg>${test_switch.flow_validations}</arg>
<arg>false</arg>
<doc>A generic keyword that will execute one command on the switch, and check for each string in the @{validations} argument.  There is a boolean flag ${should_exist} that can be used to check that the validations are or are NOT in the output of the command executed.</doc>
<status status="PASS" start="2026-05-25T01:55:25.224479" elapsed="0.113013"/>
</kw>
<arg>3s</arg>
<arg>1s</arg>
<arg>Validate Switch Output</arg>
<arg>${test_switch}</arg>
<arg>${test_switch.dump_all_flows}</arg>
<arg>${test_switch.flow_validations}</arg>
<arg>false</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:25.216708" elapsed="0.120842"/>
</kw>
<arg>${TEST_NAME}</arg>
<arg>200</arg>
<arg>361</arg>
<arg>9</arg>
<status status="PASS" start="2026-05-25T01:55:24.156363" elapsed="1.181268"/>
</kw>
<doc>OF1.3 OFPP_NORMAL = 0xfffffffa, /* Process with normal L2/L3 switching. */</doc>
<tag>normal</tag>
<status status="PASS" start="2026-05-25T01:55:24.154939" elapsed="1.182838"/>
</test>
<test id="s1-s4-s2-t4" name="FLOOD" line="65">
<kw name="Create And Remove Flow">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.341398" level="INFO">${ethernet_match_dict} = {'type': '0x800', 'destination': 'ff:ff:ff:ff:ff:ff', 'source': '00:ab:cd:ef:01:23'}</msg>
<var>${ethernet_match_dict}</var>
<arg>type=${eth_type}</arg>
<arg>destination=${eth_dst}</arg>
<arg>source=${eth_src}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:25.340459" elapsed="0.000975"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.342367" level="INFO">${ipv4_match_dict} = {'source': '11.3.0.0/16', 'destination': '99.0.0.0/8'}</msg>
<var>${ipv4_match_dict}</var>
<arg>source=${ipv4_src}</arg>
<arg>destination=${ipv4_dst}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:25.341684" elapsed="0.000716"/>
</kw>
<kw name="Create Inventory Flow" owner="FlowLib">
<kw name="Make Inventory Flow" owner="FlowLib">
<msg time="2026-05-25T01:55:25.344315" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt;</msg>
<var>${flow}</var>
<doc>Robot Keyword to create and return an instance of the Flow
class.</doc>
<status status="PASS" start="2026-05-25T01:55:25.344164" elapsed="0.000179"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:25.344394" elapsed="0.000045"/>
</return>
<msg time="2026-05-25T01:55:25.344563" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt;</msg>
<var>${flow}</var>
<doc>Calls FlowLib.Make_Inventory_Flow function and initializes and sanitizes
the basic flow elements that can be given to flow:inventory</doc>
<status status="PASS" start="2026-05-25T01:55:25.342801" elapsed="0.001788"/>
</kw>
<kw name="Set &quot;${flow}&quot; &quot;table_id&quot; With &quot;${table_id}&quot;" owner="FlowLib" source_name="Set &quot;${flow}&quot; &quot;${property}&quot; With &quot;${property_val}&quot;">
<if>
<branch type="IF" condition="&quot;table_id&quot; != &quot;${property}&quot; and &quot;cookie_mask&quot; != &quot;${property}&quot;">
<kw name="Replace String" owner="String">
<var>${property}</var>
<arg>${property}</arg>
<arg>_</arg>
<arg>-</arg>
<doc>Replaces ``search_for`` in the given ``string`` with ``replace_with``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:25.352419" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:25.352035" elapsed="0.000457"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.353044" level="INFO">${property} = table_id</msg>
<var>${property}</var>
<arg>${property}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:25.352704" elapsed="0.000394"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:25.352517" elapsed="0.000620"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.352009" elapsed="0.001150"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:25.360587" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2414e0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:25.358036" elapsed="0.002581"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:25.362592" elapsed="0.000334"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:25.360834" elapsed="0.002150"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:25.363573" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.363218" elapsed="0.000385"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:25.363801" elapsed="0.000165"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:25.364023" elapsed="0.000079"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:25.357571" elapsed="0.006653"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:25.402594" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc243e70&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:25.399680" elapsed="0.002949"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.402853" elapsed="0.000499"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:25.403912" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.403561" elapsed="0.000380"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:25.404163" elapsed="0.000168"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.406796" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:25.404528" elapsed="0.002318"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:25.406897" elapsed="0.000044"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:25.398796" elapsed="0.008252"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:25.407339" elapsed="0.000191"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:25.407580" elapsed="0.000026"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-05-25T01:55:25.349787" elapsed="0.057920"/>
</kw>
<kw name="Set &quot;${flow}&quot; &quot;id&quot; With &quot;${flow_id}&quot;" owner="FlowLib" source_name="Set &quot;${flow}&quot; &quot;${property}&quot; With &quot;${property_val}&quot;">
<if>
<branch type="IF" condition="&quot;table_id&quot; != &quot;${property}&quot; and &quot;cookie_mask&quot; != &quot;${property}&quot;">
<kw name="Replace String" owner="String">
<msg time="2026-05-25T01:55:25.412883" level="INFO">${property} = id</msg>
<var>${property}</var>
<arg>${property}</arg>
<arg>_</arg>
<arg>-</arg>
<doc>Replaces ``search_for`` in the given ``string`` with ``replace_with``.</doc>
<status status="PASS" start="2026-05-25T01:55:25.412651" elapsed="0.000259"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:25.412342" elapsed="0.000611"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${property}</var>
<arg>${property}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:25.413203" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:25.412979" elapsed="0.000281"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.412319" elapsed="0.000962"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:25.420317" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fc900&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:25.418051" elapsed="0.002294"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:25.421093" elapsed="0.000310"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:25.420561" elapsed="0.000898"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:25.422024" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.421684" elapsed="0.000369"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:25.422276" elapsed="0.000163"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:25.422490" elapsed="0.000036"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:25.417627" elapsed="0.004996"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:25.454881" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc242cf0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:25.452462" elapsed="0.002455"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.455171" elapsed="0.000454"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:25.456220" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;81&lt;/id&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.455834" elapsed="0.000416"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:25.456444" elapsed="0.000164"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.459058" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;81&lt;/id&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:25.456802" elapsed="0.002338"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:25.459191" elapsed="0.000045"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:25.451685" elapsed="0.007662"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:25.459550" elapsed="0.000184"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:25.459783" elapsed="0.000026"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-05-25T01:55:25.411989" elapsed="0.047916"/>
</kw>
<kw name="Set &quot;${flow}&quot; &quot;priority&quot; With &quot;${priority}&quot;" owner="FlowLib" source_name="Set &quot;${flow}&quot; &quot;${property}&quot; With &quot;${property_val}&quot;">
<if>
<branch type="IF" condition="&quot;table_id&quot; != &quot;${property}&quot; and &quot;cookie_mask&quot; != &quot;${property}&quot;">
<kw name="Replace String" owner="String">
<msg time="2026-05-25T01:55:25.465140" level="INFO">${property} = priority</msg>
<var>${property}</var>
<arg>${property}</arg>
<arg>_</arg>
<arg>-</arg>
<doc>Replaces ``search_for`` in the given ``string`` with ``replace_with``.</doc>
<status status="PASS" start="2026-05-25T01:55:25.464874" elapsed="0.000294"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:25.464558" elapsed="0.000654"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${property}</var>
<arg>${property}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:25.465431" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:25.465240" elapsed="0.000246"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:25.464535" elapsed="0.000972"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:25.472293" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc242110&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:25.470047" elapsed="0.002274"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:25.472932" elapsed="0.000339"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:25.472534" elapsed="0.000792"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:25.473870" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;81&lt;/id&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.473521" elapsed="0.000378"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:25.474118" elapsed="0.000172"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:25.474342" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:25.469619" elapsed="0.004930"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:25.506737" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc240ae0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:25.504516" elapsed="0.002250"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.506962" elapsed="0.000475"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:25.507967" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;81&lt;/id&gt;&lt;priority&gt;255&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.507640" elapsed="0.000357"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:25.508224" elapsed="0.000162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.510792" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;81&lt;/id&gt;&lt;priority&gt;255&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:25.508579" elapsed="0.002262"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:25.510885" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:25.504004" elapsed="0.007006"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:25.511241" elapsed="0.000186"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:25.511477" elapsed="0.000027"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-05-25T01:55:25.464228" elapsed="0.047366"/>
</kw>
<kw name="Clear Flow Actions" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:25.518675" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc241800&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:25.516466" elapsed="0.002237"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:25.519325" elapsed="0.000307"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:25.518908" elapsed="0.000779"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:25.520217" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;81&lt;/id&gt;&lt;priority&gt;255&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.519881" elapsed="0.000366"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:25.520439" elapsed="0.000159"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:25.520647" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>instructions/instruction</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:25.516057" elapsed="0.004710"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:25.520813" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<doc>Will clean out any existing flow actions in the given &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object</doc>
<status status="PASS" start="2026-05-25T01:55:25.511807" elapsed="0.009120"/>
</kw>
<kw name="Set Flow Output Action" owner="FlowLib">
<kw name="Set Flow Action" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:25.530585" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc0d74c0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:25.528194" elapsed="0.002420"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:25.531237" elapsed="0.000302"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:25.530819" elapsed="0.000776"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:25.532130" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;81&lt;/id&gt;&lt;priority&gt;255&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.531788" elapsed="0.000372"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:25.532352" elapsed="0.000159"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:25.532620" elapsed="0.000031"/>
</return>
<arg>${flow}</arg>
<arg>instruction</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:25.527796" elapsed="0.004949"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:25.566415" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc242ed0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:25.564182" elapsed="0.002262"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.566638" elapsed="0.000458"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:25.567633" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction /&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;81&lt;/id&gt;&lt;priority&gt;255&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.567303" elapsed="0.000360"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:25.567855" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.570438" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction /&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;81&lt;/id&gt;&lt;priority&gt;255&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:25.568238" elapsed="0.002250"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:25.570532" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>instruction</arg>
<arg>${EMPTY}</arg>
<arg>instructions</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:25.561903" elapsed="0.008754"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:25.602489" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc241c60&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:25.600270" elapsed="0.002248"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.602713" elapsed="0.000470"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:25.603719" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;81&lt;/id&gt;&lt;priority&gt;255&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.603388" elapsed="0.000363"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:25.603943" elapsed="0.000194"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.606578" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;81&lt;/id&gt;&lt;priority&gt;255&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:25.604334" elapsed="0.002304"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:25.606682" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>order</arg>
<arg>${instruction_order}</arg>
<arg>instructions/instruction</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:25.599769" elapsed="0.007037"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:25.640175" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc241990&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:25.637867" elapsed="0.002337"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.640400" elapsed="0.000434"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:25.641409" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions /&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;81&lt;/id&gt;&lt;priority&gt;255&lt;/priori...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.641037" elapsed="0.000402"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:25.641628" elapsed="0.000178"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.644389" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions /&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;81&lt;/id&gt;&lt;priority&gt;255&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:25.641995" elapsed="0.002489"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:25.644530" elapsed="0.000031"/>
</return>
<arg>${flow}</arg>
<arg>apply-actions</arg>
<arg>${EMPTY}</arg>
<arg>instructions/instruction</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:25.635616" elapsed="0.009043"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:25.679447" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc243830&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:25.677227" elapsed="0.002248"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.679668" elapsed="0.000453"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:25.680661" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action /&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;81&lt;/...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.680326" elapsed="0.000365"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:25.680890" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.684737" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action /&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;81&lt;/id&gt;&lt;priority&gt;255&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:25.681341" elapsed="0.003447"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:25.684835" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>action</arg>
<arg>${EMPTY}</arg>
<arg>instructions/instruction/apply-actions</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:25.675009" elapsed="0.009952"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:25.716903" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc240c70&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:25.714595" elapsed="0.002341"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.717165" elapsed="0.000459"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:25.718250" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.717863" elapsed="0.000418"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:25.718477" elapsed="0.000172"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.721037" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;81&lt;/id&gt;&lt;priority&gt;255&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:25.718844" elapsed="0.002261"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:25.721161" elapsed="0.000043"/>
</return>
<arg>${flow}</arg>
<arg>order</arg>
<arg>${action_order}</arg>
<arg>instructions/instruction/apply-actions/action</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:25.713945" elapsed="0.007363"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:25.756289" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2ff740&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:25.753962" elapsed="0.002361"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.756533" elapsed="0.000456"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:25.757593" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action /&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.757222" elapsed="0.000401"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:25.757908" elapsed="0.000188"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.760669" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action /&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;81&lt;/id&gt;&lt;priority&gt;255&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:25.758293" elapsed="0.002428"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:25.760770" elapsed="0.000042"/>
</return>
<arg>${flow}</arg>
<arg>${action}</arg>
<arg>${action_val}</arg>
<arg>instructions/instruction/apply-actions/action</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:25.753255" elapsed="0.007660"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:25.760970" elapsed="0.000027"/>
</return>
<arg>${flow}</arg>
<arg>${instruction_order}</arg>
<arg>${action_order}</arg>
<arg>output-action</arg>
<doc>Will remove the instruction element first, then add the proper xml structure
to implement the action as given in the arguments</doc>
<status status="PASS" start="2026-05-25T01:55:25.521588" elapsed="0.239523"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:25.792821" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc241800&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:25.790557" elapsed="0.002294"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.793051" elapsed="0.000470"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:25.794144" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.793725" elapsed="0.000450"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:25.794366" elapsed="0.000162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.796891" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;81&lt;/id&gt;&lt;priority&gt;255&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:25.794718" elapsed="0.002226"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:25.796989" elapsed="0.000036"/>
</return>
<arg>${flow}</arg>
<arg>output-node-connector</arg>
<arg>${output_port}</arg>
<arg>instructions/instruction/apply-actions/action/output-action</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:25.789983" elapsed="0.007158"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:25.797198" elapsed="0.000026"/>
</return>
<arg>${flow}</arg>
<arg>0</arg>
<arg>0</arg>
<arg>${output_port}</arg>
<status status="PASS" start="2026-05-25T01:55:25.521142" elapsed="0.276173"/>
</kw>
<kw name="Set Flow Ethernet Match" owner="FlowLib">
<kw name="Clear Flow Matches" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:25.808726" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fc680&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:25.806532" elapsed="0.002222"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:25.809377" elapsed="0.000305"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:25.808966" elapsed="0.000771"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:25.810305" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.809941" elapsed="0.000395"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:25.810525" elapsed="0.000161"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:25.810734" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>match/${match_element}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:25.806125" elapsed="0.004730"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:25.810963" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>match/ethernet-match</arg>
<doc>Will clean out any existing flow matches in the given &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object</doc>
<status status="PASS" start="2026-05-25T01:55:25.801858" elapsed="0.009242"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:25.844101" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc242b60&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:25.841879" elapsed="0.002251"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.844326" elapsed="0.000431"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:25.845326" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.844959" elapsed="0.000397"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:25.845548" elapsed="0.000162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.848103" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match /&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;81&lt;/id&gt;&lt;priority&gt;255&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:25.845922" elapsed="0.002236"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:25.848202" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>ethernet-match</arg>
<arg>${EMPTY}</arg>
<arg>match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:25.839525" elapsed="0.008801"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:25.848723" level="INFO">${type} = 0x800</msg>
<var>${type}</var>
<arg>${match_value_dict}</arg>
<arg>type</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:25.848533" elapsed="0.000216"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:25.882039" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fe570&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:25.879821" elapsed="0.002265"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.882285" elapsed="0.000435"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:25.883289" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.882921" elapsed="0.000399"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:25.883509" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.886045" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type /&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;81&lt;/id&gt;&lt;priority&gt;255&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:25.883858" elapsed="0.002262"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:25.886165" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>ethernet-type</arg>
<arg>${EMPTY}</arg>
<arg>match/ethernet-match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:25.877606" elapsed="0.008683"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:25.917973" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fc180&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:25.915747" elapsed="0.002254"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.918218" elapsed="0.000438"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:25.919237" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.918858" elapsed="0.000410"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:25.919511" elapsed="0.000163"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.922199" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;81&lt;/id&gt;&lt;priority&gt;255&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:25.919864" elapsed="0.002390"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:25.922299" elapsed="0.000031"/>
</return>
<arg>${flow}</arg>
<arg>type</arg>
<arg>${type}</arg>
<arg>match/ethernet-match/ethernet-type</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:25.915263" elapsed="0.007164"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:25.922817" level="INFO">${src} = 00:ab:cd:ef:01:23</msg>
<var>${src}</var>
<arg>${match_value_dict}</arg>
<arg>source</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:25.922632" elapsed="0.000211"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:25.956210" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc240ae0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:25.953946" elapsed="0.002292"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.956435" elapsed="0.000438"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:25.957449" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.957091" elapsed="0.000388"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:25.957670" elapsed="0.000172"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.960252" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source /&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;81&lt;/id&gt;&lt;priority&gt;255&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:25.958033" elapsed="0.002280"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:25.960360" elapsed="0.000034"/>
</return>
<arg>${flow}</arg>
<arg>ethernet-source</arg>
<arg>${EMPTY}</arg>
<arg>match/ethernet-match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:25.951714" elapsed="0.008782"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:25.992183" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2ff6a0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:25.989948" elapsed="0.002264"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.992405" elapsed="0.000435"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:25.993418" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:25.993042" elapsed="0.000406"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:25.993640" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:25.996203" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;81&lt;/id&gt;&lt;priority&gt;255&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:25.994018" elapsed="0.002240"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:25.996348" elapsed="0.000032"/>
</return>
<arg>${flow}</arg>
<arg>address</arg>
<arg>${src}</arg>
<arg>match/ethernet-match/ethernet-source</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:25.989461" elapsed="0.007015"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:25.996866" level="INFO">${dst} = ff:ff:ff:ff:ff:ff</msg>
<var>${dst}</var>
<arg>${match_value_dict}</arg>
<arg>destination</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:25.996682" elapsed="0.000209"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:26.030008" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fcc20&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:26.027773" elapsed="0.002264"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.030248" elapsed="0.000437"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:26.031267" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.030888" elapsed="0.000410"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:26.031489" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.034190" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination /&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;81&lt;/id&gt;&lt;priority&gt;255&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:26.031837" elapsed="0.002410"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.034292" elapsed="0.000031"/>
</return>
<arg>${flow}</arg>
<arg>ethernet-destination</arg>
<arg>${EMPTY}</arg>
<arg>match/ethernet-match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:26.025541" elapsed="0.008879"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:26.065832" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfc1c9a0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:26.063574" elapsed="0.002310"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.066096" elapsed="0.000439"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:26.067124" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.066737" elapsed="0.000418"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:26.067346" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.069847" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;81&lt;/id&gt;&lt;priority&gt;255&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:26.067693" elapsed="0.002225"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.069963" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>address</arg>
<arg>${dst}</arg>
<arg>match/ethernet-match/ethernet-destination</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:26.063109" elapsed="0.006993"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.070158" elapsed="0.000026"/>
</return>
<arg>${flow}</arg>
<arg>${ethernet_match_dict}</arg>
<doc>Specific keyword for adding an ethernet match rules where the elements are given
in key/value pairs inside the ${match_value_dict} argument. This keyword will also remove any
existing ethernet-match elements from the flow before adding</doc>
<status status="PASS" start="2026-05-25T01:55:25.801414" elapsed="0.268905"/>
</kw>
<kw name="Set Flow IPv4 Match" owner="FlowLib">
<kw name="Clear Flow Matches" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:26.081629" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2feed0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:26.079423" elapsed="0.002234"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:26.082315" elapsed="0.000305"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:26.081898" elapsed="0.000776"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:26.083249" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.082866" elapsed="0.000413"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:26.083469" elapsed="0.000160"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.083678" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>match/${match_element}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:26.079002" elapsed="0.004796"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.083845" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>match/ipv4-source</arg>
<doc>Will clean out any existing flow matches in the given &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object</doc>
<status status="PASS" start="2026-05-25T01:55:26.074815" elapsed="0.009143"/>
</kw>
<kw name="Clear Flow Matches" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:26.091220" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfe49710&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:26.088981" elapsed="0.002267"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:26.091837" elapsed="0.000319"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:26.091453" elapsed="0.000759"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:26.092767" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.092405" elapsed="0.000392"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:26.092987" elapsed="0.000174"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.093212" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>match/${match_element}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:26.088573" elapsed="0.004758"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.093379" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>match/ipv4-destination</arg>
<doc>Will clean out any existing flow matches in the given &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object</doc>
<status status="PASS" start="2026-05-25T01:55:26.084190" elapsed="0.009301"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:26.093867" level="INFO">${src} = 11.3.0.0/16</msg>
<var>${src}</var>
<arg>${match_value_dict}</arg>
<arg>source</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:26.093685" elapsed="0.000235"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:26.124962" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fed40&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:26.122752" elapsed="0.002238"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.125199" elapsed="0.000431"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:26.126241" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.125832" elapsed="0.000439"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:26.126462" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.128987" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;81&lt;/id&gt;&lt;priority&gt;255&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:26.126814" elapsed="0.002286"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.129147" elapsed="0.000031"/>
</return>
<arg>${flow}</arg>
<arg>ipv4-source</arg>
<arg>${src}</arg>
<arg>match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:26.122287" elapsed="0.006987"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:26.129664" level="INFO">${dst} = 99.0.0.0/8</msg>
<var>${dst}</var>
<arg>${match_value_dict}</arg>
<arg>destination</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:26.129479" elapsed="0.000210"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:26.160823" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fdd00&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:26.158608" elapsed="0.002243"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.161044" elapsed="0.000446"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:26.162102" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.161693" elapsed="0.000441"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:26.162326" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.165002" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;81&lt;/id&gt;&lt;priority&gt;255&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:26.162674" elapsed="0.002385"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.165119" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>ipv4-destination</arg>
<arg>${dst}</arg>
<arg>match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc3e9410&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:26.158146" elapsed="0.007097"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.165296" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>${ipv4_match_dict}</arg>
<doc>Specific keyword for adding an ipv4 match rules where the elements are given
in key/value pairs inside the ${match_value_dict} argument. This keyword will also remove any
existing ipv4 match elements from the flow before adding</doc>
<status status="PASS" start="2026-05-25T01:55:26.074385" elapsed="0.091025"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.167757" level="INFO">Flow XML is &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;81&lt;/id&gt;&lt;priority&gt;255&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>Flow XML is ${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:26.165599" elapsed="0.002215"/>
</kw>
<kw name="Call Method" owner="BuiltIn">
<arg>${test_switch}</arg>
<arg>create_flow_match_elements</arg>
<arg>${flow.xml}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-05-25T01:55:26.168006" elapsed="0.002343"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.172580" level="INFO">['dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=FLOOD', 'table=200']</msg>
<arg>${test_switch.flow_validations}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:26.170548" elapsed="0.002078"/>
</kw>
<kw name="Get Switch Datapath ID" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:26.175668" elapsed="0.001997"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:26.173574" elapsed="0.004128"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.173552" elapsed="0.004176"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:26.179879" elapsed="0.002219"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:26.177783" elapsed="0.004399"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.177767" elapsed="0.004444"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:26.184342" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:26.182268" elapsed="0.002131"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.182250" elapsed="0.002173"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:26.186579" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:26.184478" elapsed="0.002160"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.184461" elapsed="0.002201"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:26.173333" elapsed="0.013376"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:26.189276" elapsed="0.000128"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:26.187192" elapsed="0.002246"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.187174" elapsed="0.002288"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:26.191806" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:26.189515" elapsed="0.002345"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.189499" elapsed="0.002384"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:26.186941" elapsed="0.004990"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:26.196502" level="INFO">Executing command '/sbin/ifconfig s1 | grep -o -E "([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}"'.</msg>
<msg time="2026-05-25T01:55:26.209084" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:26.209215" level="INFO">${output} = be:c0:62:38:a2:47</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:26.196368" elapsed="0.012882"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:26.194292" elapsed="0.015010"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:26.209606" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:26.209337" elapsed="0.000346"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.194273" elapsed="0.015440"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:26.212770" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:26.209788" elapsed="0.003063"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.213579" level="INFO">${output} = be:c0:62:38:a2:47</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:26.213169" elapsed="0.000446"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:26.212885" elapsed="0.000779"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.209766" elapsed="0.003928"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:26.213741" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:55:26.214025" level="INFO">${switch.datapath_id_output_string} = be:c0:62:38:a2:47</msg>
<var>${switch.datapath_id_output_string}</var>
<arg>${switch}</arg>
<arg>${switch.datapath_id_output_command}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:26.192231" elapsed="0.021867"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.218190" level="INFO">be:c0:62:38:a2:47</msg>
<arg>${switch.datapath_id_output_string}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:26.214384" elapsed="0.003872"/>
</kw>
<kw name="Call Method" owner="BuiltIn">
<arg>${switch}</arg>
<arg>update_datapath_id</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-05-25T01:55:26.218524" elapsed="0.000390"/>
</kw>
<return>
<value>${switch.datapath_id}</value>
<status status="PASS" start="2026-05-25T01:55:26.218982" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:55:26.221963" level="INFO">${dpid_id} = 209733490876999</msg>
<var>${dpid_id}</var>
<arg>${test_switch}</arg>
<doc>Using the connection index for the given switch, will execute the command string
"datapath_id_output_command" which will store the output in switch.datapath_id_output_string.
The switch object method "update_datapath_id" is called which is assumed to place the ODL
friendly (decimal) version of the datapath id in to switch.datapath_id and the value is also
returned from this keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:26.172841" elapsed="0.049162"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Add Flow To Controller And Verify" owner="FlowLib">
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:26.239524" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=81 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=81 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node017ncy2bg6j4jtalpiszt0cnfu11.node0', 'Content-Length': '665', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;81&lt;/id&gt;&lt;priority&gt;255&lt;/priority&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:55:26.239736" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=81 
 status=201, reason=Created 
 headers={'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:26.239967" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>headers=${HEADERS_XML}</arg>
<arg>data=${flow_body}</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:26.229296" elapsed="0.010730"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.245575" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:26.240513" elapsed="0.005159"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:26.251972" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=81?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=81?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node017ncy2bg6j4jtalpiszt0cnfu11.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:26.252539" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=81?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '664'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;81&lt;/id&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;priority&gt;255&lt;/priority&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:55:26.252656" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${ACCEPT_XML}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:26.246111" elapsed="0.006571"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.255315" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;81&lt;/id&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;priority&gt;255&lt;/priority&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;FLOOD&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:26.252885" elapsed="0.002511"/>
</kw>
<kw name="Compare Xml" owner="Common">
<arg>${flow_body}</arg>
<arg>${resp.text}</arg>
<doc>compare the two XML files to see if they contain the same data
but could be if different order.
It just split the xml in to lines and just check the line is in
the other file</doc>
<status status="PASS" start="2026-05-25T01:55:26.255674" elapsed="0.003069"/>
</kw>
<arg>${flow.xml}</arg>
<arg>openflow%3A${dpid_id}</arg>
<arg>${flow.table_id}</arg>
<arg>${flow.id}</arg>
<doc>Push flow through REST-API and verify in data-store</doc>
<status status="PASS" start="2026-05-25T01:55:26.223037" elapsed="0.035796"/>
</kw>
<arg>3s</arg>
<arg>1s</arg>
<arg>Add Flow To Controller And Verify</arg>
<arg>${flow.xml}</arg>
<arg>openflow%3A${dpid_id}</arg>
<arg>${flow.table_id}</arg>
<arg>${flow.id}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:26.222319" elapsed="0.036591"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Validate Switch Output" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:26.275395" elapsed="0.001998"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:26.273292" elapsed="0.004140"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.273272" elapsed="0.004185"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:26.279605" elapsed="0.002188"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:26.277511" elapsed="0.004322"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.277494" elapsed="0.004364"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:26.284010" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:26.281912" elapsed="0.002167"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.281896" elapsed="0.002208"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:26.286244" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:26.284160" elapsed="0.002142"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.284143" elapsed="0.002183"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:26.273040" elapsed="0.013334"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:26.288943" elapsed="0.000134"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:26.286877" elapsed="0.002234"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.286859" elapsed="0.002277"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:26.291283" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:26.289190" elapsed="0.002145"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.289173" elapsed="0.002185"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:26.286605" elapsed="0.004800"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:26.294384" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-05-25T01:55:26.306736" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:26.306866" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:26.294253" elapsed="0.012652"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:26.291937" elapsed="0.015021"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:26.307452" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:26.306994" elapsed="0.000587"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.291919" elapsed="0.015709"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:26.312518" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:26.307751" elapsed="0.004898"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.313810" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:26.313139" elapsed="0.000735"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:26.312702" elapsed="0.001252"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.307715" elapsed="0.006340"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:26.314164" elapsed="0.000068"/>
</return>
<msg time="2026-05-25T01:55:26.314501" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${tmp}</var>
<arg>${switch}</arg>
<arg>/sbin/ifconfig</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:26.291685" elapsed="0.022876"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.315339" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:2f:dc:c0  txqueuelen 1000  (Ethernet)
        RX packets 7461  bytes 20311519 (20.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4889  bytes 1362975 (1.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 286  bytes 25024 (25.0 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 286  bytes 25024 (25.0 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

s1: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500
        inet6 fe80::bcc0:62ff:fe38:a247  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether be:c0:62:38:a2:47  txqueuelen 1000  (Ethernet)
        RX packets 5  bytes 550 (550.0 B)
        RX errors 0  dropped 5  overruns 0  frame 0
        TX packets 8  bytes 656 (656.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:26.314988" elapsed="0.000408"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:26.318187" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-05-25T01:55:26.366745" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:26.366956" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=8.713s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.120s, table=200, n_packet...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:26.318039" elapsed="0.048975"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:26.315949" elapsed="0.051189"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:26.367623" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:26.367198" elapsed="0.000549"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.315931" elapsed="0.051862"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:26.372654" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:26.367915" elapsed="0.004871"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.373937" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=8.713s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.120s, table=200, n_packet...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:26.373280" elapsed="0.000768"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:26.372839" elapsed="0.001412"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.367879" elapsed="0.006425"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:26.374382" elapsed="0.000062"/>
</return>
<msg time="2026-05-25T01:55:26.374716" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=8.713s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.120s, table=200, n_packet...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:26.315675" elapsed="0.059100"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.375385" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=8.713s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.120s, table=200, n_packets=0, n_bytes=0, priority=255,ip,dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=FLOOD</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:26.375138" elapsed="0.000294"/>
</kw>
<for flavor="IN">
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:26.376002" elapsed="0.000549"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:26.375744" elapsed="0.000849"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.375730" elapsed="0.000887"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:26.376930" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:26.376671" elapsed="0.000316"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.376655" elapsed="0.000355"/>
</if>
<var name="${str}">dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=FLOOD</var>
<status status="PASS" start="2026-05-25T01:55:26.375698" elapsed="0.001334"/>
</iter>
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:26.377491" elapsed="0.000317"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:26.377237" elapsed="0.000611"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.377223" elapsed="0.000649"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:26.378212" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:26.377925" elapsed="0.000345"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.377909" elapsed="0.000384"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-05-25T01:55:26.377193" elapsed="0.001122"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-05-25T01:55:26.375491" elapsed="0.002851"/>
</for>
<arg>${test_switch}</arg>
<arg>${test_switch.dump_all_flows}</arg>
<arg>${test_switch.flow_validations}</arg>
<doc>A generic keyword that will execute one command on the switch, and check for each string in the @{validations} argument.  There is a boolean flag ${should_exist} that can be used to check that the validations are or are NOT in the output of the command executed.</doc>
<status status="PASS" start="2026-05-25T01:55:26.268769" elapsed="0.109628"/>
</kw>
<arg>3s</arg>
<arg>1s</arg>
<arg>Validate Switch Output</arg>
<arg>${test_switch}</arg>
<arg>${test_switch.dump_all_flows}</arg>
<arg>${test_switch.flow_validations}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:26.259234" elapsed="0.119216"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Remove Flow From Controller And Verify" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:26.393985" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=81 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=81 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node017ncy2bg6j4jtalpiszt0cnfu11.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:26.394045" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=81 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:26.394168" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:26.383521" elapsed="0.010673"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.399560" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:26.394396" elapsed="0.005262"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:26.405816" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=81?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=81?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node017ncy2bg6j4jtalpiszt0cnfu11.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:26.405930" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=81?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/yang-data+json', 'Content-Length': '242'} 
 body={
  "errors": {
    "error": [
      {
        "error-tag": "data-missing",
        "error-message": "Request could not be completed because the relevant data model content does not exist",
        "error-type": "protocol"
      }
    ]
  }
} 
 </msg>
<msg time="2026-05-25T01:55:26.406046" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:26.400022" elapsed="0.006071"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code} == 404 or ${resp.status_code} == 409">
<return>
<status status="PASS" start="2026-05-25T01:55:26.410286" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-05-25T01:55:26.406211" elapsed="0.004134"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.406190" elapsed="0.004179"/>
</if>
<kw name="Log" owner="BuiltIn">
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:26.410523" elapsed="0.000022"/>
</kw>
<kw name="Fail" owner="BuiltIn">
<arg>The request failed with code ${resp.status_code}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:26.410694" elapsed="0.000021"/>
</kw>
<arg>openflow%3A${dpid_id}</arg>
<arg>${flow.table_id}</arg>
<arg>${flow.id}</arg>
<doc>Remove flow and verify</doc>
<status status="PASS" start="2026-05-25T01:55:26.379230" elapsed="0.031540"/>
</kw>
<arg>3s</arg>
<arg>1s</arg>
<arg>Remove Flow From Controller And Verify</arg>
<arg>openflow%3A${dpid_id}</arg>
<arg>${flow.table_id}</arg>
<arg>${flow.id}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:26.378662" elapsed="0.032159"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Validate Switch Output" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:26.427254" elapsed="0.001995"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:26.425170" elapsed="0.004117"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.425151" elapsed="0.004161"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:26.431463" elapsed="0.002185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:26.429366" elapsed="0.004321"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.429350" elapsed="0.004362"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:26.435844" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:26.433768" elapsed="0.002132"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.433751" elapsed="0.002172"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:26.438077" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:26.435978" elapsed="0.002159"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.435961" elapsed="0.002199"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:26.424920" elapsed="0.013287"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:26.440760" elapsed="0.000115"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:26.438683" elapsed="0.002225"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.438665" elapsed="0.002267"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:26.443081" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:26.440986" elapsed="0.002149"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.440969" elapsed="0.002190"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:26.438447" elapsed="0.004759"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:26.445952" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-05-25T01:55:26.458479" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:26.458688" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:26.445824" elapsed="0.012927"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:26.443733" elapsed="0.015102"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:26.459358" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:26.458892" elapsed="0.000596"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.443715" elapsed="0.015821"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:26.463938" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:26.459662" elapsed="0.004358"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.464740" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:26.464331" elapsed="0.000450"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:26.464053" elapsed="0.000779"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.459625" elapsed="0.005237"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:26.464909" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:55:26.465138" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${tmp}</var>
<arg>${switch}</arg>
<arg>/sbin/ifconfig</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:26.443481" elapsed="0.021742"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.465841" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:2f:dc:c0  txqueuelen 1000  (Ethernet)
        RX packets 7471  bytes 20312851 (20.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4904  bytes 1366397 (1.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 286  bytes 25024 (25.0 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 286  bytes 25024 (25.0 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

s1: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500
        inet6 fe80::bcc0:62ff:fe38:a247  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether be:c0:62:38:a2:47  txqueuelen 1000  (Ethernet)
        RX packets 5  bytes 550 (550.0 B)
        RX errors 0  dropped 5  overruns 0  frame 0
        TX packets 8  bytes 656 (656.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:26.465494" elapsed="0.000426"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:26.470133" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-05-25T01:55:26.518649" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:26.518860" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=8.864s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:26.469918" elapsed="0.049000"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:26.466733" elapsed="0.052272"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:26.519541" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:26.519101" elapsed="0.000572"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.466707" elapsed="0.053013"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:26.524575" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:26.519847" elapsed="0.004860"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.525855" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=8.864s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:26.525198" elapsed="0.000719"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:26.524761" elapsed="0.001239"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.519809" elapsed="0.006309"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:26.526207" elapsed="0.000063"/>
</return>
<msg time="2026-05-25T01:55:26.526542" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=8.864s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:26.466349" elapsed="0.060251"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.527305" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=8.864s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:26.527024" elapsed="0.000326"/>
</kw>
<for flavor="IN">
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:26.527897" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:26.527641" elapsed="0.000314"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.527627" elapsed="0.000351"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:26.528294" elapsed="0.000318"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:26.528030" elapsed="0.000622"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.528015" elapsed="0.000660"/>
</if>
<var name="${str}">dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=FLOOD</var>
<status status="PASS" start="2026-05-25T01:55:26.527597" elapsed="0.001101"/>
</iter>
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:26.529154" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:26.528885" elapsed="0.000328"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.528871" elapsed="0.000365"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:26.529537" elapsed="0.000312"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:26.529288" elapsed="0.000601"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.529273" elapsed="0.000639"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-05-25T01:55:26.528841" elapsed="0.001093"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-05-25T01:55:26.527402" elapsed="0.002560"/>
</for>
<arg>${test_switch}</arg>
<arg>${test_switch.dump_all_flows}</arg>
<arg>${test_switch.flow_validations}</arg>
<arg>false</arg>
<doc>A generic keyword that will execute one command on the switch, and check for each string in the @{validations} argument.  There is a boolean flag ${should_exist} that can be used to check that the validations are or are NOT in the output of the command executed.</doc>
<status status="PASS" start="2026-05-25T01:55:26.419676" elapsed="0.110337"/>
</kw>
<arg>3s</arg>
<arg>1s</arg>
<arg>Validate Switch Output</arg>
<arg>${test_switch}</arg>
<arg>${test_switch.dump_all_flows}</arg>
<arg>${test_switch.flow_validations}</arg>
<arg>false</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:26.411027" elapsed="0.119108"/>
</kw>
<arg>${TEST_NAME}</arg>
<arg>200</arg>
<arg>81</arg>
<arg>255</arg>
<status status="PASS" start="2026-05-25T01:55:25.339689" elapsed="1.190514"/>
</kw>
<doc>OF1.3 OFPP_FLOOD = 0xfffffffb, /* All physical ports in VLAN, except input port and those blocked or link down. */</doc>
<tag>flood</tag>
<status status="PASS" start="2026-05-25T01:55:25.338476" elapsed="1.191857"/>
</test>
<test id="s1-s4-s2-t5" name="ALL" line="68">
<kw name="Create And Remove Flow">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.532254" level="INFO">${ethernet_match_dict} = {'type': '0x800', 'destination': 'ff:ff:ff:ff:ff:ff', 'source': '00:ab:cd:ef:01:23'}</msg>
<var>${ethernet_match_dict}</var>
<arg>type=${eth_type}</arg>
<arg>destination=${eth_dst}</arg>
<arg>source=${eth_src}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:26.531762" elapsed="0.000520"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.532890" level="INFO">${ipv4_match_dict} = {'source': '11.3.0.0/16', 'destination': '99.0.0.0/8'}</msg>
<var>${ipv4_match_dict}</var>
<arg>source=${ipv4_src}</arg>
<arg>destination=${ipv4_dst}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:26.532491" elapsed="0.000425"/>
</kw>
<kw name="Create Inventory Flow" owner="FlowLib">
<kw name="Make Inventory Flow" owner="FlowLib">
<msg time="2026-05-25T01:55:26.533546" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7f5abfec2250&gt;</msg>
<var>${flow}</var>
<doc>Robot Keyword to create and return an instance of the Flow
class.</doc>
<status status="PASS" start="2026-05-25T01:55:26.533423" elapsed="0.000149"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.533615" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:55:26.533760" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7f5abfec2250&gt;</msg>
<var>${flow}</var>
<doc>Calls FlowLib.Make_Inventory_Flow function and initializes and sanitizes
the basic flow elements that can be given to flow:inventory</doc>
<status status="PASS" start="2026-05-25T01:55:26.533116" elapsed="0.000669"/>
</kw>
<kw name="Set &quot;${flow}&quot; &quot;table_id&quot; With &quot;${table_id}&quot;" owner="FlowLib" source_name="Set &quot;${flow}&quot; &quot;${property}&quot; With &quot;${property_val}&quot;">
<if>
<branch type="IF" condition="&quot;table_id&quot; != &quot;${property}&quot; and &quot;cookie_mask&quot; != &quot;${property}&quot;">
<kw name="Replace String" owner="String">
<var>${property}</var>
<arg>${property}</arg>
<arg>_</arg>
<arg>-</arg>
<doc>Replaces ``search_for`` in the given ``string`` with ``replace_with``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:26.538582" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:26.538291" elapsed="0.000355"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.539154" level="INFO">${property} = table_id</msg>
<var>${property}</var>
<arg>${property}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:26.538849" elapsed="0.000332"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:26.538670" elapsed="0.000547"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.538273" elapsed="0.000966"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:26.546084" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fd1c0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:26.543866" elapsed="0.002248"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:26.546712" elapsed="0.000300"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:26.546323" elapsed="0.000759"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:26.547614" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.547280" elapsed="0.000362"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:26.547836" elapsed="0.000166"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.548051" elapsed="0.000043"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5abfec2250&gt;
object. The &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:26.543455" elapsed="0.004735"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:26.579356" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fcc20&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:26.577176" elapsed="0.002208"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.579578" elapsed="0.000431"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:26.580545" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.580224" elapsed="0.000350"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:26.580763" elapsed="0.000158"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.583309" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:26.581128" elapsed="0.002229"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.583401" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:26.576676" elapsed="0.006848"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:26.583761" elapsed="0.000185"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.583995" elapsed="0.000027"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-05-25T01:55:26.537977" elapsed="0.046158"/>
</kw>
<kw name="Set &quot;${flow}&quot; &quot;id&quot; With &quot;${flow_id}&quot;" owner="FlowLib" source_name="Set &quot;${flow}&quot; &quot;${property}&quot; With &quot;${property_val}&quot;">
<if>
<branch type="IF" condition="&quot;table_id&quot; != &quot;${property}&quot; and &quot;cookie_mask&quot; != &quot;${property}&quot;">
<kw name="Replace String" owner="String">
<msg time="2026-05-25T01:55:26.589109" level="INFO">${property} = id</msg>
<var>${property}</var>
<arg>${property}</arg>
<arg>_</arg>
<arg>-</arg>
<doc>Replaces ``search_for`` in the given ``string`` with ``replace_with``.</doc>
<status status="PASS" start="2026-05-25T01:55:26.588876" elapsed="0.000260"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:26.588588" elapsed="0.000590"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${property}</var>
<arg>${property}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:26.589387" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:26.589203" elapsed="0.000240"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.588569" elapsed="0.000894"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:26.596095" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2ff650&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:26.593912" elapsed="0.002212"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:26.596706" elapsed="0.000293"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:26.596328" elapsed="0.000725"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:26.597576" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.597265" elapsed="0.000339"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:26.597794" elapsed="0.000158"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.598000" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5abfec2250&gt;
object. The &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:26.593516" elapsed="0.004653"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:26.629857" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fcc20&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:26.627672" elapsed="0.002213"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.630117" elapsed="0.000445"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:26.631099" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;88&lt;/id&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.630765" elapsed="0.000364"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:26.631320" elapsed="0.000164"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.633831" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;88&lt;/id&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:26.631674" elapsed="0.002204"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.633922" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:26.627183" elapsed="0.006863"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:26.634272" elapsed="0.000194"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.634515" elapsed="0.000027"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-05-25T01:55:26.588299" elapsed="0.046333"/>
</kw>
<kw name="Set &quot;${flow}&quot; &quot;priority&quot; With &quot;${priority}&quot;" owner="FlowLib" source_name="Set &quot;${flow}&quot; &quot;${property}&quot; With &quot;${property_val}&quot;">
<if>
<branch type="IF" condition="&quot;table_id&quot; != &quot;${property}&quot; and &quot;cookie_mask&quot; != &quot;${property}&quot;">
<kw name="Replace String" owner="String">
<msg time="2026-05-25T01:55:26.639627" level="INFO">${property} = priority</msg>
<var>${property}</var>
<arg>${property}</arg>
<arg>_</arg>
<arg>-</arg>
<doc>Replaces ``search_for`` in the given ``string`` with ``replace_with``.</doc>
<status status="PASS" start="2026-05-25T01:55:26.639416" elapsed="0.000237"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:26.639123" elapsed="0.000609"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${property}</var>
<arg>${property}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:26.639945" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:26.639758" elapsed="0.000242"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:26.639097" elapsed="0.000923"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:26.646709" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fc360&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:26.644520" elapsed="0.002217"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:26.647340" elapsed="0.000298"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:26.646941" elapsed="0.000751"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:26.648221" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;88&lt;/id&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.647882" elapsed="0.000367"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:26.648440" elapsed="0.000159"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.648648" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5abfec2250&gt;
object. The &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:26.644122" elapsed="0.004647"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:26.680376" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2feac0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:26.678166" elapsed="0.002237"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.680603" elapsed="0.000426"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:26.681572" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;88&lt;/id&gt;&lt;priority&gt;42&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.681251" elapsed="0.000350"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:26.681791" elapsed="0.000158"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.684488" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;88&lt;/id&gt;&lt;priority&gt;42&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:26.682171" elapsed="0.002367"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.684582" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:26.677617" elapsed="0.007087"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:26.684900" elapsed="0.000203"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.685152" elapsed="0.000027"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-05-25T01:55:26.638812" elapsed="0.046458"/>
</kw>
<kw name="Clear Flow Actions" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:26.692237" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fd300&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:26.690041" elapsed="0.002224"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:26.692847" elapsed="0.000323"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:26.692468" elapsed="0.000758"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:26.693736" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;88&lt;/id&gt;&lt;priority&gt;42&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.693418" elapsed="0.000346"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:26.693955" elapsed="0.000196"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.694249" elapsed="0.000031"/>
</return>
<arg>${flow}</arg>
<arg>instructions/instruction</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5abfec2250&gt;
object. The &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:26.689668" elapsed="0.004718"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.694433" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<doc>Will clean out any existing flow actions in the given &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object</doc>
<status status="PASS" start="2026-05-25T01:55:26.685478" elapsed="0.009069"/>
</kw>
<kw name="Set Flow Output Action" owner="FlowLib">
<kw name="Set Flow Action" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:26.703894" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fecf0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:26.701702" elapsed="0.002220"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:26.704519" elapsed="0.000298"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:26.704141" elapsed="0.000731"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:26.705394" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;88&lt;/id&gt;&lt;priority&gt;42&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.705062" elapsed="0.000361"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:26.705612" elapsed="0.000158"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.705818" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>instruction</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5abfec2250&gt;
object. The &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:26.701328" elapsed="0.004610"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:26.739415" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2ff290&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:26.737201" elapsed="0.002242"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.739636" elapsed="0.000427"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:26.740603" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction /&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;88&lt;/id&gt;&lt;priority&gt;42&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.740280" elapsed="0.000352"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:26.740821" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.743368" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction /&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;88&lt;/id&gt;&lt;priority&gt;42&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:26.741186" elapsed="0.002232"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.743461" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>instruction</arg>
<arg>${EMPTY}</arg>
<arg>instructions</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:26.734990" elapsed="0.008593"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:26.774832" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fc950&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:26.772649" elapsed="0.002211"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.775052" elapsed="0.000448"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:26.776026" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;88&lt;/id&gt;&lt;priority&gt;42&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.775700" elapsed="0.000356"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:26.776263" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.778785" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;88&lt;/id&gt;&lt;priority&gt;42&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:26.776611" elapsed="0.002223"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.778878" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>order</arg>
<arg>${instruction_order}</arg>
<arg>instructions/instruction</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:26.772182" elapsed="0.006867"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:26.812867" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fd620&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:26.809886" elapsed="0.003025"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.813170" elapsed="0.000458"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:26.814204" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions /&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;88&lt;/id&gt;&lt;priority&gt;42&lt;/priorit...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.813831" elapsed="0.000404"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:26.814430" elapsed="0.000165"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.816945" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions /&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;88&lt;/id&gt;&lt;priority&gt;42&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:26.814784" elapsed="0.002211"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.817042" elapsed="0.000045"/>
</return>
<arg>${flow}</arg>
<arg>apply-actions</arg>
<arg>${EMPTY}</arg>
<arg>instructions/instruction</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:26.807695" elapsed="0.009489"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:26.850517" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fce00&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:26.848307" elapsed="0.002238"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.850737" elapsed="0.000450"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:26.851723" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action /&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;88&lt;/...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.851388" elapsed="0.000365"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:26.851944" elapsed="0.000176"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.854483" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action /&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;88&lt;/id&gt;&lt;priority&gt;42&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:26.852309" elapsed="0.002225"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.854578" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>action</arg>
<arg>${EMPTY}</arg>
<arg>instructions/instruction/apply-actions</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:26.846095" elapsed="0.008606"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:26.885984" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fc540&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:26.883791" elapsed="0.002220"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.886239" elapsed="0.000439"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:26.887235" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.886879" elapsed="0.000386"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:26.887456" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.890030" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;88&lt;/id&gt;&lt;priority&gt;42&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:26.887868" elapsed="0.002228"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.890142" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>order</arg>
<arg>${action_order}</arg>
<arg>instructions/instruction/apply-actions/action</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:26.883327" elapsed="0.006954"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:26.921582" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fdfd0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:26.919407" elapsed="0.002203"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.921802" elapsed="0.000462"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:26.922809" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action /&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.922468" elapsed="0.000371"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:26.923031" elapsed="0.000177"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.925554" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action /&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;88&lt;/id&gt;&lt;priority&gt;42&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:26.923398" elapsed="0.002208"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.925648" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>${action}</arg>
<arg>${action_val}</arg>
<arg>instructions/instruction/apply-actions/action</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:26.918901" elapsed="0.006868"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.925822" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>${instruction_order}</arg>
<arg>${action_order}</arg>
<arg>output-action</arg>
<doc>Will remove the instruction element first, then add the proper xml structure
to implement the action as given in the arguments</doc>
<status status="PASS" start="2026-05-25T01:55:26.695192" elapsed="0.230743"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:26.957621" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2ff8d0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:26.955379" elapsed="0.002272"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.957849" elapsed="0.000490"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:26.958900" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/outpu...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.958543" elapsed="0.000387"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:26.959137" elapsed="0.000164"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:26.961668" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;88&lt;/id&gt;&lt;priority&gt;42&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:26.959491" elapsed="0.002230"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.961766" elapsed="0.000037"/>
</return>
<arg>${flow}</arg>
<arg>output-node-connector</arg>
<arg>${output_port}</arg>
<arg>instructions/instruction/apply-actions/action/output-action</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:26.954818" elapsed="0.007082"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.961954" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>0</arg>
<arg>0</arg>
<arg>${output_port}</arg>
<status status="PASS" start="2026-05-25T01:55:26.694728" elapsed="0.267416"/>
</kw>
<kw name="Set Flow Ethernet Match" owner="FlowLib">
<kw name="Clear Flow Matches" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:26.973535" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fd850&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:26.971356" elapsed="0.002207"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:26.974176" elapsed="0.000329"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:26.973773" elapsed="0.000787"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:26.975121" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/outpu...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:26.974751" elapsed="0.000401"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:26.975342" elapsed="0.000161"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.975552" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>match/${match_element}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5abfec2250&gt;
object. The &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:26.970932" elapsed="0.004740"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:26.975718" elapsed="0.000024"/>
</return>
<arg>${flow}</arg>
<arg>match/ethernet-match</arg>
<doc>Will clean out any existing flow matches in the given &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object</doc>
<status status="PASS" start="2026-05-25T01:55:26.966689" elapsed="0.009142"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:27.008711" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2ff3d0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:27.006356" elapsed="0.002384"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.008935" elapsed="0.000450"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:27.009936" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/outpu...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.009588" elapsed="0.000378"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:27.010173" elapsed="0.000186"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.012726" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match /&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;88&lt;/id&gt;&lt;priority&gt;42&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:27.010551" elapsed="0.002227"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.012823" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>ethernet-match</arg>
<arg>${EMPTY}</arg>
<arg>match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:27.004159" elapsed="0.008789"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:27.013365" level="INFO">${type} = 0x800</msg>
<var>${type}</var>
<arg>${match_value_dict}</arg>
<arg>type</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:27.013170" elapsed="0.000221"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:27.046464" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2ff420&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:27.044238" elapsed="0.002254"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.046686" elapsed="0.000454"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:27.047696" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/outpu...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.047344" elapsed="0.000383"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:27.047916" elapsed="0.000176"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.050469" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type /&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;88&lt;/id&gt;&lt;priority&gt;42&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:27.048280" elapsed="0.002302"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.050629" elapsed="0.000031"/>
</return>
<arg>${flow}</arg>
<arg>ethernet-type</arg>
<arg>${EMPTY}</arg>
<arg>match/ethernet-match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:27.041979" elapsed="0.008778"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:27.081963" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fd940&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:27.079769" elapsed="0.002221"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.082198" elapsed="0.000459"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:27.083258" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/outpu...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.082859" elapsed="0.000430"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:27.083479" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.085971" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;88&lt;/id&gt;&lt;priority&gt;42&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:27.083826" elapsed="0.002199"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.086083" elapsed="0.000031"/>
</return>
<arg>${flow}</arg>
<arg>type</arg>
<arg>${type}</arg>
<arg>match/ethernet-match/ethernet-type</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:27.079302" elapsed="0.006907"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:27.086614" level="INFO">${src} = 00:ab:cd:ef:01:23</msg>
<var>${src}</var>
<arg>${match_value_dict}</arg>
<arg>source</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:27.086428" elapsed="0.000212"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:27.119729" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fd5d0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:27.117528" elapsed="0.002229"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.119949" elapsed="0.000453"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:27.120955" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/outpu...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.120602" elapsed="0.000383"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:27.121190" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.123720" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source /&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;88&lt;/id&gt;&lt;priority&gt;42&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:27.121539" elapsed="0.002235"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.123818" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>ethernet-source</arg>
<arg>${EMPTY}</arg>
<arg>match/ethernet-match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:27.115350" elapsed="0.008592"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:27.155213" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fe480&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:27.152973" elapsed="0.002268"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.155479" elapsed="0.000441"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:27.156502" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/outpu...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.156140" elapsed="0.000392"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:27.156724" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.159263" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;88&lt;/id&gt;&lt;priority&gt;42&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:27.157087" elapsed="0.002231"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.159363" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>address</arg>
<arg>${src}</arg>
<arg>match/ethernet-match/ethernet-source</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:27.152509" elapsed="0.006978"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:27.159871" level="INFO">${dst} = ff:ff:ff:ff:ff:ff</msg>
<var>${dst}</var>
<arg>${match_value_dict}</arg>
<arg>destination</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:27.159691" elapsed="0.000206"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:27.193036" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fec00&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:27.190766" elapsed="0.002314"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.193278" elapsed="0.000432"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:27.194291" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/outpu...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.193914" elapsed="0.000407"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:27.194546" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.198129" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination /&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;88&lt;/id&gt;&lt;priority&gt;42&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:27.194895" elapsed="0.003291"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.198232" elapsed="0.000031"/>
</return>
<arg>${flow}</arg>
<arg>ethernet-destination</arg>
<arg>${EMPTY}</arg>
<arg>match/ethernet-match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:27.188552" elapsed="0.009819"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:27.229688" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfbb7e70&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:27.227454" elapsed="0.002262"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.229911" elapsed="0.000462"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:27.230944" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/outpu...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.230576" elapsed="0.000399"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:27.231187" elapsed="0.000162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.233740" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;88&lt;/id&gt;&lt;priority&gt;42&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:27.231580" elapsed="0.002216"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.233840" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>address</arg>
<arg>${dst}</arg>
<arg>match/ethernet-match/ethernet-destination</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:27.226973" elapsed="0.006991"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.234017" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>${ethernet_match_dict}</arg>
<doc>Specific keyword for adding an ethernet match rules where the elements are given
in key/value pairs inside the ${match_value_dict} argument. This keyword will also remove any
existing ethernet-match elements from the flow before adding</doc>
<status status="PASS" start="2026-05-25T01:55:26.966260" elapsed="0.267893"/>
</kw>
<kw name="Set Flow IPv4 Match" owner="FlowLib">
<kw name="Clear Flow Matches" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:27.245484" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfbb7ec0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:27.243285" elapsed="0.002227"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:27.246123" elapsed="0.000315"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:27.245719" elapsed="0.000774"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:27.247047" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/outpu...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.246684" elapsed="0.000409"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:27.247286" elapsed="0.000160"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.247495" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>match/${match_element}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5abfec2250&gt;
object. The &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:27.242865" elapsed="0.004750"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.247661" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>match/ipv4-source</arg>
<doc>Will clean out any existing flow matches in the given &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object</doc>
<status status="PASS" start="2026-05-25T01:55:27.238644" elapsed="0.009129"/>
</kw>
<kw name="Clear Flow Matches" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:27.255179" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfbb4810&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:27.252943" elapsed="0.002264"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:27.255793" elapsed="0.000316"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:27.255413" elapsed="0.000751"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:27.256723" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/outpu...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.256361" elapsed="0.000391"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:27.256940" elapsed="0.000174"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.257165" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>match/${match_element}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5abfec2250&gt;
object. The &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:27.252390" elapsed="0.004895"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.257332" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>match/ipv4-destination</arg>
<doc>Will clean out any existing flow matches in the given &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object</doc>
<status status="PASS" start="2026-05-25T01:55:27.247986" elapsed="0.009459"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:27.257820" level="INFO">${src} = 11.3.0.0/16</msg>
<var>${src}</var>
<arg>${match_value_dict}</arg>
<arg>source</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:27.257639" elapsed="0.000206"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:27.289206" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfbb67a0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:27.286894" elapsed="0.002340"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.289429" elapsed="0.000428"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:27.290479" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/outpu...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.290057" elapsed="0.000453"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:27.290699" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.293230" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;88&lt;/id&gt;&lt;priority&gt;42&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:27.291049" elapsed="0.002238"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.293331" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>ipv4-source</arg>
<arg>${src}</arg>
<arg>match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:27.286401" elapsed="0.007053"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:27.293838" level="INFO">${dst} = 99.0.0.0/8</msg>
<var>${dst}</var>
<arg>${match_value_dict}</arg>
<arg>destination</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:27.293658" elapsed="0.000205"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:27.325434" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfbb7920&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:27.323123" elapsed="0.002342"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.325670" elapsed="0.000451"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:27.326739" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/outpu...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.326327" elapsed="0.000442"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:27.326961" elapsed="0.000179"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.329690" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;88&lt;/id&gt;&lt;priority&gt;42&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:27.327339" elapsed="0.002409"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.329796" elapsed="0.000039"/>
</return>
<arg>${flow}</arg>
<arg>ipv4-destination</arg>
<arg>${dst}</arg>
<arg>match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5abfec2250&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:27.322511" elapsed="0.007426"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.329992" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>${ipv4_match_dict}</arg>
<doc>Specific keyword for adding an ipv4 match rules where the elements are given
in key/value pairs inside the ${match_value_dict} argument. This keyword will also remove any
existing ipv4 match elements from the flow before adding</doc>
<status status="PASS" start="2026-05-25T01:55:27.238193" elapsed="0.091930"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.332499" level="INFO">Flow XML is &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;88&lt;/id&gt;&lt;priority&gt;42&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>Flow XML is ${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:27.330314" elapsed="0.002302"/>
</kw>
<kw name="Call Method" owner="BuiltIn">
<arg>${test_switch}</arg>
<arg>create_flow_match_elements</arg>
<arg>${flow.xml}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-05-25T01:55:27.332814" elapsed="0.002294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.337329" level="INFO">['dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=ALL', 'table=200']</msg>
<arg>${test_switch.flow_validations}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:27.335309" elapsed="0.002067"/>
</kw>
<kw name="Get Switch Datapath ID" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:27.340539" elapsed="0.002016"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:27.338383" elapsed="0.004210"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.338359" elapsed="0.004261"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:27.344749" elapsed="0.002235"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:27.342676" elapsed="0.004347"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.342659" elapsed="0.004389"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:27.349190" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:27.347119" elapsed="0.002128"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.347101" elapsed="0.002170"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:27.351398" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:27.349325" elapsed="0.002131"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.349309" elapsed="0.002171"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:27.338136" elapsed="0.013391"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:27.354056" elapsed="0.000148"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:27.351995" elapsed="0.002242"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.351978" elapsed="0.002284"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:27.356393" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:27.354316" elapsed="0.002129"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.354299" elapsed="0.002170"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:27.351760" elapsed="0.004755"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:27.361059" level="INFO">Executing command '/sbin/ifconfig s1 | grep -o -E "([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}"'.</msg>
<msg time="2026-05-25T01:55:27.375208" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:27.375424" level="INFO">${output} = be:c0:62:38:a2:47</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:27.360919" elapsed="0.014560"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:27.358843" elapsed="0.016722"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:27.376045" elapsed="0.000090"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:27.375621" elapsed="0.000594"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.358824" elapsed="0.017437"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:27.381146" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:27.376386" elapsed="0.004892"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.382463" level="INFO">${output} = be:c0:62:38:a2:47</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:27.381735" elapsed="0.000789"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:27.381331" elapsed="0.001274"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.376348" elapsed="0.006306"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:27.382728" elapsed="0.000062"/>
</return>
<msg time="2026-05-25T01:55:27.383164" level="INFO">${switch.datapath_id_output_string} = be:c0:62:38:a2:47</msg>
<var>${switch.datapath_id_output_string}</var>
<arg>${switch}</arg>
<arg>${switch.datapath_id_output_command}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:27.356798" elapsed="0.026425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.385536" level="INFO">be:c0:62:38:a2:47</msg>
<arg>${switch.datapath_id_output_string}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:27.383433" elapsed="0.002149"/>
</kw>
<kw name="Call Method" owner="BuiltIn">
<arg>${switch}</arg>
<arg>update_datapath_id</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-05-25T01:55:27.385775" elapsed="0.000278"/>
</kw>
<return>
<value>${switch.datapath_id}</value>
<status status="PASS" start="2026-05-25T01:55:27.386118" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:27.388242" level="INFO">${dpid_id} = 209733490876999</msg>
<var>${dpid_id}</var>
<arg>${test_switch}</arg>
<doc>Using the connection index for the given switch, will execute the command string
"datapath_id_output_command" which will store the output in switch.datapath_id_output_string.
The switch object method "update_datapath_id" is called which is assumed to place the ODL
friendly (decimal) version of the datapath id in to switch.datapath_id and the value is also
returned from this keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:27.337611" elapsed="0.050705"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Add Flow To Controller And Verify" owner="FlowLib">
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:27.403476" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=88 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=88 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node017ncy2bg6j4jtalpiszt0cnfu11.node0', 'Content-Length': '662', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;88&lt;/id&gt;&lt;priority&gt;42&lt;/priority&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:55:27.403537" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=88 
 status=201, reason=Created 
 headers={'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:27.403647" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>headers=${HEADERS_XML}</arg>
<arg>data=${flow_body}</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:27.395318" elapsed="0.008355"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.408648" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:27.403875" elapsed="0.004868"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:27.415315" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=88?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=88?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node017ncy2bg6j4jtalpiszt0cnfu11.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:27.415863" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=88?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '661'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;88&lt;/id&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;priority&gt;42&lt;/priority&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:55:27.415980" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${ACCEPT_XML}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:27.409142" elapsed="0.006865"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.418517" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;88&lt;/id&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;priority&gt;42&lt;/priority&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;ALL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:27.416224" elapsed="0.002352"/>
</kw>
<kw name="Compare Xml" owner="Common">
<arg>${flow_body}</arg>
<arg>${resp.text}</arg>
<doc>compare the two XML files to see if they contain the same data
but could be if different order.
It just split the xml in to lines and just check the line is in
the other file</doc>
<status status="PASS" start="2026-05-25T01:55:27.418769" elapsed="0.002186"/>
</kw>
<arg>${flow.xml}</arg>
<arg>openflow%3A${dpid_id}</arg>
<arg>${flow.table_id}</arg>
<arg>${flow.id}</arg>
<doc>Push flow through REST-API and verify in data-store</doc>
<status status="PASS" start="2026-05-25T01:55:27.389086" elapsed="0.031934"/>
</kw>
<arg>3s</arg>
<arg>1s</arg>
<arg>Add Flow To Controller And Verify</arg>
<arg>${flow.xml}</arg>
<arg>openflow%3A${dpid_id}</arg>
<arg>${flow.table_id}</arg>
<arg>${flow.id}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:27.388537" elapsed="0.032553"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Validate Switch Output" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:27.437580" elapsed="0.002037"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:27.435467" elapsed="0.004226"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.435446" elapsed="0.004274"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:27.441856" elapsed="0.002199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:27.439776" elapsed="0.004341"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.439759" elapsed="0.004384"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:27.446281" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:27.444199" elapsed="0.002139"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.444181" elapsed="0.002181"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:27.448509" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:27.446417" elapsed="0.002151"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.446401" elapsed="0.002190"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:27.435230" elapsed="0.013409"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:27.451212" elapsed="0.000116"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:27.449124" elapsed="0.002238"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.449106" elapsed="0.002281"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:27.453651" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:27.451440" elapsed="0.002265"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.451424" elapsed="0.002305"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:27.448871" elapsed="0.004904"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:27.456585" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-05-25T01:55:27.469396" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:27.469606" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:27.456456" elapsed="0.013213"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:27.454320" elapsed="0.015437"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:27.470285" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:27.469815" elapsed="0.000602"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.454303" elapsed="0.016183"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:27.475314" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:27.470618" elapsed="0.004779"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.476122" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:27.475683" elapsed="0.000481"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:27.475430" elapsed="0.000785"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.470580" elapsed="0.005665"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:27.476291" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:55:27.476497" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${tmp}</var>
<arg>${switch}</arg>
<arg>/sbin/ifconfig</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:27.454052" elapsed="0.022483"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.477164" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:2f:dc:c0  txqueuelen 1000  (Ethernet)
        RX packets 7500  bytes 20316137 (20.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4938  bytes 1377753 (1.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 286  bytes 25024 (25.0 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 286  bytes 25024 (25.0 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

s1: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500
        inet6 fe80::bcc0:62ff:fe38:a247  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether be:c0:62:38:a2:47  txqueuelen 1000  (Ethernet)
        RX packets 6  bytes 660 (660.0 B)
        RX errors 0  dropped 6  overruns 0  frame 0
        TX packets 8  bytes 656 (656.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:27.476801" elapsed="0.000444"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:27.481215" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-05-25T01:55:27.537395" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:27.537605" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=9.877s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.121s, table=200, n_packet...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:27.481016" elapsed="0.056647"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:27.478094" elapsed="0.059653"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:27.538270" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:27.537806" elapsed="0.000595"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.478049" elapsed="0.060398"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:27.543356" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:27.538602" elapsed="0.004886"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.544639" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=9.877s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.121s, table=200, n_packet...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:27.543943" elapsed="0.000758"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:27.543541" elapsed="0.001242"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.538563" elapsed="0.006268"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:27.544906" elapsed="0.000062"/>
</return>
<msg time="2026-05-25T01:55:27.545268" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=9.877s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.121s, table=200, n_packet...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:27.477691" elapsed="0.067636"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.546332" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=9.877s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.121s, table=200, n_packets=0, n_bytes=0, priority=42,ip,dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=ALL</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:27.545752" elapsed="0.000686"/>
</kw>
<for flavor="IN">
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:27.547522" elapsed="0.000525"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:27.547238" elapsed="0.000866"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.547209" elapsed="0.000920"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:27.548450" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:27.548182" elapsed="0.000324"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.548166" elapsed="0.000363"/>
</if>
<var name="${str}">dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=ALL</var>
<status status="PASS" start="2026-05-25T01:55:27.547124" elapsed="0.001427"/>
</iter>
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:27.548988" elapsed="0.000391"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:27.548738" elapsed="0.000682"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.548725" elapsed="0.000719"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:27.549750" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:27.549496" elapsed="0.000311"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.549480" elapsed="0.000350"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-05-25T01:55:27.548697" elapsed="0.001155"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-05-25T01:55:27.546619" elapsed="0.003260"/>
</for>
<arg>${test_switch}</arg>
<arg>${test_switch.dump_all_flows}</arg>
<arg>${test_switch.flow_validations}</arg>
<doc>A generic keyword that will execute one command on the switch, and check for each string in the @{validations} argument.  There is a boolean flag ${should_exist} that can be used to check that the validations are or are NOT in the output of the command executed.</doc>
<status status="PASS" start="2026-05-25T01:55:27.430805" elapsed="0.119129"/>
</kw>
<arg>3s</arg>
<arg>1s</arg>
<arg>Validate Switch Output</arg>
<arg>${test_switch}</arg>
<arg>${test_switch.dump_all_flows}</arg>
<arg>${test_switch.flow_validations}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:27.421306" elapsed="0.128681"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Remove Flow From Controller And Verify" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:27.561690" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=88 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=88 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node017ncy2bg6j4jtalpiszt0cnfu11.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:27.561735" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=88 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:27.561881" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:27.555253" elapsed="0.006654"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.564352" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:27.562132" elapsed="0.002262"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:27.568722" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=88?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=88?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node017ncy2bg6j4jtalpiszt0cnfu11.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:27.568874" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=88?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/yang-data+json', 'Content-Length': '242'} 
 body={
  "errors": {
    "error": [
      {
        "error-tag": "data-missing",
        "error-message": "Request could not be completed because the relevant data model content does not exist",
        "error-type": "protocol"
      }
    ]
  }
} 
 </msg>
<msg time="2026-05-25T01:55:27.569013" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:27.564555" elapsed="0.004494"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code} == 404 or ${resp.status_code} == 409">
<return>
<status status="PASS" start="2026-05-25T01:55:27.575158" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-05-25T01:55:27.569204" elapsed="0.006039"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.569175" elapsed="0.006102"/>
</if>
<kw name="Log" owner="BuiltIn">
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:27.575492" elapsed="0.000030"/>
</kw>
<kw name="Fail" owner="BuiltIn">
<arg>The request failed with code ${resp.status_code}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:27.575730" elapsed="0.000028"/>
</kw>
<arg>openflow%3A${dpid_id}</arg>
<arg>${flow.table_id}</arg>
<arg>${flow.id}</arg>
<doc>Remove flow and verify</doc>
<status status="PASS" start="2026-05-25T01:55:27.550769" elapsed="0.025070"/>
</kw>
<arg>3s</arg>
<arg>1s</arg>
<arg>Remove Flow From Controller And Verify</arg>
<arg>openflow%3A${dpid_id}</arg>
<arg>${flow.table_id}</arg>
<arg>${flow.id}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:27.550211" elapsed="0.025699"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Validate Switch Output" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:27.592162" elapsed="0.002010"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:27.590039" elapsed="0.004172"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.590019" elapsed="0.004217"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:27.596366" elapsed="0.002203"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:27.594291" elapsed="0.004318"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.594274" elapsed="0.004360"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:27.600761" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:27.598689" elapsed="0.002128"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.598672" elapsed="0.002169"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:27.602980" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:27.600895" elapsed="0.002143"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.600880" elapsed="0.002182"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:27.589803" elapsed="0.013328"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:27.605674" elapsed="0.000114"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:27.603598" elapsed="0.002223"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.603580" elapsed="0.002265"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:27.607978" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:27.605899" elapsed="0.002131"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.605882" elapsed="0.002171"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:27.603364" elapsed="0.004751"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:27.611053" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-05-25T01:55:27.623819" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:27.624030" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:27.610924" elapsed="0.013294"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:27.608647" elapsed="0.015670"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:27.624804" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:27.624376" elapsed="0.000555"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.608629" elapsed="0.016349"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:27.629893" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:27.625142" elapsed="0.004883"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.631262" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:27.630563" elapsed="0.000735"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:27.630108" elapsed="0.001235"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.625100" elapsed="0.006265"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:27.631399" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:55:27.631549" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${tmp}</var>
<arg>${switch}</arg>
<arg>/sbin/ifconfig</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:27.608399" elapsed="0.023178"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.632012" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:2f:dc:c0  txqueuelen 1000  (Ethernet)
        RX packets 7510  bytes 20317469 (20.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4952  bytes 1381109 (1.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 286  bytes 25024 (25.0 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 286  bytes 25024 (25.0 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

s1: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500
        inet6 fe80::bcc0:62ff:fe38:a247  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether be:c0:62:38:a2:47  txqueuelen 1000  (Ethernet)
        RX packets 6  bytes 660 (660.0 B)
        RX errors 0  dropped 6  overruns 0  frame 0
        TX packets 8  bytes 656 (656.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:27.631767" elapsed="0.000316"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:27.634877" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-05-25T01:55:27.683310" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:27.683520" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=10.029s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:27.634749" elapsed="0.048829"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:27.632641" elapsed="0.051022"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:27.684190" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:27.683720" elapsed="0.000605"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.632623" elapsed="0.051747"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:27.689269" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:27.684495" elapsed="0.004908"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.690593" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=10.029s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:27.689856" elapsed="0.000804"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:27.689456" elapsed="0.001288"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.684458" elapsed="0.006334"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:27.690868" elapsed="0.000063"/>
</return>
<msg time="2026-05-25T01:55:27.691181" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=10.029s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:27.632370" elapsed="0.058838"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.691645" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=10.029s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:27.691400" elapsed="0.000290"/>
</kw>
<for flavor="IN">
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:27.692348" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:27.692028" elapsed="0.000389"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.692012" elapsed="0.000433"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:27.692853" elapsed="0.000372"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:27.692550" elapsed="0.000716"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.692532" elapsed="0.000759"/>
</if>
<var name="${str}">dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=ALL</var>
<status status="PASS" start="2026-05-25T01:55:27.691978" elapsed="0.001337"/>
</iter>
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:27.693763" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:27.693505" elapsed="0.000317"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.693491" elapsed="0.000354"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:27.694170" elapsed="0.000316"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:27.693898" elapsed="0.000628"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.693882" elapsed="0.000685"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-05-25T01:55:27.693461" elapsed="0.001129"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-05-25T01:55:27.691745" elapsed="0.002874"/>
</for>
<arg>${test_switch}</arg>
<arg>${test_switch.dump_all_flows}</arg>
<arg>${test_switch.flow_validations}</arg>
<arg>false</arg>
<doc>A generic keyword that will execute one command on the switch, and check for each string in the @{validations} argument.  There is a boolean flag ${should_exist} that can be used to check that the validations are or are NOT in the output of the command executed.</doc>
<status status="PASS" start="2026-05-25T01:55:27.585526" elapsed="0.109146"/>
</kw>
<arg>3s</arg>
<arg>1s</arg>
<arg>Validate Switch Output</arg>
<arg>${test_switch}</arg>
<arg>${test_switch.dump_all_flows}</arg>
<arg>${test_switch.flow_validations}</arg>
<arg>false</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:27.576227" elapsed="0.118501"/>
</kw>
<arg>${TEST_NAME}</arg>
<arg>200</arg>
<arg>88</arg>
<arg>42</arg>
<status status="PASS" start="2026-05-25T01:55:26.531331" elapsed="1.163462"/>
</kw>
<doc>OF1.3: OFPP_ALL = 0xfffffffc, /* All physical ports except input port. */</doc>
<tag>all</tag>
<status status="PASS" start="2026-05-25T01:55:26.530799" elapsed="1.164129"/>
</test>
<test id="s1-s4-s2-t6" name="CONTROLLER" line="71">
<kw name="Create And Remove Flow">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.696778" level="INFO">${ethernet_match_dict} = {'type': '0x800', 'destination': 'ff:ff:ff:ff:ff:ff', 'source': '00:ab:cd:ef:01:23'}</msg>
<var>${ethernet_match_dict}</var>
<arg>type=${eth_type}</arg>
<arg>destination=${eth_dst}</arg>
<arg>source=${eth_src}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:27.696304" elapsed="0.000501"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.697481" level="INFO">${ipv4_match_dict} = {'source': '11.3.0.0/16', 'destination': '99.0.0.0/8'}</msg>
<var>${ipv4_match_dict}</var>
<arg>source=${ipv4_src}</arg>
<arg>destination=${ipv4_dst}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:27.697011" elapsed="0.000496"/>
</kw>
<kw name="Create Inventory Flow" owner="FlowLib">
<kw name="Make Inventory Flow" owner="FlowLib">
<msg time="2026-05-25T01:55:27.698151" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7f5acc055550&gt;</msg>
<var>${flow}</var>
<doc>Robot Keyword to create and return an instance of the Flow
class.</doc>
<status status="PASS" start="2026-05-25T01:55:27.698001" elapsed="0.000176"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.698220" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:55:27.698365" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7f5acc055550&gt;</msg>
<var>${flow}</var>
<doc>Calls FlowLib.Make_Inventory_Flow function and initializes and sanitizes
the basic flow elements that can be given to flow:inventory</doc>
<status status="PASS" start="2026-05-25T01:55:27.697692" elapsed="0.000699"/>
</kw>
<kw name="Set &quot;${flow}&quot; &quot;table_id&quot; With &quot;${table_id}&quot;" owner="FlowLib" source_name="Set &quot;${flow}&quot; &quot;${property}&quot; With &quot;${property_val}&quot;">
<if>
<branch type="IF" condition="&quot;table_id&quot; != &quot;${property}&quot; and &quot;cookie_mask&quot; != &quot;${property}&quot;">
<kw name="Replace String" owner="String">
<var>${property}</var>
<arg>${property}</arg>
<arg>_</arg>
<arg>-</arg>
<doc>Replaces ``search_for`` in the given ``string`` with ``replace_with``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:27.703362" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:27.703051" elapsed="0.000376"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.703924" level="INFO">${property} = table_id</msg>
<var>${property}</var>
<arg>${property}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:27.703633" elapsed="0.000317"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:27.703451" elapsed="0.000536"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.703032" elapsed="0.000976"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:27.710704" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fdd00&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:27.708494" elapsed="0.002238"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:27.711345" elapsed="0.000302"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:27.710939" elapsed="0.000763"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:27.712248" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.711894" elapsed="0.000385"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:27.712478" elapsed="0.000158"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.712686" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc055550&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:27.708088" elapsed="0.004717"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:27.744184" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2ff510&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:27.741982" elapsed="0.002231"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.744414" elapsed="0.000434"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:27.745387" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.745051" elapsed="0.000365"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:27.745607" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.748164" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:27.745957" elapsed="0.002255"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.748257" elapsed="0.000039"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:27.741497" elapsed="0.006894"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:27.748590" elapsed="0.000183"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.748822" elapsed="0.000027"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-05-25T01:55:27.702755" elapsed="0.046186"/>
</kw>
<kw name="Set &quot;${flow}&quot; &quot;id&quot; With &quot;${flow_id}&quot;" owner="FlowLib" source_name="Set &quot;${flow}&quot; &quot;${property}&quot; With &quot;${property_val}&quot;">
<if>
<branch type="IF" condition="&quot;table_id&quot; != &quot;${property}&quot; and &quot;cookie_mask&quot; != &quot;${property}&quot;">
<kw name="Replace String" owner="String">
<msg time="2026-05-25T01:55:27.753900" level="INFO">${property} = id</msg>
<var>${property}</var>
<arg>${property}</arg>
<arg>_</arg>
<arg>-</arg>
<doc>Replaces ``search_for`` in the given ``string`` with ``replace_with``.</doc>
<status status="PASS" start="2026-05-25T01:55:27.753684" elapsed="0.000242"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:27.753392" elapsed="0.000576"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${property}</var>
<arg>${property}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:27.754192" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:27.753993" elapsed="0.000256"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.753373" elapsed="0.000896"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:27.761055" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc241b20&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:27.758878" elapsed="0.002224"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:27.761700" elapsed="0.000295"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:27.761314" elapsed="0.000735"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:27.762601" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.762262" elapsed="0.000370"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:27.762826" elapsed="0.000160"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.763035" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc055550&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:27.758467" elapsed="0.004706"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:27.794599" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc241f80&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:27.792389" elapsed="0.002240"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.794826" elapsed="0.000448"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:27.795799" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;21&lt;/id&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.795479" elapsed="0.000349"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:27.796021" elapsed="0.000176"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.798613" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;21&lt;/id&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:27.796438" elapsed="0.002224"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.798706" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:27.791891" elapsed="0.006939"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:27.799029" elapsed="0.000198"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.799277" elapsed="0.000027"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-05-25T01:55:27.753101" elapsed="0.046295"/>
</kw>
<kw name="Set &quot;${flow}&quot; &quot;priority&quot; With &quot;${priority}&quot;" owner="FlowLib" source_name="Set &quot;${flow}&quot; &quot;${property}&quot; With &quot;${property_val}&quot;">
<if>
<branch type="IF" condition="&quot;table_id&quot; != &quot;${property}&quot; and &quot;cookie_mask&quot; != &quot;${property}&quot;">
<kw name="Replace String" owner="String">
<msg time="2026-05-25T01:55:27.804376" level="INFO">${property} = priority</msg>
<var>${property}</var>
<arg>${property}</arg>
<arg>_</arg>
<arg>-</arg>
<doc>Replaces ``search_for`` in the given ``string`` with ``replace_with``.</doc>
<status status="PASS" start="2026-05-25T01:55:27.804156" elapsed="0.000247"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:27.803853" elapsed="0.000592"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${property}</var>
<arg>${property}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:27.804654" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:27.804470" elapsed="0.000238"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:27.803835" elapsed="0.000893"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:27.811363" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2ff510&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:27.809184" elapsed="0.002207"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:27.811974" elapsed="0.000317"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:27.811593" elapsed="0.000755"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:27.812853" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;21&lt;/id&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.812538" elapsed="0.000343"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:27.813086" elapsed="0.000161"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.813296" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc055550&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:27.808775" elapsed="0.004641"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:27.844944" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc242250&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:27.842713" elapsed="0.002260"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.845184" elapsed="0.000438"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:27.846167" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;21&lt;/id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.845826" elapsed="0.000371"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:27.846391" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.848899" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;21&lt;/id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:27.846752" elapsed="0.002201"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.848997" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:27.842209" elapsed="0.006930"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:27.849388" elapsed="0.000185"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.849624" elapsed="0.000026"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-05-25T01:55:27.803563" elapsed="0.046178"/>
</kw>
<kw name="Clear Flow Actions" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:27.856771" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2ff560&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:27.854592" elapsed="0.002207"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:27.857400" elapsed="0.000306"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:27.857001" elapsed="0.000759"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:27.858286" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;21&lt;/id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.857952" elapsed="0.000363"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:27.858506" elapsed="0.000182"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.858738" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>instructions/instruction</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc055550&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:27.854218" elapsed="0.004640"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.858905" elapsed="0.000024"/>
</return>
<arg>${flow}</arg>
<doc>Will clean out any existing flow actions in the given &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object</doc>
<status status="PASS" start="2026-05-25T01:55:27.849953" elapsed="0.009063"/>
</kw>
<kw name="Set Flow Output Action" owner="FlowLib">
<kw name="Set Flow Action" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:27.868558" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc241bc0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:27.866352" elapsed="0.002233"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:27.869189" elapsed="0.000298"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:27.868791" elapsed="0.000752"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:27.870058" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;21&lt;/id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.869735" elapsed="0.000367"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:27.870294" elapsed="0.000160"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.870504" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>instruction</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc055550&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:27.865962" elapsed="0.004675"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:27.903876" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2ff9c0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:27.901689" elapsed="0.002215"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.904113" elapsed="0.000441"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:27.905093" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction /&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;21&lt;/id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.904754" elapsed="0.000372"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:27.905317" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.907851" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction /&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;21&lt;/id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:27.905665" elapsed="0.002234"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.907943" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>instruction</arg>
<arg>${EMPTY}</arg>
<arg>instructions</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:27.899501" elapsed="0.008578"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:27.939613" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2ff510&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:27.937410" elapsed="0.002231"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.939835" elapsed="0.000456"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:27.940829" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;21&lt;/id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.940499" elapsed="0.000361"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:27.941054" elapsed="0.000176"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.943585" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;21&lt;/id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:27.941423" elapsed="0.002211"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.943686" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>order</arg>
<arg>${instruction_order}</arg>
<arg>instructions/instruction</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:27.936922" elapsed="0.006887"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:27.977031" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc240c20&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:27.974838" elapsed="0.002220"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.977267" elapsed="0.000432"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:27.978250" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions /&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;21&lt;/id&gt;&lt;priority&gt;21&lt;/priorit...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:27.977899" elapsed="0.000381"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:27.978469" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:27.981016" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions /&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;21&lt;/id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:27.978849" elapsed="0.002230"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:27.981124" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>apply-actions</arg>
<arg>${EMPTY}</arg>
<arg>instructions/instruction</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:27.972503" elapsed="0.008744"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:28.014450" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fc590&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:28.012246" elapsed="0.002232"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.014681" elapsed="0.000452"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:28.015672" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action /&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;21&lt;/...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.015337" elapsed="0.000365"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:28.015893" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.018425" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action /&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;21&lt;/id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:28.016264" elapsed="0.002211"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.018518" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>action</arg>
<arg>${EMPTY}</arg>
<arg>instructions/instruction/apply-actions</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:28.010018" elapsed="0.008683"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:28.050110" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fc180&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:28.047902" elapsed="0.002237"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.050331" elapsed="0.000453"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:28.051357" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.050988" elapsed="0.000400"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:28.051578" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.054093" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;21&lt;/id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:28.051924" elapsed="0.002222"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.054189" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>order</arg>
<arg>${action_order}</arg>
<arg>instructions/instruction/apply-actions/action</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:28.047434" elapsed="0.006877"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:28.086645" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc241120&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:28.084448" elapsed="0.002225"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.086896" elapsed="0.000458"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:28.087899" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action /&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.087558" elapsed="0.000371"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:28.088134" elapsed="0.000171"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.090638" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action /&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;21&lt;/id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:28.088494" elapsed="0.002196"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.090746" elapsed="0.000032"/>
</return>
<arg>${flow}</arg>
<arg>${action}</arg>
<arg>${action_val}</arg>
<arg>instructions/instruction/apply-actions/action</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:28.083929" elapsed="0.006944"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.090928" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>${instruction_order}</arg>
<arg>${action_order}</arg>
<arg>output-action</arg>
<doc>Will remove the instruction element first, then add the proper xml structure
to implement the action as given in the arguments</doc>
<status status="PASS" start="2026-05-25T01:55:27.859661" elapsed="0.231381"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:28.122432" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc243dd0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:28.120233" elapsed="0.002227"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.122652" elapsed="0.000465"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:28.123664" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.123319" elapsed="0.000412"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:28.123925" elapsed="0.000175"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.126456" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;21&lt;/id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:28.124290" elapsed="0.002218"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.126553" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>output-node-connector</arg>
<arg>${output_port}</arg>
<arg>instructions/instruction/apply-actions/action/output-action</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:28.119746" elapsed="0.006931"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.126759" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>0</arg>
<arg>0</arg>
<arg>${output_port}</arg>
<status status="PASS" start="2026-05-25T01:55:27.859218" elapsed="0.267660"/>
</kw>
<kw name="Set Flow Ethernet Match" owner="FlowLib">
<kw name="Clear Flow Matches" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:28.138357" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2ff650&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:28.136028" elapsed="0.002357"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:28.138996" elapsed="0.000329"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:28.138595" elapsed="0.000786"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:28.139918" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.139575" elapsed="0.000374"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:28.140155" elapsed="0.000170"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.140374" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>match/${match_element}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc055550&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:28.135620" elapsed="0.004875"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.140542" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>match/ethernet-match</arg>
<doc>Will clean out any existing flow matches in the given &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object</doc>
<status status="PASS" start="2026-05-25T01:55:28.131391" elapsed="0.009264"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:28.173413" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fd760&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:28.171216" elapsed="0.002224"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.173635" elapsed="0.000429"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:28.174633" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.174282" elapsed="0.000381"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:28.174879" elapsed="0.000163"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.177418" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match /&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;21&lt;/id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:28.175248" elapsed="0.002225"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.177517" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>ethernet-match</arg>
<arg>${EMPTY}</arg>
<arg>match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:28.169018" elapsed="0.008622"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:28.178089" level="INFO">${type} = 0x800</msg>
<var>${type}</var>
<arg>${match_value_dict}</arg>
<arg>type</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:28.177885" elapsed="0.000231"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:28.211169" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc241260&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:28.208952" elapsed="0.002245"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.211392" elapsed="0.000434"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:28.212404" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.212030" elapsed="0.000405"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:28.212626" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.215385" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type /&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;21&lt;/id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:28.212973" elapsed="0.002474"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.215498" elapsed="0.000033"/>
</return>
<arg>${flow}</arg>
<arg>ethernet-type</arg>
<arg>${EMPTY}</arg>
<arg>match/ethernet-match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:28.206742" elapsed="0.008896"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:28.248163" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfbb67f0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:28.245781" elapsed="0.002411"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.248391" elapsed="0.000435"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:28.249407" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.249028" elapsed="0.000409"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:28.249637" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.252195" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;21&lt;/id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:28.249986" elapsed="0.002264"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.252297" elapsed="0.000035"/>
</return>
<arg>${flow}</arg>
<arg>type</arg>
<arg>${type}</arg>
<arg>match/ethernet-match/ethernet-type</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:28.245314" elapsed="0.007112"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:28.252817" level="INFO">${src} = 00:ab:cd:ef:01:23</msg>
<var>${src}</var>
<arg>${match_value_dict}</arg>
<arg>source</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:28.252635" elapsed="0.000208"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:28.285927" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc240f90&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:28.283719" elapsed="0.002236"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.286165" elapsed="0.000437"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:28.287194" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.286819" elapsed="0.000446"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:28.287461" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.289968" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source /&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;21&lt;/id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:28.287811" elapsed="0.002213"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.290082" elapsed="0.000031"/>
</return>
<arg>${flow}</arg>
<arg>ethernet-source</arg>
<arg>${EMPTY}</arg>
<arg>match/ethernet-match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:28.281510" elapsed="0.008699"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:28.321645" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc0d6d40&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:28.319437" elapsed="0.002236"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.321866" elapsed="0.000458"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:28.322902" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.322526" elapsed="0.000407"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:28.323140" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.325686" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;21&lt;/id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:28.323492" elapsed="0.002251"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.325787" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>address</arg>
<arg>${src}</arg>
<arg>match/ethernet-match/ethernet-source</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:28.318957" elapsed="0.006955"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:28.326325" level="INFO">${dst} = ff:ff:ff:ff:ff:ff</msg>
<var>${dst}</var>
<arg>${match_value_dict}</arg>
<arg>destination</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:28.326141" elapsed="0.000210"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:28.359745" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2feed0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:28.357511" elapsed="0.002262"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.359967" elapsed="0.000450"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:28.360980" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.360620" elapsed="0.000391"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:28.361219" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.363754" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination /&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;21&lt;/id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:28.361567" elapsed="0.002284"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.363897" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>ethernet-destination</arg>
<arg>${EMPTY}</arg>
<arg>match/ethernet-match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:28.355307" elapsed="0.008715"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:28.395454" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fdee0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:28.393222" elapsed="0.002260"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.395674" elapsed="0.000453"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:28.396697" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.396331" elapsed="0.000396"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:28.396917" elapsed="0.000175"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.399479" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;21&lt;/id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:28.397288" elapsed="0.002248"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.399581" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>address</arg>
<arg>${dst}</arg>
<arg>match/ethernet-match/ethernet-destination</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:28.392743" elapsed="0.006961"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.399758" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>${ethernet_match_dict}</arg>
<doc>Specific keyword for adding an ethernet match rules where the elements are given
in key/value pairs inside the ${match_value_dict} argument. This keyword will also remove any
existing ethernet-match elements from the flow before adding</doc>
<status status="PASS" start="2026-05-25T01:55:28.130949" elapsed="0.268923"/>
</kw>
<kw name="Set Flow IPv4 Match" owner="FlowLib">
<kw name="Clear Flow Matches" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:28.411366" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfbb4180&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:28.409005" elapsed="0.002389"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:28.411986" elapsed="0.000324"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:28.411600" elapsed="0.000764"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:28.412917" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.412555" elapsed="0.000392"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:28.413151" elapsed="0.000161"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.413362" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>match/${match_element}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc055550&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:28.408599" elapsed="0.004883"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.413528" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>match/ipv4-source</arg>
<doc>Will clean out any existing flow matches in the given &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object</doc>
<status status="PASS" start="2026-05-25T01:55:28.404348" elapsed="0.009293"/>
</kw>
<kw name="Clear Flow Matches" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:28.420842" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc242c50&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:28.418611" elapsed="0.002259"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:28.421516" elapsed="0.000305"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:28.421131" elapsed="0.000745"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:28.422453" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.422084" elapsed="0.000400"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:28.422675" elapsed="0.000160"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.422904" elapsed="0.000033"/>
</return>
<arg>${flow}</arg>
<arg>match/${match_element}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5acc055550&gt;
object. The &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:28.418204" elapsed="0.004827"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.423091" elapsed="0.000027"/>
</return>
<arg>${flow}</arg>
<arg>match/ipv4-destination</arg>
<doc>Will clean out any existing flow matches in the given &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object</doc>
<status status="PASS" start="2026-05-25T01:55:28.413853" elapsed="0.009355"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:28.423584" level="INFO">${src} = 11.3.0.0/16</msg>
<var>${src}</var>
<arg>${match_value_dict}</arg>
<arg>source</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:28.423402" elapsed="0.000207"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:28.455163" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2ff560&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:28.452913" elapsed="0.002278"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.455386" elapsed="0.000428"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:28.456401" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.456016" elapsed="0.000416"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:28.456622" elapsed="0.000158"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.459306" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;21&lt;/id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:28.456968" elapsed="0.002395"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.459408" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>ipv4-source</arg>
<arg>${src}</arg>
<arg>match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:28.452421" elapsed="0.007110"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:28.459915" level="INFO">${dst} = 99.0.0.0/8</msg>
<var>${dst}</var>
<arg>${match_value_dict}</arg>
<arg>destination</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:28.459733" elapsed="0.000208"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:28.491270" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fc770&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:28.489030" elapsed="0.002268"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.491492" elapsed="0.000429"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:28.492514" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.492140" elapsed="0.000405"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:28.492735" elapsed="0.000158"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.495277" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;21&lt;/id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:28.493097" elapsed="0.002292"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.495442" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>ipv4-destination</arg>
<arg>${dst}</arg>
<arg>match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5acc055550&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:28.488567" elapsed="0.007006"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.495626" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>${ipv4_match_dict}</arg>
<doc>Specific keyword for adding an ipv4 match rules where the elements are given
in key/value pairs inside the ${match_value_dict} argument. This keyword will also remove any
existing ipv4 match elements from the flow before adding</doc>
<status status="PASS" start="2026-05-25T01:55:28.403906" elapsed="0.091834"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.498095" level="INFO">Flow XML is &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;21&lt;/id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>Flow XML is ${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:28.495927" elapsed="0.002226"/>
</kw>
<kw name="Call Method" owner="BuiltIn">
<arg>${test_switch}</arg>
<arg>create_flow_match_elements</arg>
<arg>${flow.xml}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-05-25T01:55:28.498347" elapsed="0.002286"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.502863" level="INFO">['dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=CONTROLLER', 'table=200']</msg>
<arg>${test_switch.flow_validations}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:28.500830" elapsed="0.002107"/>
</kw>
<kw name="Get Switch Datapath ID" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:28.505974" elapsed="0.002017"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:28.503887" elapsed="0.004142"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.503865" elapsed="0.004191"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:28.510196" elapsed="0.002217"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:28.508132" elapsed="0.004321"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.508114" elapsed="0.004364"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:28.514591" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:28.512532" elapsed="0.002113"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.512516" elapsed="0.002152"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:28.516790" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:28.514721" elapsed="0.002126"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.514706" elapsed="0.002165"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:28.503646" elapsed="0.013271"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:28.519627" elapsed="0.000128"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:28.517396" elapsed="0.002391"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.517378" elapsed="0.002434"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:28.521933" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:28.519866" elapsed="0.002118"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.519849" elapsed="0.002159"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:28.517163" elapsed="0.004891"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:28.526707" level="INFO">Executing command '/sbin/ifconfig s1 | grep -o -E "([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}"'.</msg>
<msg time="2026-05-25T01:55:28.540497" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:28.540707" level="INFO">${output} = be:c0:62:38:a2:47</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:28.526532" elapsed="0.014231"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:28.524460" elapsed="0.016390"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:28.541386" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:28.540910" elapsed="0.000608"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.524442" elapsed="0.017122"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:28.546439" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:28.541691" elapsed="0.004877"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.547734" level="INFO">${output} = be:c0:62:38:a2:47</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:28.547046" elapsed="0.000746"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:28.546620" elapsed="0.001253"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.541654" elapsed="0.006266"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:28.547995" elapsed="0.000062"/>
</return>
<msg time="2026-05-25T01:55:28.548439" level="INFO">${switch.datapath_id_output_string} = be:c0:62:38:a2:47</msg>
<var>${switch.datapath_id_output_string}</var>
<arg>${switch}</arg>
<arg>${switch.datapath_id_output_command}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:28.522350" elapsed="0.026148"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.552232" level="INFO">be:c0:62:38:a2:47</msg>
<arg>${switch.datapath_id_output_string}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:28.548924" elapsed="0.003353"/>
</kw>
<kw name="Call Method" owner="BuiltIn">
<arg>${switch}</arg>
<arg>update_datapath_id</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-05-25T01:55:28.552468" elapsed="0.000275"/>
</kw>
<return>
<value>${switch.datapath_id}</value>
<status status="PASS" start="2026-05-25T01:55:28.552790" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:55:28.554885" level="INFO">${dpid_id} = 209733490876999</msg>
<var>${dpid_id}</var>
<arg>${test_switch}</arg>
<doc>Using the connection index for the given switch, will execute the command string
"datapath_id_output_command" which will store the output in switch.datapath_id_output_string.
The switch object method "update_datapath_id" is called which is assumed to place the ODL
friendly (decimal) version of the datapath id in to switch.datapath_id and the value is also
returned from this keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:28.503174" elapsed="0.051750"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Add Flow To Controller And Verify" owner="FlowLib">
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:28.571367" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=21 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=21 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node017ncy2bg6j4jtalpiszt0cnfu11.node0', 'Content-Length': '669', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;21&lt;/id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:55:28.571430" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=21 
 status=201, reason=Created 
 headers={'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:28.571535" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>headers=${HEADERS_XML}</arg>
<arg>data=${flow_body}</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:28.561846" elapsed="0.009715"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.573967" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:28.571763" elapsed="0.002248"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:28.579303" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=21?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=21?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node017ncy2bg6j4jtalpiszt0cnfu11.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:28.580048" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=21?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '668'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;21&lt;/id&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:55:28.580277" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${ACCEPT_XML}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:28.574198" elapsed="0.006116"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.583813" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;21&lt;/id&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:28.580597" elapsed="0.003298"/>
</kw>
<kw name="Compare Xml" owner="Common">
<arg>${flow_body}</arg>
<arg>${resp.text}</arg>
<doc>compare the two XML files to see if they contain the same data
but could be if different order.
It just split the xml in to lines and just check the line is in
the other file</doc>
<status status="PASS" start="2026-05-25T01:55:28.584188" elapsed="0.003109"/>
</kw>
<arg>${flow.xml}</arg>
<arg>openflow%3A${dpid_id}</arg>
<arg>${flow.table_id}</arg>
<arg>${flow.id}</arg>
<doc>Push flow through REST-API and verify in data-store</doc>
<status status="PASS" start="2026-05-25T01:55:28.555671" elapsed="0.031715"/>
</kw>
<arg>3s</arg>
<arg>1s</arg>
<arg>Add Flow To Controller And Verify</arg>
<arg>${flow.xml}</arg>
<arg>openflow%3A${dpid_id}</arg>
<arg>${flow.table_id}</arg>
<arg>${flow.id}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:28.555149" elapsed="0.032313"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Validate Switch Output" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:28.602791" elapsed="0.002019"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:28.600556" elapsed="0.004293"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.600536" elapsed="0.004339"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:28.607045" elapsed="0.002208"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:28.604930" elapsed="0.004364"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.604913" elapsed="0.004406"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:28.611459" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:28.609375" elapsed="0.002140"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.609358" elapsed="0.002181"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:28.613670" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:28.611593" elapsed="0.002136"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.611577" elapsed="0.002175"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:28.600320" elapsed="0.013479"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:28.616378" elapsed="0.000116"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:28.614280" elapsed="0.002248"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.614261" elapsed="0.002291"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:28.618655" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:28.616606" elapsed="0.002100"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.616589" elapsed="0.002140"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:28.614029" elapsed="0.004745"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:28.621581" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-05-25T01:55:28.634605" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:28.634737" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:28.621453" elapsed="0.013322"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:28.619372" elapsed="0.015458"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:28.635187" elapsed="0.000054"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:28.634866" elapsed="0.000467"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.619354" elapsed="0.016027"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:28.640321" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:28.635505" elapsed="0.004950"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.641705" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:28.641004" elapsed="0.000765"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:28.640584" elapsed="0.001268"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.635469" elapsed="0.006432"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:28.641977" elapsed="0.000064"/>
</return>
<msg time="2026-05-25T01:55:28.642347" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${tmp}</var>
<arg>${switch}</arg>
<arg>/sbin/ifconfig</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:28.619106" elapsed="0.023301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.643360" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:2f:dc:c0  txqueuelen 1000  (Ethernet)
        RX packets 7528  bytes 20319633 (20.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4975  bytes 1385323 (1.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 286  bytes 25024 (25.0 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 286  bytes 25024 (25.0 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

s1: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500
        inet6 fe80::bcc0:62ff:fe38:a247  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether be:c0:62:38:a2:47  txqueuelen 1000  (Ethernet)
        RX packets 6  bytes 660 (660.0 B)
        RX errors 0  dropped 6  overruns 0  frame 0
        TX packets 8  bytes 656 (656.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:28.642835" elapsed="0.000582"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:28.646194" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-05-25T01:55:28.695637" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:28.695846" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=11.040s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.116s, table=200, n_packe...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:28.646053" elapsed="0.049851"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:28.643971" elapsed="0.052017"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:28.696513" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:28.696046" elapsed="0.000594"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.643953" elapsed="0.052734"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:28.701554" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:28.696810" elapsed="0.004875"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.702826" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=11.040s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.116s, table=200, n_packe...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:28.702171" elapsed="0.000716"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:28.701738" elapsed="0.001274"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.696773" elapsed="0.006316"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:28.703177" elapsed="0.000071"/>
</return>
<msg time="2026-05-25T01:55:28.703414" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=11.040s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.116s, table=200, n_packe...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:28.643699" elapsed="0.059741"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.703874" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=11.040s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.116s, table=200, n_packets=0, n_bytes=0, priority=21,ip,dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=CONTROLLER:0</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:28.703630" elapsed="0.000290"/>
</kw>
<for flavor="IN">
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:28.704502" elapsed="0.000524"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:28.704243" elapsed="0.000823"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.704229" elapsed="0.000877"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:28.705419" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:28.705161" elapsed="0.000315"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.705144" elapsed="0.000355"/>
</if>
<var name="${str}">dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=CONTROLLER</var>
<status status="PASS" start="2026-05-25T01:55:28.704197" elapsed="0.001324"/>
</iter>
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:28.705995" elapsed="0.000351"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:28.705709" elapsed="0.000679"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.705695" elapsed="0.000718"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:28.706721" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:28.706467" elapsed="0.000311"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.706450" elapsed="0.000351"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-05-25T01:55:28.705667" elapsed="0.001157"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-05-25T01:55:28.703976" elapsed="0.002876"/>
</for>
<arg>${test_switch}</arg>
<arg>${test_switch.dump_all_flows}</arg>
<arg>${test_switch.flow_validations}</arg>
<doc>A generic keyword that will execute one command on the switch, and check for each string in the @{validations} argument.  There is a boolean flag ${should_exist} that can be used to check that the validations are or are NOT in the output of the command executed.</doc>
<status status="PASS" start="2026-05-25T01:55:28.596018" elapsed="0.110888"/>
</kw>
<arg>3s</arg>
<arg>1s</arg>
<arg>Validate Switch Output</arg>
<arg>${test_switch}</arg>
<arg>${test_switch.dump_all_flows}</arg>
<arg>${test_switch.flow_validations}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:28.587762" elapsed="0.119209"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Remove Flow From Controller And Verify" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:28.719123" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=21 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=21 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node017ncy2bg6j4jtalpiszt0cnfu11.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:28.719169" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=21 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:28.719269" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:28.712222" elapsed="0.007074"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.721687" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:28.719497" elapsed="0.002233"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:28.726841" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=21?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=21?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node017ncy2bg6j4jtalpiszt0cnfu11.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:28.727009" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=21?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/yang-data+json', 'Content-Length': '242'} 
 body={
  "errors": {
    "error": [
      {
        "error-tag": "data-missing",
        "error-message": "Request could not be completed because the relevant data model content does not exist",
        "error-type": "protocol"
      }
    ]
  }
} 
 </msg>
<msg time="2026-05-25T01:55:28.727188" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:28.721892" elapsed="0.005335"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code} == 404 or ${resp.status_code} == 409">
<return>
<status status="PASS" start="2026-05-25T01:55:28.733052" elapsed="0.000057"/>
</return>
<status status="PASS" start="2026-05-25T01:55:28.727338" elapsed="0.005816"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.727311" elapsed="0.005877"/>
</if>
<kw name="Log" owner="BuiltIn">
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:28.733404" elapsed="0.000032"/>
</kw>
<kw name="Fail" owner="BuiltIn">
<arg>The request failed with code ${resp.status_code}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:28.733644" elapsed="0.000028"/>
</kw>
<arg>openflow%3A${dpid_id}</arg>
<arg>${flow.table_id}</arg>
<arg>${flow.id}</arg>
<doc>Remove flow and verify</doc>
<status status="PASS" start="2026-05-25T01:55:28.707744" elapsed="0.026010"/>
</kw>
<arg>3s</arg>
<arg>1s</arg>
<arg>Remove Flow From Controller And Verify</arg>
<arg>openflow%3A${dpid_id}</arg>
<arg>${flow.table_id}</arg>
<arg>${flow.id}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:28.707202" elapsed="0.026622"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Validate Switch Output" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:28.749544" elapsed="0.002034"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:28.747468" elapsed="0.004148"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.747449" elapsed="0.004191"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:28.753756" elapsed="0.002200"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:28.751695" elapsed="0.004301"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.751678" elapsed="0.004342"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:28.758158" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:28.756090" elapsed="0.002158"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.756058" elapsed="0.002215"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:28.760449" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:28.758329" elapsed="0.002179"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.758313" elapsed="0.002219"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:28.747233" elapsed="0.013346"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:28.763132" elapsed="0.000121"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:28.761041" elapsed="0.002245"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.761024" elapsed="0.002287"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:28.765425" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:28.763364" elapsed="0.002112"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.763347" elapsed="0.002152"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:28.760807" elapsed="0.004738"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:28.768493" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-05-25T01:55:28.781287" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:28.781495" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:28.768363" elapsed="0.013193"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:28.766081" elapsed="0.015560"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:28.782167" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:28.781697" elapsed="0.000602"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.766049" elapsed="0.016295"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:28.787275" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:28.782467" elapsed="0.004943"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.788436" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:28.787870" elapsed="0.000606"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:28.787463" elapsed="0.001065"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.782431" elapsed="0.006127"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:28.788605" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:55:28.788811" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${tmp}</var>
<arg>${switch}</arg>
<arg>/sbin/ifconfig</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:28.765816" elapsed="0.023034"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.789483" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:2f:dc:c0  txqueuelen 1000  (Ethernet)
        RX packets 7538  bytes 20320965 (20.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4989  bytes 1388695 (1.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 286  bytes 25024 (25.0 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 286  bytes 25024 (25.0 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

s1: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500
        inet6 fe80::bcc0:62ff:fe38:a247  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether be:c0:62:38:a2:47  txqueuelen 1000  (Ethernet)
        RX packets 6  bytes 660 (660.0 B)
        RX errors 0  dropped 6  overruns 0  frame 0
        TX packets 8  bytes 656 (656.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:28.789137" elapsed="0.000425"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:28.793477" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-05-25T01:55:28.839155" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:28.839365" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=11.183s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:28.793296" elapsed="0.046125"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:28.790352" elapsed="0.049153"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:28.839983" elapsed="0.000151"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:28.839561" elapsed="0.000660"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.790326" elapsed="0.049941"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:28.845171" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:28.840396" elapsed="0.004908"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.846449" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=11.183s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:28.845765" elapsed="0.000744"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:28.845357" elapsed="0.001233"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.840358" elapsed="0.006280"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:28.846715" elapsed="0.000062"/>
</return>
<msg time="2026-05-25T01:55:28.847118" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=11.183s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:28.789948" elapsed="0.057233"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.848208" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=11.183s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:28.847609" elapsed="0.000699"/>
</kw>
<for flavor="IN">
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:28.848870" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:28.848611" elapsed="0.000317"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.848597" elapsed="0.000354"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:28.849273" elapsed="0.000318"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:28.849003" elapsed="0.000627"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.848988" elapsed="0.000667"/>
</if>
<var name="${str}">dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=CONTROLLER</var>
<status status="PASS" start="2026-05-25T01:55:28.848567" elapsed="0.001110"/>
</iter>
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:28.850130" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:28.849862" elapsed="0.000327"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.849848" elapsed="0.000364"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:28.850510" elapsed="0.000311"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:28.850263" elapsed="0.000597"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.850247" elapsed="0.000637"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-05-25T01:55:28.849820" elapsed="0.001086"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-05-25T01:55:28.848371" elapsed="0.002562"/>
</for>
<arg>${test_switch}</arg>
<arg>${test_switch.dump_all_flows}</arg>
<arg>${test_switch.flow_validations}</arg>
<arg>false</arg>
<doc>A generic keyword that will execute one command on the switch, and check for each string in the @{validations} argument.  There is a boolean flag ${should_exist} that can be used to check that the validations are or are NOT in the output of the command executed.</doc>
<status status="PASS" start="2026-05-25T01:55:28.742866" elapsed="0.108118"/>
</kw>
<arg>3s</arg>
<arg>1s</arg>
<arg>Validate Switch Output</arg>
<arg>${test_switch}</arg>
<arg>${test_switch.dump_all_flows}</arg>
<arg>${test_switch.flow_validations}</arg>
<arg>false</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:28.734134" elapsed="0.116916"/>
</kw>
<arg>${TEST_NAME}</arg>
<arg>200</arg>
<arg>21</arg>
<arg>21</arg>
<status status="PASS" start="2026-05-25T01:55:27.695868" elapsed="1.155270"/>
</kw>
<doc>OF1.3 OFPP_CONTROLLER = 0xfffffffd, /* Send to controller. */</doc>
<tag>controller</tag>
<status status="PASS" start="2026-05-25T01:55:27.695361" elapsed="1.155910"/>
</test>
<test id="s1-s4-s2-t7" name="LOCAL" line="74">
<kw name="Create And Remove Flow">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.853100" level="INFO">${ethernet_match_dict} = {'type': '0x800', 'destination': 'ff:ff:ff:ff:ff:ff', 'source': '00:ab:cd:ef:01:23'}</msg>
<var>${ethernet_match_dict}</var>
<arg>type=${eth_type}</arg>
<arg>destination=${eth_dst}</arg>
<arg>source=${eth_src}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:28.852615" elapsed="0.000514"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.853733" level="INFO">${ipv4_match_dict} = {'source': '11.3.0.0/16', 'destination': '99.0.0.0/8'}</msg>
<var>${ipv4_match_dict}</var>
<arg>source=${ipv4_src}</arg>
<arg>destination=${ipv4_dst}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:28.853337" elapsed="0.000422"/>
</kw>
<kw name="Create Inventory Flow" owner="FlowLib">
<kw name="Make Inventory Flow" owner="FlowLib">
<msg time="2026-05-25T01:55:28.854392" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt;</msg>
<var>${flow}</var>
<doc>Robot Keyword to create and return an instance of the Flow
class.</doc>
<status status="PASS" start="2026-05-25T01:55:28.854269" elapsed="0.000149"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.854461" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:55:28.854607" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt;</msg>
<var>${flow}</var>
<doc>Calls FlowLib.Make_Inventory_Flow function and initializes and sanitizes
the basic flow elements that can be given to flow:inventory</doc>
<status status="PASS" start="2026-05-25T01:55:28.853939" elapsed="0.000694"/>
</kw>
<kw name="Set &quot;${flow}&quot; &quot;table_id&quot; With &quot;${table_id}&quot;" owner="FlowLib" source_name="Set &quot;${flow}&quot; &quot;${property}&quot; With &quot;${property_val}&quot;">
<if>
<branch type="IF" condition="&quot;table_id&quot; != &quot;${property}&quot; and &quot;cookie_mask&quot; != &quot;${property}&quot;">
<kw name="Replace String" owner="String">
<var>${property}</var>
<arg>${property}</arg>
<arg>_</arg>
<arg>-</arg>
<doc>Replaces ``search_for`` in the given ``string`` with ``replace_with``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:28.859693" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:28.859399" elapsed="0.000359"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.860270" level="INFO">${property} = table_id</msg>
<var>${property}</var>
<arg>${property}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:28.859962" elapsed="0.000335"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:28.859782" elapsed="0.000551"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.859380" elapsed="0.000974"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:28.866991" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfbb72e0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:28.864817" elapsed="0.002201"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:28.867660" elapsed="0.000299"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:28.867272" elapsed="0.000742"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:28.868550" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.868223" elapsed="0.000355"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:28.868771" elapsed="0.000159"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.868980" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt;
object. The &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:28.864419" elapsed="0.004700"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:28.900401" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfbb69d0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:28.898203" elapsed="0.002227"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.900624" elapsed="0.000432"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:28.901592" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.901275" elapsed="0.000346"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:28.901812" elapsed="0.000158"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.904362" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:28.902179" elapsed="0.002232"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.904456" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:28.897708" elapsed="0.006871"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:28.904780" elapsed="0.000183"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.905013" elapsed="0.000027"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-05-25T01:55:28.859039" elapsed="0.046108"/>
</kw>
<kw name="Set &quot;${flow}&quot; &quot;id&quot; With &quot;${flow_id}&quot;" owner="FlowLib" source_name="Set &quot;${flow}&quot; &quot;${property}&quot; With &quot;${property_val}&quot;">
<if>
<branch type="IF" condition="&quot;table_id&quot; != &quot;${property}&quot; and &quot;cookie_mask&quot; != &quot;${property}&quot;">
<kw name="Replace String" owner="String">
<msg time="2026-05-25T01:55:28.910150" level="INFO">${property} = id</msg>
<var>${property}</var>
<arg>${property}</arg>
<arg>_</arg>
<arg>-</arg>
<doc>Replaces ``search_for`` in the given ``string`` with ``replace_with``.</doc>
<status status="PASS" start="2026-05-25T01:55:28.909918" elapsed="0.000259"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:28.909629" elapsed="0.000589"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${property}</var>
<arg>${property}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:28.910427" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:28.910242" elapsed="0.000240"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.909609" elapsed="0.000893"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:28.917323" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfbb62a0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:28.915139" elapsed="0.002212"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:28.918274" elapsed="0.000302"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:28.917557" elapsed="0.001076"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:28.919180" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.918831" elapsed="0.000377"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:28.919498" elapsed="0.000162"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.919710" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt;
object. The &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:28.914703" elapsed="0.005128"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:28.951428" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2ffab0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:28.949240" elapsed="0.002216"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.951650" elapsed="0.000441"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:28.952620" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;32&lt;/id&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.952301" elapsed="0.000348"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:28.952840" elapsed="0.000158"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:28.955392" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;32&lt;/id&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:28.953205" elapsed="0.002235"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.955484" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:28.948738" elapsed="0.006868"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:28.955804" elapsed="0.000181"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.956034" elapsed="0.000026"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-05-25T01:55:28.909335" elapsed="0.046834"/>
</kw>
<kw name="Set &quot;${flow}&quot; &quot;priority&quot; With &quot;${priority}&quot;" owner="FlowLib" source_name="Set &quot;${flow}&quot; &quot;${property}&quot; With &quot;${property_val}&quot;">
<if>
<branch type="IF" condition="&quot;table_id&quot; != &quot;${property}&quot; and &quot;cookie_mask&quot; != &quot;${property}&quot;">
<kw name="Replace String" owner="String">
<msg time="2026-05-25T01:55:28.961137" level="INFO">${property} = priority</msg>
<var>${property}</var>
<arg>${property}</arg>
<arg>_</arg>
<arg>-</arg>
<doc>Replaces ``search_for`` in the given ``string`` with ``replace_with``.</doc>
<status status="PASS" start="2026-05-25T01:55:28.960909" elapsed="0.000254"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:28.960622" elapsed="0.000583"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${property}</var>
<arg>${property}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:28.961414" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:28.961230" elapsed="0.000238"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:28.960603" elapsed="0.000886"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:28.968144" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfbb5580&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:28.965950" elapsed="0.002222"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:28.968759" elapsed="0.000293"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:28.968378" elapsed="0.000746"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:28.969632" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;32&lt;/id&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:28.969317" elapsed="0.000343"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:28.969848" elapsed="0.000157"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:28.970054" elapsed="0.000043"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt;
object. The &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:28.965555" elapsed="0.004674"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:29.002417" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc0d5c60&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:29.000236" elapsed="0.002209"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.002638" elapsed="0.000424"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:29.003626" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;32&lt;/id&gt;&lt;priority&gt;12345&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.003302" elapsed="0.000354"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:29.003845" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:29.006363" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;32&lt;/id&gt;&lt;priority&gt;12345&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:29.004211" elapsed="0.002201"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.006456" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:28.999735" elapsed="0.006845"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>${property}</arg>
<arg>${property_val}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:29.006776" elapsed="0.000183"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.007008" elapsed="0.000026"/>
</return>
<doc>Embedded variables to make higher level keywords more readable.
There are some cases where the python attribute uses an underscore,
but a hyphen needs to be used. This seems inconsistent, and may need
to be looked at from the openflow plugin perspective.</doc>
<status status="PASS" start="2026-05-25T01:55:28.960335" elapsed="0.046836"/>
</kw>
<kw name="Clear Flow Actions" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:29.014147" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fc090&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:29.011954" elapsed="0.002221"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:29.014761" elapsed="0.000318"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:29.014381" elapsed="0.000785"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:29.015679" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;32&lt;/id&gt;&lt;priority&gt;12345&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.015359" elapsed="0.000349"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:29.015898" elapsed="0.000158"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.016121" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>instructions/instruction</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt;
object. The &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:29.011578" elapsed="0.004670"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.016294" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<doc>Will clean out any existing flow actions in the given &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object</doc>
<status status="PASS" start="2026-05-25T01:55:29.007386" elapsed="0.009021"/>
</kw>
<kw name="Set Flow Output Action" owner="FlowLib">
<kw name="Set Flow Action" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:29.065890" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc4ac680&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:29.023573" elapsed="0.042357"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:29.066664" elapsed="0.000313"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:29.066224" elapsed="0.000808"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:29.067628" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions /&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;32&lt;/id&gt;&lt;priority&gt;12345&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.067278" elapsed="0.000380"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:29.067846" elapsed="0.000162"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.068154" elapsed="0.000041"/>
</return>
<arg>${flow}</arg>
<arg>instruction</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt;
object. The &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:29.023201" elapsed="0.045101"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:29.101534" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc4ba250&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:29.099296" elapsed="0.002266"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.101757" elapsed="0.000448"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:29.102738" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction /&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;32&lt;/id&gt;&lt;priority&gt;12345&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.102412" elapsed="0.000356"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:29.102958" elapsed="0.000184"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:29.105494" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction /&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;32&lt;/id&gt;&lt;priority&gt;12345&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:29.103336" elapsed="0.002207"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.105588" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>instruction</arg>
<arg>${EMPTY}</arg>
<arg>instructions</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:29.097046" elapsed="0.008672"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:29.136978" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfbb6e80&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:29.134795" elapsed="0.002210"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.137214" elapsed="0.000434"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:29.138193" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;32&lt;/id&gt;&lt;priority&gt;12345&lt;/priority&gt;&lt;/flow&gt;</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.137849" elapsed="0.000375"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:29.138414" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:29.140943" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;32&lt;/id&gt;&lt;priority&gt;12345&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:29.138760" elapsed="0.002233"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.141036" elapsed="0.000042"/>
</return>
<arg>${flow}</arg>
<arg>order</arg>
<arg>${instruction_order}</arg>
<arg>instructions/instruction</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:29.134327" elapsed="0.006848"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:29.174487" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfbb4590&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:29.172168" elapsed="0.002346"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.174706" elapsed="0.000460"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:29.175700" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions /&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;32&lt;/id&gt;&lt;priority&gt;12345&lt;/prio...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.175369" elapsed="0.000361"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:29.175919" elapsed="0.000174"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:29.178444" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions /&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;32&lt;/id&gt;&lt;priority&gt;12345&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:29.176281" elapsed="0.002248"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.178573" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>apply-actions</arg>
<arg>${EMPTY}</arg>
<arg>instructions/instruction</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:29.169949" elapsed="0.008747"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:29.211845" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfbb67a0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:29.209634" elapsed="0.002239"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.212081" elapsed="0.000433"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:29.213048" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action /&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;32&lt;/...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.212717" elapsed="0.000376"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:29.213284" elapsed="0.000157"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:29.215792" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action /&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;32&lt;/id&gt;&lt;priority&gt;12345&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:29.213627" elapsed="0.002214"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.215885" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>action</arg>
<arg>${EMPTY}</arg>
<arg>instructions/instruction/apply-actions</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:29.207452" elapsed="0.008556"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:29.247303" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfbb7380&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:29.245098" elapsed="0.002233"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.247526" elapsed="0.000432"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:29.248512" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.248175" elapsed="0.000368"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:29.248735" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:29.251278" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;32&lt;/id&gt;&lt;priority&gt;12345&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:29.249099" elapsed="0.002230"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.251373" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>order</arg>
<arg>${action_order}</arg>
<arg>instructions/instruction/apply-actions/action</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:29.244618" elapsed="0.006878"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:29.283058" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc4bae80&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:29.280734" elapsed="0.002366"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.283319" elapsed="0.000436"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:29.284311" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action /&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.283955" elapsed="0.000386"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:29.284572" elapsed="0.000162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:29.287109" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action /&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;32&lt;/id&gt;&lt;priority&gt;12345&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:29.284921" elapsed="0.002240"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.287215" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>${action}</arg>
<arg>${action_val}</arg>
<arg>instructions/instruction/apply-actions/action</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:29.280250" elapsed="0.007091"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.287394" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>${instruction_order}</arg>
<arg>${action_order}</arg>
<arg>output-action</arg>
<doc>Will remove the instruction element first, then add the proper xml structure
to implement the action as given in the arguments</doc>
<status status="PASS" start="2026-05-25T01:55:29.017026" elapsed="0.270484"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:29.318858" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfbb5620&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:29.316653" elapsed="0.002233"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.319091" elapsed="0.000453"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:29.320105" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.319745" elapsed="0.000392"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:29.320327" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:29.322831" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match /&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;32&lt;/id&gt;&lt;priority&gt;12345&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:29.320674" elapsed="0.002208"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.322925" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>output-node-connector</arg>
<arg>${output_port}</arg>
<arg>instructions/instruction/apply-actions/action/output-action</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:29.316187" elapsed="0.006859"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.323132" elapsed="0.000027"/>
</return>
<arg>${flow}</arg>
<arg>0</arg>
<arg>0</arg>
<arg>${output_port}</arg>
<status status="PASS" start="2026-05-25T01:55:29.016584" elapsed="0.306689"/>
</kw>
<kw name="Set Flow Ethernet Match" owner="FlowLib">
<kw name="Clear Flow Matches" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:29.334606" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfbb60c0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:29.332426" elapsed="0.002208"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:29.335244" elapsed="0.000305"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:29.334838" elapsed="0.000765"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:29.336151" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.335793" elapsed="0.000389"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:29.336372" elapsed="0.000158"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.336579" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>match/${match_element}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt;
object. The &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:29.332007" elapsed="0.004692"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.336780" elapsed="0.000027"/>
</return>
<arg>${flow}</arg>
<arg>match/ethernet-match</arg>
<doc>Will clean out any existing flow matches in the given &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object</doc>
<status status="PASS" start="2026-05-25T01:55:29.327785" elapsed="0.009114"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:29.369826" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfbb7600&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:29.367634" elapsed="0.002220"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.370047" elapsed="0.000444"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:29.371039" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.370693" elapsed="0.000392"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:29.371303" elapsed="0.000166"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:29.373807" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match /&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;32&lt;/id&gt;&lt;priority&gt;12345&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:29.371658" elapsed="0.002202"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.373903" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>ethernet-match</arg>
<arg>${EMPTY}</arg>
<arg>match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:29.365458" elapsed="0.008570"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:29.374440" level="INFO">${type} = 0x800</msg>
<var>${type}</var>
<arg>${match_value_dict}</arg>
<arg>type</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:29.374251" elapsed="0.000215"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:29.407848" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfbb4b80&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:29.405607" elapsed="0.002270"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.408083" elapsed="0.000435"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:29.409080" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.408720" elapsed="0.000392"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:29.409302" elapsed="0.000157"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:29.411822" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type /&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;32&lt;/id&gt;&lt;priority&gt;12345&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:29.409648" elapsed="0.002227"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.411926" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>ethernet-type</arg>
<arg>${EMPTY}</arg>
<arg>match/ethernet-match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:29.403376" elapsed="0.008675"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:29.443164" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfbb7740&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:29.440945" elapsed="0.002247"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.443410" elapsed="0.000433"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:29.444422" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.444045" elapsed="0.000407"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:29.444684" elapsed="0.000165"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:29.447341" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;32&lt;/id&gt;&lt;priority&gt;12345&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:29.445035" elapsed="0.002363"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.447442" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>type</arg>
<arg>${type}</arg>
<arg>match/ethernet-match/ethernet-type</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:29.440484" elapsed="0.007080"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:29.447948" level="INFO">${src} = 00:ab:cd:ef:01:23</msg>
<var>${src}</var>
<arg>${match_value_dict}</arg>
<arg>source</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:29.447767" elapsed="0.000206"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:29.480931" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2ff6f0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:29.478724" elapsed="0.002235"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.481167" elapsed="0.000497"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:29.482253" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.481873" elapsed="0.000411"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:29.482474" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:29.484998" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source /&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;32&lt;/id&gt;&lt;priority&gt;12345&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:29.482820" elapsed="0.002232"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.485111" elapsed="0.000031"/>
</return>
<arg>${flow}</arg>
<arg>ethernet-source</arg>
<arg>${EMPTY}</arg>
<arg>match/ethernet-match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:29.476546" elapsed="0.008691"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:29.516691" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2ff010&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:29.514433" elapsed="0.002286"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.516913" elapsed="0.000454"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:29.517927" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.517569" elapsed="0.000389"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:29.518165" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:29.520691" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;32&lt;/id&gt;&lt;priority&gt;12345&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:29.518513" elapsed="0.002232"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.520823" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>address</arg>
<arg>${src}</arg>
<arg>match/ethernet-match/ethernet-source</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:29.513954" elapsed="0.006995"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:29.521352" level="INFO">${dst} = ff:ff:ff:ff:ff:ff</msg>
<var>${dst}</var>
<arg>${match_value_dict}</arg>
<arg>destination</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:29.521168" elapsed="0.000210"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:29.554560" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2ff7e0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:29.552351" elapsed="0.002237"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.554780" elapsed="0.000451"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:29.555822" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.555459" elapsed="0.000393"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:29.556046" elapsed="0.000176"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:29.558705" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination /&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;32&lt;/id&gt;&lt;priority&gt;12345&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:29.556411" elapsed="0.002349"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.558805" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>ethernet-destination</arg>
<arg>${EMPTY}</arg>
<arg>match/ethernet-match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:29.550097" elapsed="0.008830"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:29.590416" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfbb67f0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:29.588207" elapsed="0.002237"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.590637" elapsed="0.000448"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:29.591663" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.591288" elapsed="0.000405"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:29.591883" elapsed="0.000158"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:29.594393" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;32&lt;/id&gt;&lt;priority&gt;12345&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:29.592246" elapsed="0.002203"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.594493" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>address</arg>
<arg>${dst}</arg>
<arg>match/ethernet-match/ethernet-destination</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:29.587725" elapsed="0.006890"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.594669" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>${ethernet_match_dict}</arg>
<doc>Specific keyword for adding an ethernet match rules where the elements are given
in key/value pairs inside the ${match_value_dict} argument. This keyword will also remove any
existing ethernet-match elements from the flow before adding</doc>
<status status="PASS" start="2026-05-25T01:55:29.327361" elapsed="0.267457"/>
</kw>
<kw name="Set Flow IPv4 Match" owner="FlowLib">
<kw name="Clear Flow Matches" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:29.606164" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5abfbb7ab0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:29.603957" elapsed="0.002235"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:29.606779" elapsed="0.000315"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:29.606397" elapsed="0.000752"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:29.607729" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.607363" elapsed="0.000396"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:29.607950" elapsed="0.000174"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.608175" elapsed="0.000028"/>
</return>
<arg>${flow}</arg>
<arg>match/${match_element}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt;
object. The &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:29.603545" elapsed="0.004750"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.608342" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>match/ipv4-source</arg>
<doc>Will clean out any existing flow matches in the given &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object</doc>
<status status="PASS" start="2026-05-25T01:55:29.599320" elapsed="0.009135"/>
</kw>
<kw name="Clear Flow Matches" owner="FlowLib">
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:29.615691" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2ff1f0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:29.613478" elapsed="0.002241"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Remove Elements" owner="XML">
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Removes all elements matching ``xpath`` from the ``source`` structure.</doc>
<status status="PASS" start="2026-05-25T01:55:29.616318" elapsed="0.000302"/>
</kw>
<arg>Remove Elements</arg>
<arg>${flow_xml}</arg>
<arg>xpath=${element_xpath}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:29.615925" elapsed="0.000748"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:29.617240" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.616864" elapsed="0.000407"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:29.617461" elapsed="0.000158"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.617668" elapsed="0.000027"/>
</return>
<arg>${flow}</arg>
<arg>match/${match_element}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt;
object. The &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-05-25T01:55:29.613058" elapsed="0.004728"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.617834" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>match/ipv4-destination</arg>
<doc>Will clean out any existing flow matches in the given &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object</doc>
<status status="PASS" start="2026-05-25T01:55:29.608670" elapsed="0.009277"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:29.618340" level="INFO">${src} = 11.3.0.0/16</msg>
<var>${src}</var>
<arg>${match_value_dict}</arg>
<arg>source</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:29.618159" elapsed="0.000207"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:29.649495" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fd9e0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:29.647283" elapsed="0.002240"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.649715" elapsed="0.000443"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:29.650723" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.650361" elapsed="0.000392"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:29.650945" elapsed="0.000178"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:29.653507" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;32&lt;/id&gt;&lt;priority&gt;12345&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:29.651315" elapsed="0.002282"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.653642" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>ipv4-source</arg>
<arg>${src}</arg>
<arg>match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:29.646807" elapsed="0.006958"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:29.654170" level="INFO">${dst} = 99.0.0.0/8</msg>
<var>${dst}</var>
<arg>${match_value_dict}</arg>
<arg>destination</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:55:29.653970" elapsed="0.000226"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:55:29.685463" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7f5acc2fd0d0&gt;</msg>
<var>${flow_xml}</var>
<arg>${flow.xml}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:55:29.683240" elapsed="0.002250"/>
</kw>
<kw name="Add Element" owner="XML">
<arg>${flow_xml}</arg>
<arg>&lt;${element}&gt;${element_val}&lt;/${element}&gt;</arg>
<arg>xpath=${xpath}</arg>
<doc>Adds a child element to the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.685682" elapsed="0.000443"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-05-25T01:55:29.686696" level="INFO">${xml_string} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/out...</msg>
<var>${xml_string}</var>
<arg>${flow_xml}</arg>
<doc>Returns the string representation of the specified element.</doc>
<status status="PASS" start="2026-05-25T01:55:29.686327" elapsed="0.000399"/>
</kw>
<kw name="Set Flow Field" owner="FlowLib">
<arg>${flow}</arg>
<arg>xml</arg>
<arg>${xml_string}</arg>
<doc>Robot Keyword to allow the modification (setting) of the
flow object attributes</doc>
<status status="PASS" start="2026-05-25T01:55:29.686915" elapsed="0.000174"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:29.689592" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;32&lt;/id&gt;&lt;priority&gt;12345&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:29.687280" elapsed="0.002370"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.689695" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>ipv4-destination</arg>
<arg>${dst}</arg>
<arg>match</arg>
<doc>Will modify the current xml representation of the &lt;FlowLib.Flow object at 0x7f5ace4fbf90&gt; object to contain
the given ${element} at the given ${xpath}. If the ${element} uses a value, that can be
passed eith the ${element_val} which defaults to  if not used. NOTE: since there
are two default parameters to this keyword, if you have an ${xpath} to use, but no ${element_val}
you will still need to pass  when invoking so that ${xpath} will end up at the right
location in the parameter list</doc>
<status status="PASS" start="2026-05-25T01:55:29.682763" elapsed="0.007054"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-05-25T01:55:29.689871" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<arg>${ipv4_match_dict}</arg>
<doc>Specific keyword for adding an ipv4 match rules where the elements are given
in key/value pairs inside the ${match_value_dict} argument. This keyword will also remove any
existing ipv4 match elements from the flow before adding</doc>
<status status="PASS" start="2026-05-25T01:55:29.598878" elapsed="0.091106"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:29.692436" level="INFO">Flow XML is &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;32&lt;/id&gt;&lt;priority&gt;12345&lt;/priority&gt;&lt;/flow&gt;</msg>
<arg>Flow XML is ${flow.xml}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:29.690187" elapsed="0.002306"/>
</kw>
<kw name="Call Method" owner="BuiltIn">
<arg>${test_switch}</arg>
<arg>create_flow_match_elements</arg>
<arg>${flow.xml}</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-05-25T01:55:29.692685" elapsed="0.002265"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:29.697205" level="INFO">['dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=LOCAL', 'table=200']</msg>
<arg>${test_switch.flow_validations}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:29.695165" elapsed="0.002087"/>
</kw>
<kw name="Get Switch Datapath ID" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:29.700280" elapsed="0.001990"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:29.698186" elapsed="0.004122"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.698165" elapsed="0.004169"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:29.704478" elapsed="0.002198"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:29.702390" elapsed="0.004362"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.702373" elapsed="0.004408"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:29.708919" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:29.706837" elapsed="0.002138"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.706820" elapsed="0.002179"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:29.711129" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:29.709053" elapsed="0.002134"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.709037" elapsed="0.002175"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:29.697932" elapsed="0.013327"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:29.713825" elapsed="0.000135"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:29.711756" elapsed="0.002238"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.711738" elapsed="0.002280"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:29.716155" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:29.714086" elapsed="0.002122"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.714055" elapsed="0.002176"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:29.711521" elapsed="0.004756"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:29.720741" level="INFO">Executing command '/sbin/ifconfig s1 | grep -o -E "([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}"'.</msg>
<msg time="2026-05-25T01:55:29.734115" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:29.734326" level="INFO">${output} = be:c0:62:38:a2:47</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:29.720611" elapsed="0.013770"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:29.718520" elapsed="0.015946"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:29.734946" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:29.734523" elapsed="0.000575"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.718502" elapsed="0.016646"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:29.739998" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:29.735271" elapsed="0.004887"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:29.741300" level="INFO">${output} = be:c0:62:38:a2:47</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:29.740616" elapsed="0.000741"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:29.740212" elapsed="0.001226"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.735235" elapsed="0.006250"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:29.741560" elapsed="0.000062"/>
</return>
<msg time="2026-05-25T01:55:29.741950" level="INFO">${switch.datapath_id_output_string} = be:c0:62:38:a2:47</msg>
<var>${switch.datapath_id_output_string}</var>
<arg>${switch}</arg>
<arg>${switch.datapath_id_output_command}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:29.716558" elapsed="0.025449"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:29.745623" level="INFO">be:c0:62:38:a2:47</msg>
<arg>${switch.datapath_id_output_string}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:29.742462" elapsed="0.003206"/>
</kw>
<kw name="Call Method" owner="BuiltIn">
<arg>${switch}</arg>
<arg>update_datapath_id</arg>
<doc>Calls the named method of the given object with the provided arguments.</doc>
<status status="PASS" start="2026-05-25T01:55:29.745862" elapsed="0.000295"/>
</kw>
<return>
<value>${switch.datapath_id}</value>
<status status="PASS" start="2026-05-25T01:55:29.746206" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:55:29.748325" level="INFO">${dpid_id} = 209733490876999</msg>
<var>${dpid_id}</var>
<arg>${test_switch}</arg>
<doc>Using the connection index for the given switch, will execute the command string
"datapath_id_output_command" which will store the output in switch.datapath_id_output_string.
The switch object method "update_datapath_id" is called which is assumed to place the ODL
friendly (decimal) version of the datapath id in to switch.datapath_id and the value is also
returned from this keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:29.697463" elapsed="0.050888"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Add Flow To Controller And Verify" owner="FlowLib">
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:29.764598" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=32 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=32 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node017ncy2bg6j4jtalpiszt0cnfu11.node0', 'Content-Length': '667', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;0x800&lt;/type&gt;&lt;/ethernet-type&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;id&gt;32&lt;/id&gt;&lt;priority&gt;12345&lt;/priority&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:55:29.764692" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=32 
 status=201, reason=Created 
 headers={'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:29.764798" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>headers=${HEADERS_XML}</arg>
<arg>data=${flow_body}</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:29.755358" elapsed="0.009466"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:29.767261" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:29.765027" elapsed="0.002277"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:29.772890" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=32?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=32?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node017ncy2bg6j4jtalpiszt0cnfu11.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:29.773664" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=32?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '666'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;32&lt;/id&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;priority&gt;12345&lt;/priority&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:55:29.773827" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${ACCEPT_XML}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:29.767493" elapsed="0.006370"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:29.777393" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;32&lt;/id&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-source&gt;&lt;address&gt;00:ab:cd:ef:01:23&lt;/address&gt;&lt;/ethernet-source&gt;&lt;ethernet-destination&gt;&lt;address&gt;ff:ff:ff:ff:ff:ff&lt;/address&gt;&lt;/ethernet-destination&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-source&gt;11.3.0.0/16&lt;/ipv4-source&gt;&lt;ipv4-destination&gt;99.0.0.0/8&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;table_id&gt;200&lt;/table_id&gt;&lt;priority&gt;12345&lt;/priority&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:29.774165" elapsed="0.003309"/>
</kw>
<kw name="Compare Xml" owner="Common">
<arg>${flow_body}</arg>
<arg>${resp.text}</arg>
<doc>compare the two XML files to see if they contain the same data
but could be if different order.
It just split the xml in to lines and just check the line is in
the other file</doc>
<status status="PASS" start="2026-05-25T01:55:29.777744" elapsed="0.003072"/>
</kw>
<arg>${flow.xml}</arg>
<arg>openflow%3A${dpid_id}</arg>
<arg>${flow.table_id}</arg>
<arg>${flow.id}</arg>
<doc>Push flow through REST-API and verify in data-store</doc>
<status status="PASS" start="2026-05-25T01:55:29.749091" elapsed="0.031814"/>
</kw>
<arg>3s</arg>
<arg>1s</arg>
<arg>Add Flow To Controller And Verify</arg>
<arg>${flow.xml}</arg>
<arg>openflow%3A${dpid_id}</arg>
<arg>${flow.table_id}</arg>
<arg>${flow.id}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:29.748561" elapsed="0.032420"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Validate Switch Output" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:29.795976" elapsed="0.001999"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:29.793899" elapsed="0.004114"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.793880" elapsed="0.004158"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:29.800187" elapsed="0.002172"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:29.798107" elapsed="0.004293"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.798089" elapsed="0.004335"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:29.804553" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:29.802478" elapsed="0.002131"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.802462" elapsed="0.002171"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:29.806755" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:29.804686" elapsed="0.002127"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.804671" elapsed="0.002165"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:29.793668" elapsed="0.013214"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:29.809659" elapsed="0.000115"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:29.807405" elapsed="0.002402"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.807387" elapsed="0.002444"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:29.811973" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:29.809885" elapsed="0.002140"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.809869" elapsed="0.002179"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:29.807126" elapsed="0.004984"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:29.814865" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-05-25T01:55:29.828033" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:29.828146" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:29.814738" elapsed="0.013437"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:29.812636" elapsed="0.015577"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:29.828434" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:29.828240" elapsed="0.000251"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.812618" elapsed="0.015893"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:29.830646" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:29.828566" elapsed="0.002139"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:29.831219" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:29.830910" elapsed="0.000338"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:29.830729" elapsed="0.000556"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.828550" elapsed="0.002757"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:29.831340" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:29.831523" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${tmp}</var>
<arg>${switch}</arg>
<arg>/sbin/ifconfig</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:29.812385" elapsed="0.019166"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:29.831988" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:2f:dc:c0  txqueuelen 1000  (Ethernet)
        RX packets 7568  bytes 20324153 (20.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 5022  bytes 1399985 (1.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 286  bytes 25024 (25.0 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 286  bytes 25024 (25.0 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

s1: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500
        inet6 fe80::bcc0:62ff:fe38:a247  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether be:c0:62:38:a2:47  txqueuelen 1000  (Ethernet)
        RX packets 6  bytes 660 (660.0 B)
        RX errors 0  dropped 6  overruns 0  frame 0
        TX packets 8  bytes 656 (656.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:29.831741" elapsed="0.000303"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:29.838203" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-05-25T01:55:29.887685" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:29.887897" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=12.233s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.116s, table=200, n_packe...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:29.837887" elapsed="0.050068"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:29.833134" elapsed="0.054906"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:29.888559" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:29.888136" elapsed="0.000546"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.833063" elapsed="0.055664"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:29.893579" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:29.888848" elapsed="0.004863"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:29.894844" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=12.233s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.116s, table=200, n_packe...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:29.894195" elapsed="0.000710"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:29.893763" elapsed="0.001294"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.888813" elapsed="0.006327"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:29.895219" elapsed="0.000066"/>
</return>
<msg time="2026-05-25T01:55:29.895599" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=12.233s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.116s, table=200, n_packe...</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:29.832497" elapsed="0.063162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:29.896528" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=12.233s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.116s, table=200, n_packets=0, n_bytes=0, priority=12345,ip,dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=LOCAL</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:29.896108" elapsed="0.000467"/>
</kw>
<for flavor="IN">
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:29.897152" elapsed="0.000520"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:29.896880" elapsed="0.000833"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.896865" elapsed="0.000873"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:29.898047" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:29.897791" elapsed="0.000329"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.897775" elapsed="0.000368"/>
</if>
<var name="${str}">dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=LOCAL</var>
<status status="PASS" start="2026-05-25T01:55:29.896835" elapsed="0.001330"/>
</iter>
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:29.898607" elapsed="0.000314"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:29.898359" elapsed="0.000601"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.898345" elapsed="0.000640"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:29.899344" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:29.899037" elapsed="0.000365"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.899021" elapsed="0.000404"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-05-25T01:55:29.898315" elapsed="0.001143"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-05-25T01:55:29.896632" elapsed="0.002854"/>
</for>
<arg>${test_switch}</arg>
<arg>${test_switch.dump_all_flows}</arg>
<arg>${test_switch.flow_validations}</arg>
<doc>A generic keyword that will execute one command on the switch, and check for each string in the @{validations} argument.  There is a boolean flag ${should_exist} that can be used to check that the validations are or are NOT in the output of the command executed.</doc>
<status status="PASS" start="2026-05-25T01:55:29.789424" elapsed="0.110120"/>
</kw>
<arg>3s</arg>
<arg>1s</arg>
<arg>Validate Switch Output</arg>
<arg>${test_switch}</arg>
<arg>${test_switch.dump_all_flows}</arg>
<arg>${test_switch.flow_validations}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:29.781296" elapsed="0.118302"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Remove Flow From Controller And Verify" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:29.911909" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=32 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=32 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node017ncy2bg6j4jtalpiszt0cnfu11.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:29.911955" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=32 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:29.912054" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:29.904819" elapsed="0.007281"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:29.914509" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:29.912302" elapsed="0.002250"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:29.921726" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=32?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=32?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node017ncy2bg6j4jtalpiszt0cnfu11.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:29.921876" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A209733490876999/flow-node-inventory:table=200/flow=32?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/yang-data+json', 'Content-Length': '242'} 
 body={
  "errors": {
    "error": [
      {
        "error-tag": "data-missing",
        "error-message": "Request could not be completed because the relevant data model content does not exist",
        "error-type": "protocol"
      }
    ]
  }
} 
 </msg>
<msg time="2026-05-25T01:55:29.922014" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:29.914714" elapsed="0.007338"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code} == 404 or ${resp.status_code} == 409">
<return>
<status status="PASS" start="2026-05-25T01:55:29.927993" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-05-25T01:55:29.922244" elapsed="0.005851"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.922214" elapsed="0.005917"/>
</if>
<kw name="Log" owner="BuiltIn">
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:29.928350" elapsed="0.000031"/>
</kw>
<kw name="Fail" owner="BuiltIn">
<arg>The request failed with code ${resp.status_code}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:29.928588" elapsed="0.000028"/>
</kw>
<arg>openflow%3A${dpid_id}</arg>
<arg>${flow.table_id}</arg>
<arg>${flow.id}</arg>
<doc>Remove flow and verify</doc>
<status status="PASS" start="2026-05-25T01:55:29.900362" elapsed="0.028332"/>
</kw>
<arg>3s</arg>
<arg>1s</arg>
<arg>Remove Flow From Controller And Verify</arg>
<arg>openflow%3A${dpid_id}</arg>
<arg>${flow.table_id}</arg>
<arg>${flow.id}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:29.899808" elapsed="0.028956"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Validate Switch Output" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:29.943858" elapsed="0.001989"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:29.941750" elapsed="0.004136"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.941731" elapsed="0.004179"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:29.948040" elapsed="0.002195"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:29.945965" elapsed="0.004310"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.945948" elapsed="0.004352"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:29.952441" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:29.950355" elapsed="0.002141"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.950338" elapsed="0.002182"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:29.954635" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:29.952574" elapsed="0.002119"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.952557" elapsed="0.002159"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:29.941517" elapsed="0.013245"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:29.957326" elapsed="0.000114"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:29.955241" elapsed="0.002233"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.955222" elapsed="0.002276"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:29.959625" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:29.957551" elapsed="0.002125"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.957534" elapsed="0.002165"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:29.954991" elapsed="0.004754"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:29.962655" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-05-25T01:55:29.975741" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:29.975836" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:29.962525" elapsed="0.013339"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:29.960286" elapsed="0.015616"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:29.976140" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:29.975928" elapsed="0.000271"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.960268" elapsed="0.015953"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:29.981100" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:29.976320" elapsed="0.004914"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:29.982391" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:29.981697" elapsed="0.000759"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:29.981287" elapsed="0.001252"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.976277" elapsed="0.006309"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:29.982663" elapsed="0.000063"/>
</return>
<msg time="2026-05-25T01:55:29.982990" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20...</msg>
<var>${tmp}</var>
<arg>${switch}</arg>
<arg>/sbin/ifconfig</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:29.960019" elapsed="0.023131"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:29.984232" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.68  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fe2f:dcc0  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:2f:dc:c0  txqueuelen 1000  (Ethernet)
        RX packets 7578  bytes 20325485 (20.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 5036  bytes 1403357 (1.4 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&lt;UP,LOOPBACK,RUNNING&gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&lt;host&gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 286  bytes 25024 (25.0 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 286  bytes 25024 (25.0 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

s1: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1500
        inet6 fe80::bcc0:62ff:fe38:a247  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether be:c0:62:38:a2:47  txqueuelen 1000  (Ethernet)
        RX packets 6  bytes 660 (660.0 B)
        RX errors 0  dropped 6  overruns 0  frame 0
        TX packets 8  bytes 656 (656.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0</msg>
<arg>${tmp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:29.983641" elapsed="0.000740"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:29.987174" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-05-25T01:55:30.035450" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:30.035692" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=12.380s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:29.987033" elapsed="0.048717"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:29.984960" elapsed="0.050874"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:30.036359" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:30.035894" elapsed="0.000597"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:29.984942" elapsed="0.051593"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:30.041421" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:30.036660" elapsed="0.004892"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:30.042681" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=12.380s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535</msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:30.042001" elapsed="0.000741"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:30.041604" elapsed="0.001220"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:30.036623" elapsed="0.006247"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:30.042945" elapsed="0.000061"/>
</return>
<msg time="2026-05-25T01:55:30.043308" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=12.380s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535</msg>
<var>${output}</var>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:29.984688" elapsed="0.058679"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:30.044427" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=12.380s, table=0, n_packets=7, n_bytes=566, send_flow_rem priority=0 actions=CONTROLLER:65535</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:30.043843" elapsed="0.000640"/>
</kw>
<for flavor="IN">
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:30.045024" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:30.044768" elapsed="0.000331"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:30.044754" elapsed="0.000369"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:30.045426" elapsed="0.000314"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:30.045176" elapsed="0.000604"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:30.045160" elapsed="0.000643"/>
</if>
<var name="${str}">dl_src=00:ab:cd:ef:01:23,dl_dst=ff:ff:ff:ff:ff:ff,nw_src=11.3.0.0/16,nw_dst=99.0.0.0/8 actions=LOCAL</var>
<status status="PASS" start="2026-05-25T01:55:30.044725" elapsed="0.001100"/>
</iter>
<iter>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;true&quot;">
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:30.046287" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:30.046011" elapsed="0.000334"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:30.045997" elapsed="0.000370"/>
</if>
<if>
<branch type="IF" condition="&quot;${should_exist}&quot; == &quot;false&quot;">
<kw name="Should Not Match Regexp" owner="BuiltIn">
<arg>${output}</arg>
<arg>${str}</arg>
<doc>Fails if ``string`` matches ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:55:30.046666" elapsed="0.000313"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:30.046419" elapsed="0.000599"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:30.046404" elapsed="0.000637"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-05-25T01:55:30.045969" elapsed="0.001108"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-05-25T01:55:30.044533" elapsed="0.002574"/>
</for>
<arg>${test_switch}</arg>
<arg>${test_switch.dump_all_flows}</arg>
<arg>${test_switch.flow_validations}</arg>
<arg>false</arg>
<doc>A generic keyword that will execute one command on the switch, and check for each string in the @{validations} argument.  There is a boolean flag ${should_exist} that can be used to check that the validations are or are NOT in the output of the command executed.</doc>
<status status="PASS" start="2026-05-25T01:55:29.937252" elapsed="0.109907"/>
</kw>
<arg>3s</arg>
<arg>1s</arg>
<arg>Validate Switch Output</arg>
<arg>${test_switch}</arg>
<arg>${test_switch.dump_all_flows}</arg>
<arg>${test_switch.flow_validations}</arg>
<arg>false</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:29.929053" elapsed="0.118195"/>
</kw>
<arg>${TEST_NAME}</arg>
<arg>200</arg>
<arg>32</arg>
<arg>12345</arg>
<status status="PASS" start="2026-05-25T01:55:28.852190" elapsed="1.195125"/>
</kw>
<doc>OF1.3 OFPP_LOCAL = 0xfffffffe, /* Local openflow "port". */</doc>
<tag>local</tag>
<status status="PASS" start="2026-05-25T01:55:28.851642" elapsed="1.195799"/>
</test>
<kw name="OpenFlow Actions Suite Teardown" type="TEARDOWN">
<kw name="Clean OVSDB Test Environment" owner="OVSDB">
<kw name="Clean Mininet System" owner="Utils">
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:30.051408" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:30.051120" elapsed="0.000347"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:30.051100" elapsed="0.000391"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:55:30.051779" level="INFO">index=3
host=10.30.171.68
alias=None
port=22
timeout=5 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:55:30.051883" level="INFO">${current_ssh_connection} = index=3
host=10.30.171.68
alias=None
port=22
timeout=5 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:55:30.051661" elapsed="0.000249"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:30.052462" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:30.052079" elapsed="0.000429"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:55:30.053041" level="INFO">${conn_id} = 4</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:55:30.052672" elapsed="0.000410"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:55:30.053939" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:55:30.054015" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:55:30.053658" elapsed="0.000380"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:30.054219" elapsed="0.000322"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:55:30.055402" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:55:30.373240" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:55:01 UTC 2026

  System load:  0.03               Processes:             107
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:55:14 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:55:30.055087" elapsed="0.318300"/>
</kw>
<msg time="2026-05-25T01:55:30.373472" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:30.054713" elapsed="0.318858"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:55:30.053310" elapsed="0.320370"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:30.374235" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-05-25T01:55:31.551500" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:31.551872" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:55:31.551974" level="INFO">${stderr} = *** Removing excess controllers/ofprotocols/ofdatapaths/pings/noxes
killall controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec iv...</msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:30.373947" elapsed="1.178084"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:31.552628" elapsed="0.000619"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:31.554419" level="INFO">*** Removing excess controllers/ofprotocols/ofdatapaths/pings/noxes
killall controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec ivs ryu-manager 2&gt; /dev/null
killall -9 controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec ivs ryu-manager 2&gt; /dev/null
pkill -9 -f "sudo mnexec"
*** Removing junk from /tmp
rm -f /tmp/vconn* /tmp/vlogs* /tmp/*.out /tmp/*.log
*** Removing old X11 tunnels
*** Removing excess kernel datapaths
ps ax | egrep -o 'dp[0-9]+' | sed 's/dp/nl:/'
***  Removing OVS datapaths
ovs-vsctl --timeout=1 list-br
ovs-vsctl --if-exists del-br s1
ovs-vsctl --timeout=1 list-br
*** Removing all links of the pattern foo-ethX
ip link show | egrep -o '([-_.[:alnum:]]+-eth[[:digit:]]+)'
ip link show
*** Killing stale mininet node processes
pkill -9 -f mininet:
*** Shutting down stale tunnels
pkill -9 -f Tunnel=Ethernet
pkill -9 -f .ssh/mn
rm -f ~/.ssh/mn/*
*** Cleanup complete.</msg>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:31.553735" elapsed="0.000938"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:55:31.555180" elapsed="0.000039"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:31.554849" elapsed="0.000439"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:31.554799" elapsed="0.000540"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:55:31.555701" elapsed="0.000067"/>
</return>
<status status="PASS" start="2026-05-25T01:55:31.555463" elapsed="0.000379"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:31.555425" elapsed="0.000471"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:55:31.555972" elapsed="0.000033"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:31.561890" elapsed="0.000147"/>
</kw>
<msg time="2026-05-25T01:55:31.562099" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:31.561307" elapsed="0.000861"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:31.562334" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:31.562503" elapsed="0.000021"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:55:31.556738" elapsed="0.005849"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:55:30.049884" elapsed="1.512795"/>
</kw>
<msg time="2026-05-25T01:55:31.562733" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:30.049333" elapsed="1.513459"/>
</kw>
<arg>${system}</arg>
<arg>sudo mn -c</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:55:30.048879" elapsed="1.513991"/>
</kw>
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:31.564919" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:31.564625" elapsed="0.000353"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:31.564606" elapsed="0.000396"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:55:31.565291" level="INFO">index=3
host=10.30.171.68
alias=None
port=22
timeout=5 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:55:31.565393" level="INFO">${current_ssh_connection} = index=3
host=10.30.171.68
alias=None
port=22
timeout=5 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:55:31.565170" elapsed="0.000251"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:31.565953" level="INFO">Attempting to execute command "sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:31.565575" elapsed="0.000424"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:55:31.566557" level="INFO">${conn_id} = 5</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:55:31.566175" elapsed="0.000408"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:55:31.567612" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:55:31.567691" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:55:31.567321" elapsed="0.000395"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:31.567881" elapsed="0.000375"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:55:31.569130" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:55:31.896970" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:55:01 UTC 2026

  System load:  0.03               Processes:             107
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:55:30 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:55:31.568795" elapsed="0.328485"/>
</kw>
<msg time="2026-05-25T01:55:31.897371" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:31.568431" elapsed="0.329041"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:55:31.566869" elapsed="0.330722"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:31.898188" level="INFO">Executing command 'sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh'.</msg>
<msg time="2026-05-25T01:55:31.941222" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-05-25T01:55:31.941511" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:55:31.941619" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:31.897871" elapsed="0.043800"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:31.942064" elapsed="0.000523"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:31.943753" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:31.943110" elapsed="0.000738"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:55:31.944428" elapsed="0.000046"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:31.944023" elapsed="0.000537"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:31.943970" elapsed="0.000644"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:55:31.944973" elapsed="0.000061"/>
</return>
<status status="PASS" start="2026-05-25T01:55:31.944733" elapsed="0.000442"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:31.944700" elapsed="0.000551"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:55:31.945345" elapsed="0.000039"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:31.952806" elapsed="0.000365"/>
</kw>
<msg time="2026-05-25T01:55:31.953271" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:31.951491" elapsed="0.001931"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:31.953684" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:31.953850" elapsed="0.000020"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:55:31.946200" elapsed="0.007732"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:55:31.564125" elapsed="0.389898"/>
</kw>
<msg time="2026-05-25T01:55:31.954094" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:31.563531" elapsed="0.390626"/>
</kw>
<arg>${system}</arg>
<arg>sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:55:31.563047" elapsed="0.391188"/>
</kw>
<arg>${tools_system}</arg>
<status status="PASS" start="2026-05-25T01:55:30.048583" elapsed="1.905710"/>
</kw>
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:31.956352" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:31.956024" elapsed="0.000389"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:31.956006" elapsed="0.000431"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:55:31.956713" level="INFO">index=3
host=10.30.171.68
alias=None
port=22
timeout=5 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:55:31.956817" level="INFO">${current_ssh_connection} = index=3
host=10.30.171.68
alias=None
port=22
timeout=5 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:55:31.956590" elapsed="0.000254"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:31.957395" level="INFO">Attempting to execute command "sudo ovs-vsctl del-manager" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:31.956997" elapsed="0.000444"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:55:31.957983" level="INFO">${conn_id} = 6</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:55:31.957600" elapsed="0.000409"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:55:31.958943" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:55:31.959020" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:55:31.958657" elapsed="0.000386"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:31.959222" elapsed="0.000321"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:55:31.960426" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:55:32.323103" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:55:01 UTC 2026

  System load:  0.03               Processes:             107
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:55:31 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:55:31.960091" elapsed="0.363195"/>
</kw>
<msg time="2026-05-25T01:55:32.323377" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:31.959716" elapsed="0.363762"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:55:31.958306" elapsed="0.365294"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:32.324175" level="INFO">Executing command 'sudo ovs-vsctl del-manager'.</msg>
<msg time="2026-05-25T01:55:32.346743" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:32.346994" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:55:32.347138" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:32.323888" elapsed="0.023308"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:32.347631" elapsed="0.000550"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:32.349487" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:32.348787" elapsed="0.000800"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:55:32.350104" elapsed="0.000045"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:32.349769" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:32.349714" elapsed="0.000562"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:55:32.350636" elapsed="0.000058"/>
</return>
<status status="PASS" start="2026-05-25T01:55:32.350394" elapsed="0.000372"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:32.350361" elapsed="0.000458"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:55:32.350893" elapsed="0.000031"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:32.356562" elapsed="0.000238"/>
</kw>
<msg time="2026-05-25T01:55:32.356866" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:32.355713" elapsed="0.001240"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:32.357211" elapsed="0.000032"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:32.357447" elapsed="0.000028"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:55:32.351752" elapsed="0.005853"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:55:31.955548" elapsed="0.402204"/>
</kw>
<msg time="2026-05-25T01:55:32.357826" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:31.954947" elapsed="0.402962"/>
</kw>
<arg>${tools_system}</arg>
<arg>sudo ovs-vsctl del-manager</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:55:31.954491" elapsed="0.403529"/>
</kw>
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:32.361090" elapsed="0.000185"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:32.360662" elapsed="0.000673"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:32.360635" elapsed="0.000735"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:55:32.361771" level="INFO">index=3
host=10.30.171.68
alias=None
port=22
timeout=5 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:55:32.361922" level="INFO">${current_ssh_connection} = index=3
host=10.30.171.68
alias=None
port=22
timeout=5 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:55:32.361594" elapsed="0.000368"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:32.362717" level="INFO">Attempting to execute command "sudo /usr/share/openvswitch/scripts/ovs-ctl stop" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:32.362213" elapsed="0.000552"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:55:32.363333" level="INFO">${conn_id} = 7</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:55:32.362929" elapsed="0.000430"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:55:32.364290" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:55:32.364370" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:55:32.363985" elapsed="0.000410"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:32.364581" elapsed="0.000340"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:55:32.365802" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:55:32.695065" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:55:01 UTC 2026

  System load:  0.03               Processes:             107
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:55:32 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:55:32.365480" elapsed="0.329775"/>
</kw>
<msg time="2026-05-25T01:55:32.695348" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:32.365114" elapsed="0.330338"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:55:32.363604" elapsed="0.331975"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:32.696212" level="INFO">Executing command 'sudo /usr/share/openvswitch/scripts/ovs-ctl stop'.</msg>
<msg time="2026-05-25T01:55:32.799991" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:32.800316" level="INFO">${stdout} =  * Exiting ovs-vswitchd (880)
 * Exiting ovsdb-server (825)</msg>
<msg time="2026-05-25T01:55:32.800383" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:32.695886" elapsed="0.104534"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:32.800821" elapsed="0.000472"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:32.802139" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:32.801666" elapsed="0.000535"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:55:32.802538" elapsed="0.000028"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:32.802326" elapsed="0.000289"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:32.802288" elapsed="0.000360"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:55:32.802870" elapsed="0.000047"/>
</return>
<status status="PASS" start="2026-05-25T01:55:32.802722" elapsed="0.000240"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:32.802701" elapsed="0.000294"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:55:32.803043" elapsed="0.000020"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:32.807648" elapsed="0.000202"/>
</kw>
<msg time="2026-05-25T01:55:32.807912" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:32.806820" elapsed="0.001182"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:32.808255" elapsed="0.000031"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:32.808580" elapsed="0.000029"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:55:32.803551" elapsed="0.005168"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:55:32.359928" elapsed="0.448922"/>
</kw>
<msg time="2026-05-25T01:55:32.808925" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:32.359120" elapsed="0.449888"/>
</kw>
<arg>${tools_system}</arg>
<arg>sudo /usr/share/openvswitch/scripts/ovs-ctl stop</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:55:32.358409" elapsed="0.450731"/>
</kw>
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:32.812045" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:32.811638" elapsed="0.000509"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:32.811612" elapsed="0.000568"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:55:32.812562" level="INFO">index=3
host=10.30.171.68
alias=None
port=22
timeout=5 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:55:32.812739" level="INFO">${current_ssh_connection} = index=3
host=10.30.171.68
alias=None
port=22
timeout=5 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:55:32.812393" elapsed="0.000384"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:32.813544" level="INFO">Attempting to execute command "sudo rm -rf /etc/openvswitch/conf.db" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:32.812991" elapsed="0.000617"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:55:32.814382" level="INFO">${conn_id} = 8</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:55:32.813830" elapsed="0.000587"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:55:32.815622" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:55:32.815727" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:55:32.815231" elapsed="0.000528"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:32.815982" elapsed="0.000467"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:55:32.817898" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:55:33.149538" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:55:01 UTC 2026

  System load:  0.03               Processes:             107
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:55:32 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:55:32.817260" elapsed="0.332461"/>
</kw>
<msg time="2026-05-25T01:55:33.149817" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:32.816731" elapsed="0.333206"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:55:32.814722" elapsed="0.335371"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:33.150719" level="INFO">Executing command 'sudo rm -rf /etc/openvswitch/conf.db'.</msg>
<msg time="2026-05-25T01:55:33.163266" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:33.163542" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:55:33.163646" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:33.150415" elapsed="0.013286"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:33.164173" elapsed="0.000588"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.165982" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:33.165333" elapsed="0.000897"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:55:33.166720" elapsed="0.000041"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:33.166417" elapsed="0.000418"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.166361" elapsed="0.000527"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:55:33.167278" elapsed="0.000062"/>
</return>
<status status="PASS" start="2026-05-25T01:55:33.167005" elapsed="0.000408"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.166972" elapsed="0.000495"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:55:33.167541" elapsed="0.000031"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:33.174206" elapsed="0.000149"/>
</kw>
<msg time="2026-05-25T01:55:33.174410" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:33.173540" elapsed="0.000951"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:33.174671" elapsed="0.000023"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:33.174860" elapsed="0.000024"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:55:33.168302" elapsed="0.006649"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:55:32.810948" elapsed="0.364115"/>
</kw>
<msg time="2026-05-25T01:55:33.175156" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:32.810096" elapsed="0.365126"/>
</kw>
<arg>${tools_system}</arg>
<arg>sudo rm -rf /etc/openvswitch/conf.db</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:55:32.809432" elapsed="0.365895"/>
</kw>
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:33.177501" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:33.177173" elapsed="0.000390"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.177152" elapsed="0.000435"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:55:33.177870" level="INFO">index=3
host=10.30.171.68
alias=None
port=22
timeout=5 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:55:33.177977" level="INFO">${current_ssh_connection} = index=3
host=10.30.171.68
alias=None
port=22
timeout=5 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:55:33.177744" elapsed="0.000261"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.178564" level="INFO">Attempting to execute command "sudo /usr/share/openvswitch/scripts/ovs-ctl start" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:33.178177" elapsed="0.000434"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:55:33.179185" level="INFO">${conn_id} = 9</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.178771" elapsed="0.000441"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.180478" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:55:33.180576" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:55:33.179867" elapsed="0.000735"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:33.180811" elapsed="0.000502"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:55:33.182320" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:55:33.494945" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:55:01 UTC 2026

  System load:  0.03               Processes:             107
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:55:33 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:55:33.181936" elapsed="0.313247"/>
</kw>
<msg time="2026-05-25T01:55:33.495261" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:33.181515" elapsed="0.313834"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:55:33.179463" elapsed="0.315993"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:33.495944" level="INFO">Executing command 'sudo /usr/share/openvswitch/scripts/ovs-ctl start'.</msg>
<msg time="2026-05-25T01:55:33.578973" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:33.579275" level="INFO">${stdout} =  * /etc/openvswitch/conf.db does not exist
 * Creating empty database /etc/openvswitch/conf.db
 * Starting ovsdb-server
 * system ID not configured, please use --system-id
 * Configuring Open vSwitch ...</msg>
<msg time="2026-05-25T01:55:33.579379" level="INFO">${stderr} = 2026-05-25T01:55:33Z|00001|dns_resolve|WARN|Failed to read etc/hosts: syntax error
2026-05-25T01:55:33Z|00001|dns_resolve|WARN|Failed to read etc/hosts: syntax error
2026-05-25T01:55:33Z|00001|dns_res...</msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:33.495696" elapsed="0.083738"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:33.579815" elapsed="0.000515"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.581478" level="INFO">2026-05-25T01:55:33Z|00001|dns_resolve|WARN|Failed to read etc/hosts: syntax error
2026-05-25T01:55:33Z|00001|dns_resolve|WARN|Failed to read etc/hosts: syntax error
2026-05-25T01:55:33Z|00001|dns_resolve|WARN|Failed to read etc/hosts: syntax error</msg>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:33.580794" elapsed="0.000790"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:55:33.582047" elapsed="0.000074"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:33.581758" elapsed="0.000440"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.581704" elapsed="0.000546"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:55:33.582608" elapsed="0.000059"/>
</return>
<status status="PASS" start="2026-05-25T01:55:33.582371" elapsed="0.000371"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.582336" elapsed="0.000459"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:55:33.582871" elapsed="0.000031"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:33.589795" elapsed="0.000143"/>
</kw>
<msg time="2026-05-25T01:55:33.589981" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:33.588703" elapsed="0.001339"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:33.590224" elapsed="0.000021"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:33.590388" elapsed="0.000020"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:55:33.583613" elapsed="0.006855"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:55:33.176633" elapsed="0.413931"/>
</kw>
<msg time="2026-05-25T01:55:33.590618" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:33.176025" elapsed="0.414653"/>
</kw>
<arg>${tools_system}</arg>
<arg>sudo /usr/share/openvswitch/scripts/ovs-ctl start</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:55:33.175552" elapsed="0.415203"/>
</kw>
<doc>General Use Keyword attempting to sanitize test environment for OVSDB related
tests. Not every step will always be neccessary, but should not cause any problems for
any new ovsdb test suites.</doc>
<status status="PASS" start="2026-05-25T01:55:30.048268" elapsed="3.542545"/>
</kw>
<kw name="Cleanup Switch" owner="SwitchUtils">
<kw name="Iterate Switch Commands From List" owner="SwitchUtils">
<kw name="Configure Connection Index And Prompt Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${switch.connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:33.598681" elapsed="0.001997"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.596599" elapsed="0.004117"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.596579" elapsed="0.004162"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Set Client Configuration" owner="SSHLibrary">
<arg>prompt=${switch.mgmt_prompt}</arg>
<arg>timeout=5s</arg>
<doc>Update the `configuration` of the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:33.602889" elapsed="0.002232"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.600796" elapsed="0.004366"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.600778" elapsed="0.004409"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Switch Connection" owner="Telnet">
<arg>${switch.connection_index}</arg>
<doc>Switches between active connections using an index or an alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:33.607318" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:33.605241" elapsed="0.002176"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.605224" elapsed="0.002220"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Set Prompt" owner="Telnet">
<arg>${switch.mgmt_prompt}</arg>
<arg>True</arg>
<doc>Sets the prompt used by `Read Until Prompt` and `Login` in the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:33.609614" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:33.607500" elapsed="0.002173"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.607484" elapsed="0.002212"/>
</if>
<arg>${switch}</arg>
<doc>when using multiple switch connections (e.g. more than one switch device) this keyword will switch the current connection index and prompt so that the following
Read or Write actions happen on the correct device.</doc>
<status status="PASS" start="2026-05-25T01:55:33.596412" elapsed="0.013330"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.610404" level="INFO">/sbin/ifconfig -a | egrep '^s' | awk '{print "sudo ovs-vsctl del-br",$1}' | sh</msg>
<arg>${cmd}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:33.610150" elapsed="0.000300"/>
</kw>
<kw name="Read Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-05-25T01:55:33.612962" elapsed="0.000155"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.610871" elapsed="0.002280"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.610853" elapsed="0.002323"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Read" owner="Telnet">
<doc>Reads everything that is currently available in the output.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:33.615294" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:33.613230" elapsed="0.002118"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.613213" elapsed="0.002158"/>
</if>
<arg>${switch}</arg>
<doc>Wraps the Read command so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:33.610688" elapsed="0.004729"/>
</kw>
<kw name="Execute Command Wrapper" owner="SwitchUtils">
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:33.618167" level="INFO">Executing command '/sbin/ifconfig -a | egrep '^s' | awk '{print "sudo ovs-vsctl del-br",$1}' | sh'.</msg>
<msg time="2026-05-25T01:55:33.631007" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:33.631253" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:33.618020" elapsed="0.013289"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.615927" elapsed="0.015468"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${output}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:33.631895" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:33.631455" elapsed="0.000567"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.615909" elapsed="0.016197"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;telnet&quot;">
<kw name="Execute Command" owner="Telnet">
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes the given ``command`` and reads, logs, and returns everything until the prompt.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:33.637004" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:33.632240" elapsed="0.004928"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.637998" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>${output}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:33.637587" elapsed="0.000447"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.637223" elapsed="0.000882"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.632201" elapsed="0.005935"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:33.638184" elapsed="0.000039"/>
</return>
<arg>${switch}</arg>
<arg>${cmd}</arg>
<doc>Wraps the Execute Command keyword so that depending on the switch.mgmt_protocol the right
library (Telnet or SSHLibrary) is used.</doc>
<status status="PASS" start="2026-05-25T01:55:33.615703" elapsed="0.022652"/>
</kw>
<var name="${cmd}">/sbin/ifconfig -a | egrep '^s' | awk '{print "sudo ovs-vsctl del-br",$1}' | sh</var>
<status status="PASS" start="2026-05-25T01:55:33.609960" elapsed="0.028446"/>
</iter>
<var>${cmd}</var>
<value>@{cmd_list}</value>
<status status="PASS" start="2026-05-25T01:55:33.609800" elapsed="0.028650"/>
</for>
<arg>${switch}</arg>
<arg>${switch.cleanup_cmds}</arg>
<doc>Each string in the @{cmd_list} argument is executed on the switch.connection_index.</doc>
<status status="PASS" start="2026-05-25T01:55:33.594030" elapsed="0.044494"/>
</kw>
<arg>${test_switch}</arg>
<doc>will execute and command strings stored in switch.cleanup_cmds</doc>
<status status="PASS" start="2026-05-25T01:55:33.590987" elapsed="0.047611"/>
</kw>
<kw name="Close All Connections" owner="SSHLibrary">
<doc>Closes all open connections.</doc>
<status status="PASS" start="2026-05-25T01:55:33.638814" elapsed="0.000319"/>
</kw>
<kw name="Close All Connections" owner="Telnet">
<doc>Closes all open connections and empties the connection cache.</doc>
<status status="PASS" start="2026-05-25T01:55:33.639353" elapsed="0.000169"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:30.047989" elapsed="3.591608"/>
</kw>
<doc>OF1.3 Suite for flow actions
- output ALL
- output CONTROLLER
- output TABLE
- output INPORT
- output LOCAL
- output NORMAL
- output FLOOD
- output ANY

NOTE: for OVS, INPORT does not appear to be supported</doc>
<status status="PASS" start="2026-05-25T01:55:13.401400" elapsed="20.238239"/>
</suite>
<status status="PASS" start="2026-05-25T01:55:01.681780" elapsed="31.959128"/>
</suite>
<suite id="s1-s5" name="Reconciliation" source="/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation">
<suite id="s1-s5-s1" name="010 Group Flows" source="/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/010_Group_Flows.robot">
<kw name="Initialization Phase" type="SETUP">
<kw name="ClusterManagement_Setup" owner="ClusterManagement">
<kw name="Get Variable Value" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.742342" level="INFO">${already_done} = False</msg>
<var>${already_done}</var>
<arg>\${ClusterManagement__has_setup_run}</arg>
<arg>False</arg>
<doc>Returns variable value or ``default`` if the variable does not exist.</doc>
<status status="PASS" start="2026-05-25T01:55:33.738718" elapsed="0.003657"/>
</kw>
<if>
<branch type="IF" condition="${already_done}">
<return>
<status status="NOT RUN" start="2026-05-25T01:55:33.742597" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:33.742473" elapsed="0.000170"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.742449" elapsed="0.000217"/>
</if>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.743183" level="INFO">${ClusterManagement__has_setup_run} = True</msg>
<arg>\${ClusterManagement__has_setup_run}</arg>
<arg>True</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:33.742827" elapsed="0.000401"/>
</kw>
<kw name="Get Variable Value" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.743776" level="INFO">${cluster_size} = 1</msg>
<var>${cluster_size}</var>
<arg>\${NUM_ODL_SYSTEM}</arg>
<arg>1</arg>
<doc>Returns variable value or ``default`` if the variable does not exist.</doc>
<status status="PASS" start="2026-05-25T01:55:33.743459" elapsed="0.000343"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Convert To Integer" owner="BuiltIn">
<arg>${cluster_size}</arg>
<doc>Converts the given item to an integer number.</doc>
<status status="PASS" start="2026-05-25T01:55:33.744338" elapsed="0.000292"/>
</kw>
<msg time="2026-05-25T01:55:33.744730" level="INFO">${status} = PASS</msg>
<msg time="2026-05-25T01:55:33.744777" level="INFO">${possibly_int_of_members} = 1</msg>
<var>${status}</var>
<var>${possibly_int_of_members}</var>
<arg>BuiltIn.Convert_To_Integer</arg>
<arg>${cluster_size}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:55:33.743973" elapsed="0.000827"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.745388" level="INFO">${int_of_members} = 1</msg>
<var>${int_of_members}</var>
<arg>'${status}' != 'PASS'</arg>
<arg>${1}</arg>
<arg>${possibly_int_of_members}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:33.744989" elapsed="0.000426"/>
</kw>
<kw name="ClusterManagement__Compute_Derived_Variables" owner="ClusterManagement">
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.746450" level="INFO">@{member_index_list} = [ ]</msg>
<var>@{member_index_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:55:33.746185" elapsed="0.000292"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.746883" level="INFO">@{session_list} = [ ]</msg>
<var>@{session_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:55:33.746628" elapsed="0.000281"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.747375" level="INFO">&amp;{index_to_ip_mapping} = { }</msg>
<var>&amp;{index_to_ip_mapping}</var>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.747082" elapsed="0.000320"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="ClusterManagement__Include_Member_Index" owner="ClusterManagement">
<kw name="Append To List" owner="Collections">
<arg>${member_index_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.750402" elapsed="0.000241"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.751150" level="INFO">${member_ip} = 10.30.170.200</msg>
<var>${member_ip}</var>
<arg>${ODL_SYSTEM_${index}_IP}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:33.750806" elapsed="0.000371"/>
</kw>
<kw name="Set To Dictionary" owner="Collections">
<arg>${index_to_ip_mapping}</arg>
<arg>${index}</arg>
<arg>${member_ip}</arg>
<doc>Adds the given ``key_value_pairs`` and/or ``items`` to the ``dictionary``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.751335" elapsed="0.000311"/>
</kw>
<kw name="Resolve_Http_Session_For_Member" owner="ClusterManagement">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.752456" level="INFO">${session} = ClusterManagement__session_1</msg>
<var>${session}</var>
<arg>ClusterManagement__session_${member_index}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:33.752154" elapsed="0.000328"/>
</kw>
<return>
<value>${session}</value>
<status status="PASS" start="2026-05-25T01:55:33.752529" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:55:33.752691" level="INFO">${session_alias} = ClusterManagement__session_1</msg>
<var>${session_alias}</var>
<arg>member_index=${index}</arg>
<doc>Return RequestsLibrary session alias pointing to node of given index.</doc>
<status status="PASS" start="2026-05-25T01:55:33.751842" elapsed="0.000875"/>
</kw>
<kw name="Create Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:33.753378" level="INFO">Creating Session using : alias=ClusterManagement__session_1, url=http://10.30.170.200:8181, headers={},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7f5abfb9d050&gt;, timeout=5, proxies=None, verify=False,                     debug=0 </msg>
<arg>${session_alias}</arg>
<arg>http://${member_ip}:${RESTCONFPORT}</arg>
<arg>auth=${AUTH}</arg>
<arg>timeout=${http_timeout}</arg>
<arg>max_retries=${http_retries}</arg>
<doc>Create Session: create a HTTP session to a server</doc>
<status status="PASS" start="2026-05-25T01:55:33.752908" elapsed="0.000622"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${session_list}</arg>
<arg>${session_alias}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.753695" elapsed="0.000241"/>
</kw>
<arg>${index}</arg>
<arg>${member_index_list}</arg>
<arg>${session_list}</arg>
<arg>${index_to_ip_mapping}</arg>
<arg>http_timeout=${http_timeout}</arg>
<arg>http_retries=${http_retries}</arg>
<doc>Add a corresponding item based on index into the last three arguments.
Create the Http session whose alias is added to list.</doc>
<status status="PASS" start="2026-05-25T01:55:33.749822" elapsed="0.004176"/>
</kw>
<var name="${index}">1</var>
<status status="PASS" start="2026-05-25T01:55:33.749634" elapsed="0.004408"/>
</iter>
<var>${index}</var>
<value>1</value>
<value>${int_of_members+1}</value>
<status status="PASS" start="2026-05-25T01:55:33.747462" elapsed="0.006630"/>
</for>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.754791" level="INFO">${ClusterManagement__member_index_list} = [1]</msg>
<arg>\${ClusterManagement__member_index_list}</arg>
<arg>${member_index_list}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:33.754262" elapsed="0.000574"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.755394" level="INFO">${ClusterManagement__index_to_ip_mapping} = {1: '10.30.170.200'}</msg>
<arg>\${ClusterManagement__index_to_ip_mapping}</arg>
<arg>${index_to_ip_mapping}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:33.755003" elapsed="0.000434"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.755960" level="INFO">${ClusterManagement__session_list} = ['ClusterManagement__session_1']</msg>
<arg>\${ClusterManagement__session_list}</arg>
<arg>${session_list}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:33.755602" elapsed="0.000401"/>
</kw>
<arg>int_of_members=${int_of_members}</arg>
<arg>http_timeout=${http_timeout}</arg>
<arg>http_retries=${http_retries}</arg>
<doc>Construct index list, session list and IP mapping, publish them as suite variables.</doc>
<status status="PASS" start="2026-05-25T01:55:33.745711" elapsed="0.010352"/>
</kw>
<doc>Detect repeated call, or detect number of members and initialize derived suite variables.
Http sessions are created with parameters to not waste time when ODL is no accepting connections properly.</doc>
<status status="PASS" start="2026-05-25T01:55:33.738401" elapsed="0.017736"/>
</kw>
<kw name="Create Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:33.756532" level="INFO">Creating Session using : alias=session, url=http://10.30.170.200:8181, headers={},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7f5acc54d6d0&gt;, timeout=None, proxies=None, verify=False,                     debug=0 </msg>
<arg>session</arg>
<arg>http://${ODL_SYSTEM_IP}:${RESTCONFPORT}</arg>
<arg>auth=${AUTH}</arg>
<doc>Create Session: create a HTTP session to a server</doc>
<status status="PASS" start="2026-05-25T01:55:33.756289" elapsed="0.000417"/>
</kw>
<kw name="Convert To Integer" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.757275" level="INFO">${switches} = 3</msg>
<var>${switches}</var>
<arg>${SWITCHES}</arg>
<doc>Converts the given item to an integer number.</doc>
<status status="PASS" start="2026-05-25T01:55:33.756940" elapsed="0.000361"/>
</kw>
<kw name="Convert To Integer" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.757789" level="INFO">${iter} = 100</msg>
<var>${iter}</var>
<arg>${ITER}</arg>
<doc>Converts the given item to an integer number.</doc>
<status status="PASS" start="2026-05-25T01:55:33.757489" elapsed="0.000326"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.758349" level="INFO">${all_groups} = 600</msg>
<var>${all_groups}</var>
<arg>${switches} * ${iter} * 2</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.757973" elapsed="0.000403"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.758883" level="INFO">${less_groups} = 594</msg>
<var>${less_groups}</var>
<arg>${all_groups} - ${switches} * 2</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.758533" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.761211" level="INFO">${all_flows} = 303</msg>
<var>${all_flows}</var>
<arg>${switches} * ${iter+1}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.759081" elapsed="0.002158"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.761754" level="INFO">${less_flows} = 300</msg>
<var>${less_flows}</var>
<arg>${all_flows} - ${switches}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.761399" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.762267" level="INFO">${switches} = 3</msg>
<arg>${switches}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:33.761947" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.762763" level="INFO">${iter} = 100</msg>
<arg>${iter}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:33.762471" elapsed="0.000333"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.763280" level="INFO">${all_groups} = 600</msg>
<arg>${all_groups}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:33.762963" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.763779" level="INFO">${less_groups} = 594</msg>
<arg>${less_groups}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:33.763480" elapsed="0.000339"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.764292" level="INFO">${all_flows} = 303</msg>
<arg>${all_flows}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:33.763977" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.764791" level="INFO">${less_flows} = 300</msg>
<arg>${less_flows}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:33.764493" elapsed="0.000339"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.768779" level="INFO">${no_flows} = 3</msg>
<arg>${no_flows}</arg>
<arg>${SWITCHES}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:33.765015" elapsed="0.003810"/>
</kw>
<doc>Create controller session and set variables.</doc>
<status status="PASS" start="2026-05-25T01:55:33.737980" elapsed="0.030968"/>
</kw>
<test id="s1-s5-s1-t1" name="Add Group 1 In Every Switch" line="24">
<for flavor="IN RANGE">
<iter>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.772140" level="INFO">&amp;{mapping} = { NODE=openflow:1 }</msg>
<var>&amp;{mapping}</var>
<arg>NODE=openflow:${switch}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.771736" elapsed="0.000433"/>
</kw>
<kw name="Post_As_Json_Templated" owner="TemplatedRequests">
<kw name="Post_Templated" owner="TemplatedRequests">
<kw name="Resolve_Text_From_Template_Folder" owner="TemplatedRequests">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.813409" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/location.uri</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:33.813013" elapsed="0.000425"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:33.814228" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1.titanium/location.uri' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:33.813945" elapsed="0.000368">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1.titanium/location.uri' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:33.814409" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:33.813606" elapsed="0.000828"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.814978" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/location.uri</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:33.814597" elapsed="0.000408"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:33.815319" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1/location.uri"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1/location.uri&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:33.815509" level="INFO">${template} = /rests/data/opendaylight-inventory:nodes/node=$NODE
</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:33.815181" elapsed="0.000353"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.815974" level="INFO">/rests/data/opendaylight-inventory:nodes/node=$NODE
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:33.815725" elapsed="0.000294"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.817001" level="INFO">mapping: {'NODE': 'openflow:1'}</msg>
<arg>mapping: ${mapping}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:33.816730" elapsed="0.000321"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.817491" level="INFO">${encoded_mapping} = {}</msg>
<var>${encoded_mapping}</var>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.817227" elapsed="0.000294"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Convert To String" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.818245" level="INFO">${value} = openflow:1</msg>
<var>${value}</var>
<arg>${value}</arg>
<doc>Converts the given item to a Unicode string.</doc>
<status status="PASS" start="2026-05-25T01:55:33.817870" elapsed="0.000401"/>
</kw>
<kw name="Percent_Encode_String" owner="TemplatedRequests">
<kw name="Replace String Using Regexp" owner="String">
<msg time="2026-05-25T01:55:33.819270" level="INFO">${encoded} = openflow%3A1</msg>
<var>${encoded}</var>
<arg>${value}</arg>
<arg>:</arg>
<arg>%3A</arg>
<doc>Replaces ``pattern`` in the given ``string`` with ``replace_with``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.818803" elapsed="0.000493"/>
</kw>
<return>
<value>${encoded}</value>
<status status="PASS" start="2026-05-25T01:55:33.819347" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:55:33.819499" level="INFO">${encoded_value} = openflow%3A1</msg>
<var>${encoded_value}</var>
<arg>${value}</arg>
<doc>Percent encodes reserved characters in the given string so it can be used as part of url.</doc>
<status status="PASS" start="2026-05-25T01:55:33.818457" elapsed="0.001066"/>
</kw>
<kw name="Set To Dictionary" owner="Collections">
<arg>${encoded_mapping}</arg>
<arg>${key}</arg>
<arg>${encoded_value}</arg>
<doc>Adds the given ``key_value_pairs`` and/or ``items`` to the ``dictionary``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.819672" elapsed="0.000274"/>
</kw>
<var name="${key}">NODE</var>
<var name="${value}">openflow:1</var>
<status status="PASS" start="2026-05-25T01:55:33.817735" elapsed="0.002252"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="PASS" start="2026-05-25T01:55:33.817568" elapsed="0.002453"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-05-25T01:55:33.820079" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:33.820239" level="INFO">${mapping_to_use} = {'NODE': 'openflow%3A1'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-05-25T01:55:33.816402" elapsed="0.003862"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.816105" elapsed="0.004190"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:33.820468" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:33.820320" elapsed="0.000202"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.816083" elapsed="0.004460"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.824724" level="INFO">${final_text} = /rests/data/opendaylight-inventory:nodes/node=openflow%3A1</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.820684" elapsed="0.004069"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:33.824803" elapsed="0.000029"/>
</return>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:33.812371" elapsed="0.012585"/>
</kw>
<msg time="2026-05-25T01:55:33.825013" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>not "${iterations}"</arg>
<arg>Resolve_Text_From_Template_File</arg>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:33.800254" elapsed="0.024807"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${prolog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.prolog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:33.836913" elapsed="0.000027"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${epilog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.epilog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:33.848693" elapsed="0.000027"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${item_template}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${base_name}.item.${extension}</arg>
<arg>mapping=${mapping}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:33.860476" elapsed="0.000027"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:33.860703" elapsed="0.000022"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<var>${separator}</var>
<arg>'${extension}' != 'json'</arg>
<arg>${endline}</arg>
<arg>,${endline}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:33.860907" elapsed="0.000022"/>
</kw>
<for flavor="IN RANGE">
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:33.861293" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:33.861147" elapsed="0.000201"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:33.861132" elapsed="0.000239"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:33.861512" elapsed="0.000020"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:33.861678" elapsed="0.000019"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:33.861844" elapsed="0.000020"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-05-25T01:55:33.861102" elapsed="0.000795"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-05-25T01:55:33.860985" elapsed="0.000937"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<var>${final_text}</var>
<arg>SEPARATOR=</arg>
<arg>${prolog}</arg>
<arg>${endline}</arg>
<arg>@{items}</arg>
<arg>${endline}</arg>
<arg>${epilog}</arg>
<doc>Catenates the given items together and returns the resulted string.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:33.862080" elapsed="0.000022"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-05-25T01:55:33.862157" elapsed="0.000015"/>
</return>
<msg time="2026-05-25T01:55:33.862272" level="INFO">${uri} = /rests/data/opendaylight-inventory:nodes/node=openflow%3A1</msg>
<var>${uri}</var>
<arg>folder=${folder}</arg>
<arg>base_name=location</arg>
<arg>extension=uri</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=True</arg>
<doc>Read a template from folder, strip endline, make changes according to mapping, return the result.
If ${iterations} value is present, put text together from "prolog", "item" and "epilog" parts,
where additional template variable ${i} goes from 1, by one 100 times.
Template variable ${j} is calculated as ${i} incremented by offset 0 ( j = i + iter_j_offset )
used to create non uniform data in order to be able to validate UPDATE operations.
POST (as opposed to PUT) needs slightly different data, ${name_prefix} may be used to distinguish.
(Actually, it is GET who formats data differently when URI is a top-level container.)</doc>
<status status="PASS" start="2026-05-25T01:55:33.796178" elapsed="0.066119"/>
</kw>
<kw name="Resolve_Text_From_Template_Folder" owner="TemplatedRequests">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>not "${iterations}"</arg>
<arg>Resolve_Text_From_Template_File</arg>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:33.872773" elapsed="0.000386"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.885938" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/post_data.prolog.json</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:33.885563" elapsed="0.000404"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:33.886693" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1.titanium/post_data.prolog.json' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:33.886482" elapsed="0.000275">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1.titanium/post_data.prolog.json' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:33.886850" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:33.886147" elapsed="0.000727"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.887437" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/post_data.prolog.json</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:33.887038" elapsed="0.000426"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:33.887765" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1/post_data.prolog.json"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1/post_data.prolog.json&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:33.887895" level="INFO">${template} = {
  "flow-node-inventory:group": [
</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:33.887631" elapsed="0.000290"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.888337" level="INFO">{
  "flow-node-inventory:group": [
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:33.888093" elapsed="0.000289"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:33.888738" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:33.888448" elapsed="0.000348"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.889289" level="INFO">${mapping_to_use} = {'NODE': 'openflow:1'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:33.888979" elapsed="0.000337"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.888820" elapsed="0.000566"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.888429" elapsed="0.000982"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.889987" level="INFO">${final_text} = {
  "flow-node-inventory:group": [</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.889558" elapsed="0.000456"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:33.890063" elapsed="0.000045"/>
</return>
<msg time="2026-05-25T01:55:33.890233" level="INFO">${prolog} = {
  "flow-node-inventory:group": [</msg>
<var>${prolog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.prolog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:33.884932" elapsed="0.005326"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.903325" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/post_data.epilog.json</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:33.902936" elapsed="0.000417"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:33.904056" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1.titanium/post_data.epilog.json' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:33.903852" elapsed="0.000283">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1.titanium/post_data.epilog.json' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:33.904227" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:33.903517" elapsed="0.000735"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.904795" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/post_data.epilog.json</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:33.904414" elapsed="0.000407"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:33.905167" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1/post_data.epilog.json"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1/post_data.epilog.json&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:33.905292" level="INFO">${template} =   ]
}
</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:33.905016" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.905713" level="INFO">  ]
}
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:33.905472" elapsed="0.000284"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:33.906126" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:33.905822" elapsed="0.000363"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.906648" level="INFO">${mapping_to_use} = {'NODE': 'openflow:1'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:33.906354" elapsed="0.000320"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.906209" elapsed="0.000500"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.905803" elapsed="0.000927"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.907315" level="INFO">${final_text} =   ]
}</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.906875" elapsed="0.000467"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:33.907389" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:33.907539" level="INFO">${epilog} =   ]
}</msg>
<var>${epilog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.epilog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:33.902322" elapsed="0.005242"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.920405" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/data.item.json</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:33.920017" elapsed="0.000417"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:33.921200" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1.titanium/data.item.json' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:33.920941" elapsed="0.000321">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1.titanium/data.item.json' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:33.921356" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:33.920595" elapsed="0.000785"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.921930" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/data.item.json</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:33.921548" elapsed="0.000409"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:33.922268" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1/data.item.json"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1/data.item.json&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:33.922395" level="INFO">${template} =         {
          "group-id": ${i}000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
       ...</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:33.922132" elapsed="0.000290"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.922818" level="INFO">        {
          "group-id": ${i}000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-${i}",
          "group-type": "group-select"
        }
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:33.922576" elapsed="0.000288"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:33.923233" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:33.922930" elapsed="0.000362"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.923751" level="INFO">${mapping_to_use} = {'NODE': 'openflow:1'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:33.923460" elapsed="0.000317"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.923316" elapsed="0.000497"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.922912" elapsed="0.000923"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.924572" level="INFO">${final_text} =         {
          "group-id": ${i}000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
       ...</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.923980" elapsed="0.000620"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:33.924649" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:33.924802" level="INFO">${item_template} =         {
          "group-id": ${i}000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
       ...</msg>
<var>${item_template}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${base_name}.item.${extension}</arg>
<arg>mapping=${mapping}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:33.919477" elapsed="0.005351"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.925263" level="INFO">${items} = []</msg>
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:55:33.925004" elapsed="0.000284"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.925810" level="INFO">${separator} = ,
</msg>
<var>${separator}</var>
<arg>'${extension}' != 'json'</arg>
<arg>${endline}</arg>
<arg>,${endline}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:33.925446" elapsed="0.000390"/>
</kw>
<for flavor="IN RANGE">
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:33.926567" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:33.926260" elapsed="0.000379"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.926234" elapsed="0.000435"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.927211" level="INFO">${j} = 1</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.926835" elapsed="0.000403"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.927975" level="INFO">${item} =         {
          "group-id": 1000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
          ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.927393" elapsed="0.000610"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.928174" elapsed="0.000190"/>
</kw>
<var name="${iteration}">1</var>
<status status="PASS" start="2026-05-25T01:55:33.926186" elapsed="0.002247"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.929084" elapsed="0.000193"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.928791" elapsed="0.000526"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.928776" elapsed="0.000565"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.929837" level="INFO">${j} = 2</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.929485" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.930619" level="INFO">${item} =         {
          "group-id": 2000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
          ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.930020" elapsed="0.000627"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.930802" elapsed="0.000184"/>
</kw>
<var name="${iteration}">2</var>
<status status="PASS" start="2026-05-25T01:55:33.928744" elapsed="0.002280"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.931471" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.931237" elapsed="0.000463"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.931222" elapsed="0.000502"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.932233" level="INFO">${j} = 3</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.931865" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.933020" level="INFO">${item} =         {
          "group-id": 3000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
          ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.932416" elapsed="0.000632"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.933223" elapsed="0.000184"/>
</kw>
<var name="${iteration}">3</var>
<status status="PASS" start="2026-05-25T01:55:33.931191" elapsed="0.002254"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.933858" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.933624" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.933610" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.934614" level="INFO">${j} = 4</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.934266" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.935384" level="INFO">${item} =         {
          "group-id": 4000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
          ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.934794" elapsed="0.000618"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.935567" elapsed="0.000182"/>
</kw>
<var name="${iteration}">4</var>
<status status="PASS" start="2026-05-25T01:55:33.933580" elapsed="0.002207"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.936218" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.935967" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.935951" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.937052" level="INFO">${j} = 5</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.936605" elapsed="0.000501"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.937849" level="INFO">${item} =         {
          "group-id": 5000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
          ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.937269" elapsed="0.000608"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.938034" elapsed="0.000200"/>
</kw>
<var name="${iteration}">5</var>
<status status="PASS" start="2026-05-25T01:55:33.935922" elapsed="0.002349"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.938685" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.938451" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.938436" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.939435" level="INFO">${j} = 6</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.939085" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.940211" level="INFO">${item} =         {
          "group-id": 6000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
          ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.939614" elapsed="0.000657"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.940431" elapsed="0.000192"/>
</kw>
<var name="${iteration}">6</var>
<status status="PASS" start="2026-05-25T01:55:33.938407" elapsed="0.002253"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.941120" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.940842" elapsed="0.000503"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.940827" elapsed="0.000543"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.941863" level="INFO">${j} = 7</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.941513" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.942637" level="INFO">${item} =         {
          "group-id": 7000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
          ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.942045" elapsed="0.000620"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.942821" elapsed="0.000183"/>
</kw>
<var name="${iteration}">7</var>
<status status="PASS" start="2026-05-25T01:55:33.940797" elapsed="0.002244"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.943472" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.943239" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.943224" elapsed="0.000501"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.944235" level="INFO">${j} = 8</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.943868" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.945002" level="INFO">${item} =         {
          "group-id": 8000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
          ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.944418" elapsed="0.000613"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.945203" elapsed="0.000183"/>
</kw>
<var name="${iteration}">8</var>
<status status="PASS" start="2026-05-25T01:55:33.943194" elapsed="0.002229"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.945957" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.945722" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.945707" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.946706" level="INFO">${j} = 9</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.946360" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.947475" level="INFO">${item} =         {
          "group-id": 9000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
          ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.946886" elapsed="0.000617"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.947656" elapsed="0.000183"/>
</kw>
<var name="${iteration}">9</var>
<status status="PASS" start="2026-05-25T01:55:33.945676" elapsed="0.002201"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.948306" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.948055" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.948040" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.949060" level="INFO">${j} = 10</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.948694" elapsed="0.000409"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.949834" level="INFO">${item} =         {
          "group-id": 10000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.949260" elapsed="0.000602"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.950018" elapsed="0.000201"/>
</kw>
<var name="${iteration}">10</var>
<status status="PASS" start="2026-05-25T01:55:33.948011" elapsed="0.002247"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.950678" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.950437" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.950422" elapsed="0.000503"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.951432" level="INFO">${j} = 11</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.951081" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.952261" level="INFO">${item} =         {
          "group-id": 11000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.951666" elapsed="0.000623"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.952445" elapsed="0.000182"/>
</kw>
<var name="${iteration}">11</var>
<status status="PASS" start="2026-05-25T01:55:33.950392" elapsed="0.002272"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.953121" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.952843" elapsed="0.000503"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.952828" elapsed="0.000543"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.953863" level="INFO">${j} = 12</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.953515" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.954633" level="INFO">${item} =         {
          "group-id": 12000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.954043" elapsed="0.000618"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.954815" elapsed="0.000183"/>
</kw>
<var name="${iteration}">12</var>
<status status="PASS" start="2026-05-25T01:55:33.952799" elapsed="0.002237"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.955469" elapsed="0.000206"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.955233" elapsed="0.000485"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.955218" elapsed="0.000534"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.956407" level="INFO">${j} = 13</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.955935" elapsed="0.000505"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.957232" level="INFO">${item} =         {
          "group-id": 13000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.956624" elapsed="0.000636"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.957416" elapsed="0.000207"/>
</kw>
<var name="${iteration}">13</var>
<status status="PASS" start="2026-05-25T01:55:33.955188" elapsed="0.002481"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.958207" elapsed="0.000232"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.957886" elapsed="0.000600"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.957867" elapsed="0.000647"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.959009" level="INFO">${j} = 14</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.958657" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.959778" level="INFO">${item} =         {
          "group-id": 14000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.959206" elapsed="0.000599"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.959960" elapsed="0.000198"/>
</kw>
<var name="${iteration}">14</var>
<status status="PASS" start="2026-05-25T01:55:33.957832" elapsed="0.002363"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.960605" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.960371" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.960356" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.961390" level="INFO">${j} = 15</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.961021" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.962160" level="INFO">${item} =         {
          "group-id": 15000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.961569" elapsed="0.000619"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.962342" elapsed="0.000293"/>
</kw>
<var name="${iteration}">15</var>
<status status="PASS" start="2026-05-25T01:55:33.960328" elapsed="0.002345"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.963136" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.962850" elapsed="0.000512"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.962835" elapsed="0.000552"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.963879" level="INFO">${j} = 16</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.963530" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.964646" level="INFO">${item} =         {
          "group-id": 16000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.964060" elapsed="0.000615"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.964828" elapsed="0.000207"/>
</kw>
<var name="${iteration}">16</var>
<status status="PASS" start="2026-05-25T01:55:33.962806" elapsed="0.002282"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.965502" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.965268" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.965253" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.966255" level="INFO">${j} = 17</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.965891" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.967005" level="INFO">${item} =         {
          "group-id": 17000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.966435" elapsed="0.000598"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.967204" elapsed="0.000183"/>
</kw>
<var name="${iteration}">17</var>
<status status="PASS" start="2026-05-25T01:55:33.965224" elapsed="0.002200"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.967835" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.967602" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.967587" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.968591" level="INFO">${j} = 18</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.968240" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.969380" level="INFO">${item} =         {
          "group-id": 18000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.968771" elapsed="0.000638"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.969564" elapsed="0.000183"/>
</kw>
<var name="${iteration}">18</var>
<status status="PASS" start="2026-05-25T01:55:33.967558" elapsed="0.002226"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.970211" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.969962" elapsed="0.000539"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.969947" elapsed="0.000578"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.971012" level="INFO">${j} = 19</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.970664" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.971783" level="INFO">${item} =         {
          "group-id": 19000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.971208" elapsed="0.000603"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.971964" elapsed="0.000198"/>
</kw>
<var name="${iteration}">19</var>
<status status="PASS" start="2026-05-25T01:55:33.969918" elapsed="0.002282"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.972618" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.972379" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.972363" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.973382" level="INFO">${j} = 20</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.973015" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.974147" level="INFO">${item} =         {
          "group-id": 20000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.973562" elapsed="0.000613"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.974366" elapsed="0.000184"/>
</kw>
<var name="${iteration}">20</var>
<status status="PASS" start="2026-05-25T01:55:33.972334" elapsed="0.002253"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.975000" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.974766" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.974751" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.975754" level="INFO">${j} = 21</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.975405" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.976526" level="INFO">${item} =         {
          "group-id": 21000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.975936" elapsed="0.000618"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.976710" elapsed="0.000255"/>
</kw>
<var name="${iteration}">21</var>
<status status="PASS" start="2026-05-25T01:55:33.974722" elapsed="0.002281"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.977436" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.977201" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.977186" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.978191" level="INFO">${j} = 22</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.977825" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.979082" level="INFO">${item} =         {
          "group-id": 22000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.978373" elapsed="0.000739"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.979268" elapsed="0.000182"/>
</kw>
<var name="${iteration}">22</var>
<status status="PASS" start="2026-05-25T01:55:33.977156" elapsed="0.002331"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.979901" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.979666" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.979651" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.980661" level="INFO">${j} = 23</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.980307" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.981451" level="INFO">${item} =         {
          "group-id": 23000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.980843" elapsed="0.000637"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.981641" elapsed="0.000181"/>
</kw>
<var name="${iteration}">23</var>
<status status="PASS" start="2026-05-25T01:55:33.979621" elapsed="0.002238"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.982289" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.982038" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.982022" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.983021" level="INFO">${j} = 24</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.982674" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.983790" level="INFO">${item} =         {
          "group-id": 24000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.983220" elapsed="0.000598"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.983971" elapsed="0.000197"/>
</kw>
<var name="${iteration}">24</var>
<status status="PASS" start="2026-05-25T01:55:33.981994" elapsed="0.002211"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.984616" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.984382" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.984367" elapsed="0.000504"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.985445" level="INFO">${j} = 25</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.985020" elapsed="0.000455"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.986397" level="INFO">${item} =         {
          "group-id": 25000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.985700" elapsed="0.000732"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.986615" elapsed="0.000192"/>
</kw>
<var name="${iteration}">25</var>
<status status="PASS" start="2026-05-25T01:55:33.984338" elapsed="0.002516"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.987366" elapsed="0.000191"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.987080" elapsed="0.000515"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.987046" elapsed="0.000574"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.988134" level="INFO">${j} = 26</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.987762" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.988923" level="INFO">${item} =         {
          "group-id": 26000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.988317" elapsed="0.000635"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.989123" elapsed="0.000184"/>
</kw>
<var name="${iteration}">26</var>
<status status="PASS" start="2026-05-25T01:55:33.987013" elapsed="0.002332"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.989755" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.989522" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.989507" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.990508" level="INFO">${j} = 27</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.990158" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.991282" level="INFO">${item} =         {
          "group-id": 27000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.990689" elapsed="0.000621"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.991465" elapsed="0.000185"/>
</kw>
<var name="${iteration}">27</var>
<status status="PASS" start="2026-05-25T01:55:33.989478" elapsed="0.002208"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.992117" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.991866" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.991850" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.992873" level="INFO">${j} = 28</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.992508" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.993650" level="INFO">${item} =         {
          "group-id": 28000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.993055" elapsed="0.000623"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.993832" elapsed="0.000181"/>
</kw>
<var name="${iteration}">28</var>
<status status="PASS" start="2026-05-25T01:55:33.991820" elapsed="0.002231"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.994485" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.994249" elapsed="0.000462"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.994234" elapsed="0.000502"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.995364" level="INFO">${j} = 29</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.994879" elapsed="0.000511"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.996137" level="INFO">${item} =         {
          "group-id": 29000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.995545" elapsed="0.000621"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.996320" elapsed="0.000180"/>
</kw>
<var name="${iteration}">29</var>
<status status="PASS" start="2026-05-25T01:55:33.994204" elapsed="0.002333"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.996965" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.996715" elapsed="0.000522"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.996700" elapsed="0.000564"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.997758" level="INFO">${j} = 30</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.997408" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:33.998529" level="INFO">${item} =         {
          "group-id": 30000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.997939" elapsed="0.000618"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.998710" elapsed="0.000182"/>
</kw>
<var name="${iteration}">30</var>
<status status="PASS" start="2026-05-25T01:55:33.996670" elapsed="0.002259"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:33.999360" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:33.999123" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:33.999108" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.000112" level="INFO">${j} = 31</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:33.999748" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.000896" level="INFO">${item} =         {
          "group-id": 31000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.000296" elapsed="0.000630"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.001097" elapsed="0.000185"/>
</kw>
<var name="${iteration}">31</var>
<status status="PASS" start="2026-05-25T01:55:33.999063" elapsed="0.002257"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.001733" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.001500" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.001485" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.002485" level="INFO">${j} = 32</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.002134" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.003258" level="INFO">${item} =         {
          "group-id": 32000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.002667" elapsed="0.000620"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.003441" elapsed="0.000181"/>
</kw>
<var name="${iteration}">32</var>
<status status="PASS" start="2026-05-25T01:55:34.001455" elapsed="0.002205"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.004088" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.003839" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.003824" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.004823" level="INFO">${j} = 33</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.004477" elapsed="0.000383"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.005610" level="INFO">${item} =         {
          "group-id": 33000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.005014" elapsed="0.000624"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.005791" elapsed="0.000180"/>
</kw>
<var name="${iteration}">33</var>
<status status="PASS" start="2026-05-25T01:55:34.003795" elapsed="0.002213"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.006443" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.006209" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.006192" elapsed="0.000503"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.007199" level="INFO">${j} = 34</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.006835" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.007955" level="INFO">${item} =         {
          "group-id": 34000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.007381" elapsed="0.000602"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.008152" elapsed="0.000184"/>
</kw>
<var name="${iteration}">34</var>
<status status="PASS" start="2026-05-25T01:55:34.006162" elapsed="0.002245"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.008825" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.008588" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.008573" elapsed="0.000531"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.009595" level="INFO">${j} = 35</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.009246" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.010368" level="INFO">${item} =         {
          "group-id": 35000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.009776" elapsed="0.000620"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.010557" elapsed="0.000182"/>
</kw>
<var name="${iteration}">35</var>
<status status="PASS" start="2026-05-25T01:55:34.008544" elapsed="0.002233"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.011205" elapsed="0.000925"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.010955" elapsed="0.001216"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.010940" elapsed="0.001256"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.012696" level="INFO">${j} = 36</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.012340" elapsed="0.000383"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.013506" level="INFO">${item} =         {
          "group-id": 36000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.012902" elapsed="0.000632"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.013690" elapsed="0.000183"/>
</kw>
<var name="${iteration}">36</var>
<status status="PASS" start="2026-05-25T01:55:34.010911" elapsed="0.002999"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.014344" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.014105" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.014089" elapsed="0.000501"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.015096" level="INFO">${j} = 37</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.014730" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.015851" level="INFO">${item} =         {
          "group-id": 37000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.015279" elapsed="0.000600"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.016033" elapsed="0.000198"/>
</kw>
<var name="${iteration}">37</var>
<status status="PASS" start="2026-05-25T01:55:34.014045" elapsed="0.002224"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.016685" elapsed="0.000195"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.016448" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.016433" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.017451" level="INFO">${j} = 38</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.017099" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.018220" level="INFO">${item} =         {
          "group-id": 38000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.017630" elapsed="0.000618"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.018403" elapsed="0.000182"/>
</kw>
<var name="${iteration}">38</var>
<status status="PASS" start="2026-05-25T01:55:34.016404" elapsed="0.002218"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.019034" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.018801" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.018786" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.019790" level="INFO">${j} = 39</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.019441" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.020564" level="INFO">${item} =         {
          "group-id": 39000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.019971" elapsed="0.000654"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.020783" elapsed="0.000198"/>
</kw>
<var name="${iteration}">39</var>
<status status="PASS" start="2026-05-25T01:55:34.018757" elapsed="0.002261"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.021448" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.021215" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.021200" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.022196" level="INFO">${j} = 40</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.021833" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.022954" level="INFO">${item} =         {
          "group-id": 40000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.022375" elapsed="0.000607"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.023152" elapsed="0.000186"/>
</kw>
<var name="${iteration}">40</var>
<status status="PASS" start="2026-05-25T01:55:34.021171" elapsed="0.002204"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.023788" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.023555" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.023540" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.024544" level="INFO">${j} = 41</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.024194" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.025338" level="INFO">${item} =         {
          "group-id": 41000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.024725" elapsed="0.000641"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.025521" elapsed="0.000184"/>
</kw>
<var name="${iteration}">41</var>
<status status="PASS" start="2026-05-25T01:55:34.023511" elapsed="0.002231"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.026174" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.025923" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.025907" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.026916" level="INFO">${j} = 42</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.026566" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.027692" level="INFO">${item} =         {
          "group-id": 42000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.027114" elapsed="0.000606"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.027876" elapsed="0.000182"/>
</kw>
<var name="${iteration}">42</var>
<status status="PASS" start="2026-05-25T01:55:34.025878" elapsed="0.002234"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.028527" elapsed="0.000305"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.028293" elapsed="0.000590"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.028278" elapsed="0.000631"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.029425" level="INFO">${j} = 43</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.029057" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.030205" level="INFO">${item} =         {
          "group-id": 43000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.029613" elapsed="0.000620"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.030389" elapsed="0.000181"/>
</kw>
<var name="${iteration}">43</var>
<status status="PASS" start="2026-05-25T01:55:34.028249" elapsed="0.002359"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.031020" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.030787" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.030772" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.031778" level="INFO">${j} = 44</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.031429" elapsed="0.000410"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.032606" level="INFO">${item} =         {
          "group-id": 44000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.031999" elapsed="0.000635"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.032791" elapsed="0.000196"/>
</kw>
<var name="${iteration}">44</var>
<status status="PASS" start="2026-05-25T01:55:34.030742" elapsed="0.002283"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.033458" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.033224" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.033209" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.034215" level="INFO">${j} = 45</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.033847" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.034973" level="INFO">${item} =         {
          "group-id": 45000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.034397" elapsed="0.000604"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.035173" elapsed="0.000182"/>
</kw>
<var name="${iteration}">45</var>
<status status="PASS" start="2026-05-25T01:55:34.033179" elapsed="0.002214"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.035811" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.035577" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.035563" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.036564" level="INFO">${j} = 46</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.036215" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.037365" level="INFO">${item} =         {
          "group-id": 46000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.036744" elapsed="0.000649"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.037549" elapsed="0.000180"/>
</kw>
<var name="${iteration}">46</var>
<status status="PASS" start="2026-05-25T01:55:34.035534" elapsed="0.002232"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.038199" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.037944" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.037928" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.038929" level="INFO">${j} = 47</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.038585" elapsed="0.000370"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.039699" level="INFO">${item} =         {
          "group-id": 47000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.039126" elapsed="0.000600"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.039880" elapsed="0.000180"/>
</kw>
<var name="${iteration}">47</var>
<status status="PASS" start="2026-05-25T01:55:34.037900" elapsed="0.002212"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.040525" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.040292" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.040277" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.041286" level="INFO">${j} = 48</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.040923" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.042037" level="INFO">${item} =         {
          "group-id": 48000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.041465" elapsed="0.000614"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.042235" elapsed="0.000181"/>
</kw>
<var name="${iteration}">48</var>
<status status="PASS" start="2026-05-25T01:55:34.040247" elapsed="0.002206"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.042902" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.042632" elapsed="0.000512"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.042618" elapsed="0.000551"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.043663" level="INFO">${j} = 49</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.043313" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.044442" level="INFO">${item} =         {
          "group-id": 49000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.043844" elapsed="0.000627"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.044631" elapsed="0.000180"/>
</kw>
<var name="${iteration}">49</var>
<status status="PASS" start="2026-05-25T01:55:34.042589" elapsed="0.002273"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.045415" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.045045" elapsed="0.000595"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.045030" elapsed="0.000635"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.046179" level="INFO">${j} = 50</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.045807" elapsed="0.000398"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.046939" level="INFO">${item} =         {
          "group-id": 50000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.046361" elapsed="0.000607"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.047141" elapsed="0.000183"/>
</kw>
<var name="${iteration}">50</var>
<status status="PASS" start="2026-05-25T01:55:34.045001" elapsed="0.002361"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.047782" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.047545" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.047530" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.048542" level="INFO">${j} = 51</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.048185" elapsed="0.000384"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.049341" level="INFO">${item} =         {
          "group-id": 51000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.048722" elapsed="0.000647"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.049526" elapsed="0.000182"/>
</kw>
<var name="${iteration}">51</var>
<status status="PASS" start="2026-05-25T01:55:34.047499" elapsed="0.002246"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.050174" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.049924" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.049909" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.050906" level="INFO">${j} = 52</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.050559" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.051678" level="INFO">${item} =         {
          "group-id": 52000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.051101" elapsed="0.000605"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.051859" elapsed="0.000181"/>
</kw>
<var name="${iteration}">52</var>
<status status="PASS" start="2026-05-25T01:55:34.049880" elapsed="0.002212"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.052505" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.052272" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.052257" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.053271" level="INFO">${j} = 53</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.052906" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.054024" level="INFO">${item} =         {
          "group-id": 53000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.053452" elapsed="0.000600"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.054260" elapsed="0.000184"/>
</kw>
<var name="${iteration}">53</var>
<status status="PASS" start="2026-05-25T01:55:34.052228" elapsed="0.002254"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.054897" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.054664" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.054649" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.055654" level="INFO">${j} = 54</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.055304" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.056426" level="INFO">${item} =         {
          "group-id": 54000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.055837" elapsed="0.000618"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.056611" elapsed="0.000183"/>
</kw>
<var name="${iteration}">54</var>
<status status="PASS" start="2026-05-25T01:55:34.054620" elapsed="0.002211"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.057276" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.057023" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.057008" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.058013" level="INFO">${j} = 55</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.057667" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.058782" level="INFO">${item} =         {
          "group-id": 55000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.058210" elapsed="0.000600"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.058965" elapsed="0.000198"/>
</kw>
<var name="${iteration}">55</var>
<status status="PASS" start="2026-05-25T01:55:34.056979" elapsed="0.002222"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.059617" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.059380" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.059364" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.060374" level="INFO">${j} = 56</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.060004" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.061177" level="INFO">${item} =         {
          "group-id": 56000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.060559" elapsed="0.000647"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.061360" elapsed="0.000182"/>
</kw>
<var name="${iteration}">56</var>
<status status="PASS" start="2026-05-25T01:55:34.059335" elapsed="0.002244"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.062132" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.061873" elapsed="0.000484"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.061744" elapsed="0.000637"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.062872" level="INFO">${j} = 57</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.062526" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.063648" level="INFO">${item} =         {
          "group-id": 57000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.063053" elapsed="0.000623"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.063830" elapsed="0.000181"/>
</kw>
<var name="${iteration}">57</var>
<status status="PASS" start="2026-05-25T01:55:34.061715" elapsed="0.002334"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.064482" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.064247" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.064232" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.065251" level="INFO">${j} = 58</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.064883" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.066042" level="INFO">${item} =         {
          "group-id": 58000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.065466" elapsed="0.000619"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.066242" elapsed="0.000182"/>
</kw>
<var name="${iteration}">58</var>
<status status="PASS" start="2026-05-25T01:55:34.064202" elapsed="0.002259"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.066878" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.066645" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.066630" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.067632" level="INFO">${j} = 59</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.067283" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.068404" level="INFO">${item} =         {
          "group-id": 59000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.067812" elapsed="0.000620"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.068588" elapsed="0.000181"/>
</kw>
<var name="${iteration}">59</var>
<status status="PASS" start="2026-05-25T01:55:34.066601" elapsed="0.002205"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.069251" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.068999" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.068985" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.069985" level="INFO">${j} = 60</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.069637" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.070775" level="INFO">${item} =         {
          "group-id": 60000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.070181" elapsed="0.000621"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.070957" elapsed="0.000201"/>
</kw>
<var name="${iteration}">60</var>
<status status="PASS" start="2026-05-25T01:55:34.068955" elapsed="0.002240"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.071613" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.071375" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.071360" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.072360" level="INFO">${j} = 61</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.071995" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.073150" level="INFO">${item} =         {
          "group-id": 61000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.072539" elapsed="0.000639"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.073333" elapsed="0.000187"/>
</kw>
<var name="${iteration}">61</var>
<status status="PASS" start="2026-05-25T01:55:34.071331" elapsed="0.002227"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.073971" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.073738" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.073722" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.074719" level="INFO">${j} = 62</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.074373" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.075485" level="INFO">${item} =         {
          "group-id": 62000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.074899" elapsed="0.000614"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.075666" elapsed="0.000183"/>
</kw>
<var name="${iteration}">62</var>
<status status="PASS" start="2026-05-25T01:55:34.073693" elapsed="0.002194"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.076319" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.076082" elapsed="0.000495"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.076051" elapsed="0.000554"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.077136" level="INFO">${j} = 63</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.076750" elapsed="0.000413"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.077891" level="INFO">${item} =         {
          "group-id": 63000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.077318" elapsed="0.000601"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.078089" elapsed="0.000185"/>
</kw>
<var name="${iteration}">63</var>
<status status="PASS" start="2026-05-25T01:55:34.076021" elapsed="0.002291"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.078840" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.078602" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.078477" elapsed="0.000628"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.079607" level="INFO">${j} = 64</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.079250" elapsed="0.000383"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.080381" level="INFO">${item} =         {
          "group-id": 64000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.079790" elapsed="0.000619"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.080565" elapsed="0.000179"/>
</kw>
<var name="${iteration}">64</var>
<status status="PASS" start="2026-05-25T01:55:34.078448" elapsed="0.002334"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.081233" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.080978" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.080963" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.081967" level="INFO">${j} = 65</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.081620" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.082742" level="INFO">${item} =         {
          "group-id": 65000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.082164" elapsed="0.000606"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.082924" elapsed="0.000199"/>
</kw>
<var name="${iteration}">65</var>
<status status="PASS" start="2026-05-25T01:55:34.080933" elapsed="0.002227"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.083572" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.083339" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.083325" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.084321" level="INFO">${j} = 66</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.083957" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.085110" level="INFO">${item} =         {
          "group-id": 66000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.084502" elapsed="0.000638"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.085293" elapsed="0.000181"/>
</kw>
<var name="${iteration}">66</var>
<status status="PASS" start="2026-05-25T01:55:34.083295" elapsed="0.002218"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.085929" elapsed="0.000197"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.085696" elapsed="0.000468"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.085681" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.086677" level="INFO">${j} = 67</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.086331" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.087447" level="INFO">${item} =         {
          "group-id": 67000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.086858" elapsed="0.000617"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.087629" elapsed="0.000180"/>
</kw>
<var name="${iteration}">67</var>
<status status="PASS" start="2026-05-25T01:55:34.085652" elapsed="0.002227"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.088314" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.088062" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.088047" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.089085" level="INFO">${j} = 68</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.088707" elapsed="0.000406"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.089843" level="INFO">${item} =         {
          "group-id": 68000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.089270" elapsed="0.000600"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.090025" elapsed="0.000198"/>
</kw>
<var name="${iteration}">68</var>
<status status="PASS" start="2026-05-25T01:55:34.088017" elapsed="0.002244"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.090672" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.090439" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.090425" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.091422" level="INFO">${j} = 69</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.091057" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.092221" level="INFO">${item} =         {
          "group-id": 69000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.091630" elapsed="0.000620"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.092405" elapsed="0.000185"/>
</kw>
<var name="${iteration}">69</var>
<status status="PASS" start="2026-05-25T01:55:34.090396" elapsed="0.002231"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.093061" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.092806" elapsed="0.000493"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.092792" elapsed="0.000531"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.093814" level="INFO">${j} = 70</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.093465" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.094582" level="INFO">${item} =         {
          "group-id": 70000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.093993" elapsed="0.000617"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.094764" elapsed="0.000181"/>
</kw>
<var name="${iteration}">70</var>
<status status="PASS" start="2026-05-25T01:55:34.092763" elapsed="0.002219"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.095533" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.095287" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.095162" elapsed="0.000619"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.096291" level="INFO">${j} = 71</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.095922" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.097087" level="INFO">${item} =         {
          "group-id": 71000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.096471" elapsed="0.000646"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.097272" elapsed="0.000183"/>
</kw>
<var name="${iteration}">71</var>
<status status="PASS" start="2026-05-25T01:55:34.095132" elapsed="0.002359"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.097902" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.097669" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.097655" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.098653" level="INFO">${j} = 72</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.098305" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.099424" level="INFO">${item} =         {
          "group-id": 72000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.098833" elapsed="0.000651"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.099642" elapsed="0.000182"/>
</kw>
<var name="${iteration}">72</var>
<status status="PASS" start="2026-05-25T01:55:34.097626" elapsed="0.002235"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.100290" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.100040" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.100025" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.101039" level="INFO">${j} = 73</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.100674" elapsed="0.000406"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.101833" level="INFO">${item} =         {
          "group-id": 73000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.101236" elapsed="0.000625"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.102016" elapsed="0.000198"/>
</kw>
<var name="${iteration}">73</var>
<status status="PASS" start="2026-05-25T01:55:34.099995" elapsed="0.002257"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.102665" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.102431" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.102417" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.103416" level="INFO">${j} = 74</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.103050" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.104188" level="INFO">${item} =         {
          "group-id": 74000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.103596" elapsed="0.000620"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.104372" elapsed="0.000185"/>
</kw>
<var name="${iteration}">74</var>
<status status="PASS" start="2026-05-25T01:55:34.102387" elapsed="0.002207"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.105021" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.104772" elapsed="0.000488"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.104758" elapsed="0.000527"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.105771" level="INFO">${j} = 75</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.105425" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.106537" level="INFO">${item} =         {
          "group-id": 75000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.105951" elapsed="0.000614"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.106719" elapsed="0.000181"/>
</kw>
<var name="${iteration}">75</var>
<status status="PASS" start="2026-05-25T01:55:34.104729" elapsed="0.002208"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.107365" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.107131" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.107116" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.108118" level="INFO">${j} = 76</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.107755" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.108899" level="INFO">${item} =         {
          "group-id": 76000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.108301" elapsed="0.000631"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.109103" elapsed="0.000184"/>
</kw>
<var name="${iteration}">76</var>
<status status="PASS" start="2026-05-25T01:55:34.107085" elapsed="0.002240"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.109748" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.109506" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.109491" elapsed="0.000503"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.110501" level="INFO">${j} = 77</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.110152" elapsed="0.000406"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.111304" level="INFO">${item} =         {
          "group-id": 77000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.110716" elapsed="0.000616"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.111486" elapsed="0.000188"/>
</kw>
<var name="${iteration}">77</var>
<status status="PASS" start="2026-05-25T01:55:34.109462" elapsed="0.002250"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.112255" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.111998" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.111876" elapsed="0.000629"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.113020" level="INFO">${j} = 78</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.112649" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.113793" level="INFO">${item} =         {
          "group-id": 78000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.113222" elapsed="0.000599"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.113977" elapsed="0.000199"/>
</kw>
<var name="${iteration}">78</var>
<status status="PASS" start="2026-05-25T01:55:34.111847" elapsed="0.002368"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.114631" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.114393" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.114378" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.115383" level="INFO">${j} = 79</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.115018" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.116146" level="INFO">${item} =         {
          "group-id": 79000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.115562" elapsed="0.000612"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.116329" elapsed="0.000182"/>
</kw>
<var name="${iteration}">79</var>
<status status="PASS" start="2026-05-25T01:55:34.114349" elapsed="0.002200"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.116975" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.116732" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.116717" elapsed="0.000523"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.117726" level="INFO">${j} = 80</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.117380" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.118488" level="INFO">${item} =         {
          "group-id": 80000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.117903" elapsed="0.000613"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.118671" elapsed="0.000181"/>
</kw>
<var name="${iteration}">80</var>
<status status="PASS" start="2026-05-25T01:55:34.116689" elapsed="0.002200"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.119321" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.119080" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.119050" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.120052" level="INFO">${j} = 81</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.119705" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.120849" level="INFO">${item} =         {
          "group-id": 81000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.120248" elapsed="0.000630"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.121032" elapsed="0.000202"/>
</kw>
<var name="${iteration}">81</var>
<status status="PASS" start="2026-05-25T01:55:34.119022" elapsed="0.002249"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.121717" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.121448" elapsed="0.000493"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.121433" elapsed="0.000533"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.122475" level="INFO">${j} = 82</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.122125" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.123252" level="INFO">${item} =         {
          "group-id": 82000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.122657" elapsed="0.000624"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.123436" elapsed="0.000187"/>
</kw>
<var name="${iteration}">82</var>
<status status="PASS" start="2026-05-25T01:55:34.121404" elapsed="0.002256"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.124084" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.123836" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.123821" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.124834" level="INFO">${j} = 83</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.124473" elapsed="0.000387"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.125612" level="INFO">${item} =         {
          "group-id": 83000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.125020" elapsed="0.000620"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.125794" elapsed="0.000180"/>
</kw>
<var name="${iteration}">83</var>
<status status="PASS" start="2026-05-25T01:55:34.123793" elapsed="0.002217"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.126440" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.126207" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.126192" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.127192" level="INFO">${j} = 84</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.126831" elapsed="0.000387"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.127941" level="INFO">${item} =         {
          "group-id": 84000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.127371" elapsed="0.000598"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.128139" elapsed="0.000183"/>
</kw>
<var name="${iteration}">84</var>
<status status="PASS" start="2026-05-25T01:55:34.126162" elapsed="0.002197"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.128901" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.128647" elapsed="0.000495"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.128522" elapsed="0.000644"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.129661" level="INFO">${j} = 85</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.129308" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.130429" level="INFO">${item} =         {
          "group-id": 85000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.129840" elapsed="0.000618"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.130610" elapsed="0.000182"/>
</kw>
<var name="${iteration}">85</var>
<status status="PASS" start="2026-05-25T01:55:34.128494" elapsed="0.002335"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.131256" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.131005" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.130991" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.131994" level="INFO">${j} = 86</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.131647" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.132788" level="INFO">${item} =         {
          "group-id": 86000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.132191" elapsed="0.000626"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.133006" elapsed="0.000203"/>
</kw>
<var name="${iteration}">86</var>
<status status="PASS" start="2026-05-25T01:55:34.130962" elapsed="0.002285"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.133663" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.133424" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.133410" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.134415" level="INFO">${j} = 87</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.134046" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.135184" level="INFO">${item} =         {
          "group-id": 87000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.134593" elapsed="0.000620"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.135368" elapsed="0.000182"/>
</kw>
<var name="${iteration}">87</var>
<status status="PASS" start="2026-05-25T01:55:34.133381" elapsed="0.002206"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.135998" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.135763" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.135749" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.136762" level="INFO">${j} = 88</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.136402" elapsed="0.000387"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.137541" level="INFO">${item} =         {
          "group-id": 88000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.136944" elapsed="0.000625"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.137725" elapsed="0.000181"/>
</kw>
<var name="${iteration}">88</var>
<status status="PASS" start="2026-05-25T01:55:34.135720" elapsed="0.002223"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.138374" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.138141" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.138124" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.139120" level="INFO">${j} = 89</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.138759" elapsed="0.000388"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.139882" level="INFO">${item} =         {
          "group-id": 89000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.139302" elapsed="0.000608"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.140078" elapsed="0.000183"/>
</kw>
<var name="${iteration}">89</var>
<status status="PASS" start="2026-05-25T01:55:34.138093" elapsed="0.002205"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.140726" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.140482" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.140467" elapsed="0.000507"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.141482" level="INFO">${j} = 90</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.141134" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.142245" level="INFO">${item} =         {
          "group-id": 90000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.141660" elapsed="0.000613"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.142426" elapsed="0.000187"/>
</kw>
<var name="${iteration}">90</var>
<status status="PASS" start="2026-05-25T01:55:34.140438" elapsed="0.002213"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.143077" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.142829" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.142813" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.143815" level="INFO">${j} = 91</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.143468" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.144622" level="INFO">${item} =         {
          "group-id": 91000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.144032" elapsed="0.000619"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.144832" elapsed="0.000183"/>
</kw>
<var name="${iteration}">91</var>
<status status="PASS" start="2026-05-25T01:55:34.142783" elapsed="0.002270"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.145609" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.145365" elapsed="0.000467"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.145242" elapsed="0.000614"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.146370" level="INFO">${j} = 92</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.145999" elapsed="0.000398"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.147145" level="INFO">${item} =         {
          "group-id": 92000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.146558" elapsed="0.000616"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.147330" elapsed="0.000181"/>
</kw>
<var name="${iteration}">92</var>
<status status="PASS" start="2026-05-25T01:55:34.145212" elapsed="0.002337"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.147962" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.147727" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.147713" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.148727" level="INFO">${j} = 93</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.148365" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.149498" level="INFO">${item} =         {
          "group-id": 93000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.148909" elapsed="0.000617"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.149681" elapsed="0.000181"/>
</kw>
<var name="${iteration}">93</var>
<status status="PASS" start="2026-05-25T01:55:34.147684" elapsed="0.002215"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.150327" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.150091" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.150061" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.151055" level="INFO">${j} = 94</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.150710" elapsed="0.000387"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.151820" level="INFO">${item} =         {
          "group-id": 94000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.151252" elapsed="0.000596"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.152001" elapsed="0.000198"/>
</kw>
<var name="${iteration}">94</var>
<status status="PASS" start="2026-05-25T01:55:34.150031" elapsed="0.002206"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.152661" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.152413" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.152399" elapsed="0.000507"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.153416" level="INFO">${j} = 95</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.153048" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.154183" level="INFO">${item} =         {
          "group-id": 95000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.153595" elapsed="0.000617"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.154366" elapsed="0.000180"/>
</kw>
<var name="${iteration}">95</var>
<status status="PASS" start="2026-05-25T01:55:34.152370" elapsed="0.002214"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.154993" elapsed="0.000197"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.154761" elapsed="0.000498"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.154746" elapsed="0.000540"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.155785" level="INFO">${j} = 96</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.155431" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.156558" level="INFO">${item} =         {
          "group-id": 96000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.155968" elapsed="0.000618"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.156767" elapsed="0.000189"/>
</kw>
<var name="${iteration}">96</var>
<status status="PASS" start="2026-05-25T01:55:34.154716" elapsed="0.002278"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.157427" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.157193" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.157178" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.158178" level="INFO">${j} = 97</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.157813" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.158933" level="INFO">${item} =         {
          "group-id": 97000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.158359" elapsed="0.000602"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.159131" elapsed="0.000183"/>
</kw>
<var name="${iteration}">97</var>
<status status="PASS" start="2026-05-25T01:55:34.157148" elapsed="0.002204"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.159766" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.159531" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.159516" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.160516" level="INFO">${j} = 98</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.160167" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.161300" level="INFO">${item} =         {
          "group-id": 98000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.160707" elapsed="0.000622"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.161483" elapsed="0.000185"/>
</kw>
<var name="${iteration}">98</var>
<status status="PASS" start="2026-05-25T01:55:34.159487" elapsed="0.002219"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.162248" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.161991" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.161869" elapsed="0.000627"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.162984" level="INFO">${j} = 99</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.162637" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.163752" level="INFO">${item} =         {
          "group-id": 99000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.163179" elapsed="0.000601"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.163933" elapsed="0.000199"/>
</kw>
<var name="${iteration}">99</var>
<status status="PASS" start="2026-05-25T01:55:34.161840" elapsed="0.002330"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.164583" elapsed="0.000194"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.164350" elapsed="0.000465"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.164335" elapsed="0.000504"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.165349" level="INFO">${j} = 100</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.164980" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.166120" level="INFO">${item} =         {
          "group-id": 100000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
        ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.165531" elapsed="0.000617"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.166302" elapsed="0.000183"/>
</kw>
<var name="${iteration}">100</var>
<status status="PASS" start="2026-05-25T01:55:34.164305" elapsed="0.002248"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="PASS" start="2026-05-25T01:55:33.925893" elapsed="0.240692"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.167886" level="INFO">${final_text} = {
  "flow-node-inventory:group": [
        {
          "group-id": 1000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
   ...</msg>
<var>${final_text}</var>
<arg>SEPARATOR=</arg>
<arg>${prolog}</arg>
<arg>${endline}</arg>
<arg>@{items}</arg>
<arg>${endline}</arg>
<arg>${epilog}</arg>
<doc>Catenates the given items together and returns the resulted string.</doc>
<status status="PASS" start="2026-05-25T01:55:34.166739" elapsed="0.001175"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:34.167973" elapsed="0.000033"/>
</return>
<msg time="2026-05-25T01:55:34.168146" level="INFO">${data} = {
  "flow-node-inventory:group": [
        {
          "group-id": 1000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
   ...</msg>
<var>${data}</var>
<arg>folder=${folder}</arg>
<arg>name_prefix=post_</arg>
<arg>base_name=${base_name}</arg>
<arg>extension=${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>endline=${endline}</arg>
<arg>iterations=${iterations}</arg>
<arg>iter_start=${iter_start}</arg>
<arg>iter_j_offset=${iter_j_offset}</arg>
<doc>Read a template from folder, strip endline, make changes according to mapping, return the result.
If ${iterations} value is present, put text together from "prolog", "item" and "epilog" parts,
where additional template variable ${i} goes from 1, by one 100 times.
Template variable ${j} is calculated as ${i} incremented by offset 0 ( j = i + iter_j_offset )
used to create non uniform data in order to be able to validate UPDATE operations.
POST (as opposed to PUT) needs slightly different data, ${name_prefix} may be used to distinguish.
(Actually, it is GET who formats data differently when URI is a top-level container.)</doc>
<status status="PASS" start="2026-05-25T01:55:33.871921" elapsed="0.296252"/>
</kw>
<kw name="Resolve_Jmes_Path" owner="TemplatedRequests">
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:34.169497" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1/jmespath.expr' does not exist.</msg>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:34.169239" elapsed="0.000325">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1/jmespath.expr' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:34.169656" level="INFO">${read_jmes_file} = False</msg>
<var>${read_jmes_file}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:34.168877" elapsed="0.000803"/>
</kw>
<if>
<branch type="IF" condition="${read_jmes_file} == ${true}">
<kw name="Get File" owner="OperatingSystem">
<var>${jmes_expression}</var>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.169992" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:34.169750" elapsed="0.000299"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.170583" level="INFO">${jmes_expression} = None</msg>
<var>${jmes_expression}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:34.170287" elapsed="0.000321"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.170093" elapsed="0.000551"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.169731" elapsed="0.000934"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.172995" level="INFO">${expression} = </msg>
<var>${expression}</var>
<arg>${read_jmes_file} == ${true}</arg>
<arg>${jmes_expression}</arg>
<arg>${EMPTY}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:34.170816" elapsed="0.002205"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-05-25T01:55:34.173090" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:55:34.173246" level="INFO">${jmes_expression} = </msg>
<var>${jmes_expression}</var>
<arg>${folder}</arg>
<doc>Reads JMES path from file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/jmespath.expr if the file exists and
returns the JMES path. Empty string is returned otherwise.</doc>
<status status="PASS" start="2026-05-25T01:55:34.168525" elapsed="0.004746"/>
</kw>
<kw name="Post_To_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.174798" level="INFO">/rests/data/opendaylight-inventory:nodes/node=openflow%3A1</msg>
<arg>${uri}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:34.174548" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.175261" level="INFO">{
  "flow-node-inventory:group": [
        {
          "group-id": 1000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-1",
          "group-type": "group-select"
        },
        {
          "group-id": 2000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-2",
          "group-type": "group-select"
        },
        {
          "group-id": 3000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-3",
          "group-type": "group-select"
        },
        {
          "group-id": 4000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-4",
          "group-type": "group-select"
        },
        {
          "group-id": 5000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-5",
          "group-type": "group-select"
        },
        {
          "group-id": 6000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-6",
          "group-type": "group-select"
        },
        {
          "group-id": 7000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-7",
          "group-type": "group-select"
        },
        {
          "group-id": 8000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-8",
          "group-type": "group-select"
        },
        {
          "group-id": 9000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-9",
          "group-type": "group-select"
        },
        {
          "group-id": 10000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-10",
          "group-type": "group-select"
        },
        {
          "group-id": 11000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-11",
          "group-type": "group-select"
        },
        {
          "group-id": 12000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-12",
          "group-type": "group-select"
        },
        {
          "group-id": 13000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-13",
          "group-type": "group-select"
        },
        {
          "group-id": 14000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-14",
          "group-type": "group-select"
        },
        {
          "group-id": 15000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-15",
          "group-type": "group-select"
        },
        {
          "group-id": 16000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-16",
          "group-type": "group-select"
        },
        {
          "group-id": 17000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-17",
          "group-type": "group-select"
        },
        {
          "group-id": 18000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-18",
          "group-type": "group-select"
        },
        {
          "group-id": 19000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-19",
          "group-type": "group-select"
        },
        {
          "group-id": 20000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-20",
          "group-type": "group-select"
        },
        {
          "group-id": 21000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-21",
          "group-type": "group-select"
        },
        {
          "group-id": 22000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-22",
          "group-type": "group-select"
        },
        {
          "group-id": 23000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-23",
          "group-type": "group-select"
        },
        {
          "group-id": 24000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-24",
          "group-type": "group-select"
        },
        {
          "group-id": 25000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-25",
          "group-type": "group-select"
        },
        {
          "group-id": 26000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-26",
          "group-type": "group-select"
        },
        {
          "group-id": 27000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-27",
          "group-type": "group-select"
        },
        {
          "group-id": 28000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-28",
          "group-type": "group-select"
        },
        {
          "group-id": 29000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-29",
          "group-type": "group-select"
        },
        {
          "group-id": 30000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-30",
          "group-type": "group-select"
        },
        {
          "group-id": 31000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-31",
          "group-type": "group-select"
        },
        {
          "group-id": 32000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-32",
          "group-type": "group-select"
        },
        {
          "group-id": 33000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-33",
          "group-type": "group-select"
        },
        {
          "group-id": 34000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-34",
          "group-type": "group-select"
        },
        {
          "group-id": 35000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-35",
          "group-type": "group-select"
        },
        {
          "group-id": 36000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-36",
          "group-type": "group-select"
        },
        {
          "group-id": 37000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-37",
          "group-type": "group-select"
        },
        {
          "group-id": 38000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-38",
          "group-type": "group-select"
        },
        {
          "group-id": 39000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-39",
          "group-type": "group-select"
        },
        {
          "group-id": 40000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-40",
          "group-type": "group-select"
        },
        {
          "group-id": 41000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-41",
          "group-type": "group-select"
        },
        {
          "group-id": 42000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-42",
          "group-type": "group-select"
        },
        {
          "group-id": 43000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-43",
          "group-type": "group-select"
        },
        {
          "group-id": 44000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-44",
          "group-type": "group-select"
        },
        {
          "group-id": 45000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-45",
          "group-type": "group-select"
        },
        {
          "group-id": 46000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-46",
          "group-type": "group-select"
        },
        {
          "group-id": 47000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-47",
          "group-type": "group-select"
        },
        {
          "group-id": 48000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-48",
          "group-type": "group-select"
        },
        {
          "group-id": 49000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-49",
          "group-type": "group-select"
        },
        {
          "group-id": 50000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-50",
          "group-type": "group-select"
        },
        {
          "group-id": 51000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-51",
          "group-type": "group-select"
        },
        {
          "group-id": 52000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-52",
          "group-type": "group-select"
        },
        {
          "group-id": 53000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-53",
          "group-type": "group-select"
        },
        {
          "group-id": 54000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-54",
          "group-type": "group-select"
        },
        {
          "group-id": 55000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-55",
          "group-type": "group-select"
        },
        {
          "group-id": 56000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-56",
          "group-type": "group-select"
        },
        {
          "group-id": 57000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-57",
          "group-type": "group-select"
        },
        {
          "group-id": 58000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-58",
          "group-type": "group-select"
        },
        {
          "group-id": 59000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-59",
          "group-type": "group-select"
        },
        {
          "group-id": 60000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-60",
          "group-type": "group-select"
        },
        {
          "group-id": 61000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-61",
          "group-type": "group-select"
        },
        {
          "group-id": 62000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-62",
          "group-type": "group-select"
        },
        {
          "group-id": 63000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-63",
          "group-type": "group-select"
        },
        {
          "group-id": 64000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-64",
          "group-type": "group-select"
        },
        {
          "group-id": 65000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-65",
          "group-type": "group-select"
        },
        {
          "group-id": 66000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-66",
          "group-type": "group-select"
        },
        {
          "group-id": 67000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-67",
          "group-type": "group-select"
        },
        {
          "group-id": 68000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-68",
          "group-type": "group-select"
        },
        {
          "group-id": 69000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-69",
          "group-type": "group-select"
        },
        {
          "group-id": 70000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-70",
          "group-type": "group-select"
        },
        {
          "group-id": 71000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-71",
          "group-type": "group-select"
        },
        {
          "group-id": 72000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-72",
          "group-type": "group-select"
        },
        {
          "group-id": 73000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-73",
          "group-type": "group-select"
        },
        {
          "group-id": 74000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-74",
          "group-type": "group-select"
        },
        {
          "group-id": 75000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-75",
          "group-type": "group-select"
        },
        {
          "group-id": 76000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-76",
          "group-type": "group-select"
        },
        {
          "group-id": 77000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-77",
          "group-type": "group-select"
        },
        {
          "group-id": 78000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-78",
          "group-type": "group-select"
        },
        {
          "group-id": 79000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-79",
          "group-type": "group-select"
        },
        {
          "group-id": 80000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-80",
          "group-type": "group-select"
        },
        {
          "group-id": 81000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-81",
          "group-type": "group-select"
        },
        {
          "group-id": 82000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-82",
          "group-type": "group-select"
        },
        {
          "group-id": 83000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-83",
          "group-type": "group-select"
        },
        {
          "group-id": 84000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-84",
          "group-type": "group-select"
        },
        {
          "group-id": 85000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-85",
          "group-type": "group-select"
        },
        {
          "group-id": 86000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-86",
          "group-type": "group-select"
        },
        {
          "group-id": 87000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-87",
          "group-type": "group-select"
        },
        {
          "group-id": 88000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-88",
          "group-type": "group-select"
        },
        {
          "group-id": 89000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-89",
          "group-type": "group-select"
        },
        {
          "group-id": 90000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-90",
          "group-type": "group-select"
        },
        {
          "group-id": 91000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-91",
          "group-type": "group-select"
        },
        {
          "group-id": 92000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-92",
          "group-type": "group-select"
        },
        {
          "group-id": 93000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-93",
          "group-type": "group-select"
        },
        {
          "group-id": 94000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-94",
          "group-type": "group-select"
        },
        {
          "group-id": 95000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-95",
          "group-type": "group-select"
        },
        {
          "group-id": 96000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-96",
          "group-type": "group-select"
        },
        {
          "group-id": 97000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-97",
          "group-type": "group-select"
        },
        {
          "group-id": 98000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-98",
          "group-type": "group-select"
        },
        {
          "group-id": 99000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-99",
          "group-type": "group-select"
        },
        {
          "group-id": 100000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-100",
          "group-type": "group-select"
        }
  ]
}</msg>
<arg>${data}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:34.174997" elapsed="0.000750"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.176165" level="INFO">{'Content-Type': 'application/json'}</msg>
<arg>${content_type}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:34.175904" elapsed="0.000306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.176609" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:34.176362" elapsed="0.000296"/>
</kw>
<kw name="Join_Two_Headers" owner="TemplatedRequests">
<kw name="Copy Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:34.177484" level="INFO">${accumulator} = {'Content-Type': 'application/json'}</msg>
<var>${accumulator}</var>
<arg>${first}</arg>
<doc>Returns a copy of the given dictionary.</doc>
<status status="PASS" start="2026-05-25T01:55:34.177277" elapsed="0.000234"/>
</kw>
<kw name="Get Dictionary Items" owner="Collections">
<msg time="2026-05-25T01:55:34.177839" level="INFO">${items_to_add} = []</msg>
<var>${items_to_add}</var>
<arg>${second}</arg>
<doc>Returns items of the given ``dictionary`` as a list.</doc>
<status status="PASS" start="2026-05-25T01:55:34.177668" elapsed="0.000196"/>
</kw>
<kw name="Set To Dictionary" owner="Collections">
<arg>${accumulator}</arg>
<arg>@{items_to_add}</arg>
<doc>Adds the given ``key_value_pairs`` and/or ``items`` to the ``dictionary``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.178014" elapsed="0.000210"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.178626" level="INFO">{'Content-Type': 'application/json'}</msg>
<arg>${accumulator}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:34.178381" elapsed="0.000288"/>
</kw>
<return>
<value>${accumulator}</value>
<status status="PASS" start="2026-05-25T01:55:34.178711" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:55:34.178863" level="INFO">${headers} = {'Content-Type': 'application/json'}</msg>
<var>${headers}</var>
<arg>first=${content_type}</arg>
<arg>second=${accept}</arg>
<doc>Take two dicts, join them, return result. Second argument values take precedence.</doc>
<status status="PASS" start="2026-05-25T01:55:34.176859" elapsed="0.002029"/>
</kw>
<if>
<branch type="IF" condition="&quot;&quot;&quot;${http_timeout}&quot;&quot;&quot; == &quot;&quot;&quot;${EMPTY}&quot;&quot;&quot;">
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:34.247304" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Content-Length': '52323', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body={
  "flow-node-inventory:group": [
        {
          "group-id": 1000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-1",
          "group-type": "group-select"
        },
        {
          "group-id": 2000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-2",
          "group-type": "group-select"
        },
        {
          "group-id": 3000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-3",
          "group-type": "group-select"
        },
        {
          "group-id": 4000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-4",
          "group-type": "group-select"
        },
        {
          "group-id": 5000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-5",
          "group-type": "group-select"
        },
        {
          "group-id": 6000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-6",
          "group-type": "group-select"
        },
        {
          "group-id": 7000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-7",
          "group-type": "group-select"
        },
        {
          "group-id": 8000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-8",
          "group-type": "group-select"
        },
        {
          "group-id": 9000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-9",
          "group-type": "group-select"
        },
        {
          "group-id": 10000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-10",
          "group-type": "group-select"
        },
        {
          "group-id": 11000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-11",
          "group-type": "group-select"
        },
        {
          "group-id": 12000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-12",
          "group-type": "group-select"
        },
        {
          "group-id": 13000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-13",
          "group-type": "group-select"
        },
        {
          "group-id": 14000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-14",
          "group-type": "group-select"
        },
        {
          "group-id": 15000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-15",
          "group-type": "group-select"
        },
        {
          "group-id": 16000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-16",
          "group-type": "group-select"
        },
        {
          "group-id": 17000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-17",
          "group-type": "group-select"
        },
        {
          "group-id": 18000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-18",
          "group-type": "group-select"
        },
        {
          "group-id": 19000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-19",
          "group-type": "group-select"
        },
        {
          "group-id": 20000,
       ... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:55:34.247660" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1 
 status=201, reason=Created 
 headers={'Set-Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 24-May-2026 01:55:34 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:group=5000', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:34.247910" level="INFO">${response} = &lt;Response [201]&gt;</msg>
<var>${response}</var>
<arg>${session}</arg>
<arg>${uri}</arg>
<arg>data=${data}</arg>
<arg>headers=${headers}</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:34.181163" elapsed="0.066807"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.179125" elapsed="0.068983"/>
</branch>
<branch type="ELSE">
<kw name="POST On Session" owner="RequestsLibrary">
<var>${response}</var>
<arg>${session}</arg>
<arg>${uri}</arg>
<arg>data=${data}</arg>
<arg>headers=${headers}</arg>
<arg>timeout=${http_timeout}</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.248566" elapsed="0.000055"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:34.248174" elapsed="0.000554"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.178939" elapsed="0.069836"/>
</if>
<kw name="Check_Status_Code" owner="TemplatedRequests">
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.256280" level="INFO"/>
<arg>${response.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:34.251169" elapsed="0.005214"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.250637" elapsed="0.005827"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.250594" elapsed="0.005925"/>
</if>
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.258970" level="INFO">201</msg>
<arg>${response.status_code}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:34.256805" elapsed="0.002212"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.256581" elapsed="0.002471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.256564" elapsed="0.002527"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.259681" level="INFO">${status_codes_type} = list</msg>
<var>${status_codes_type}</var>
<arg>type($additional_allowed_status_codes).__name__</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.259281" elapsed="0.000428"/>
</kw>
<if>
<branch type="IF" condition="&quot;${status_codes_type}&quot;!=&quot;list&quot;">
<kw name="Create List" owner="BuiltIn">
<var>${allowed_status_codes_list}</var>
<arg>${additional_allowed_status_codes}</arg>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.260030" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:34.259779" elapsed="0.000325"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.260629" level="INFO">${allowed_status_codes_list} = []</msg>
<var>${allowed_status_codes_list}</var>
<arg>${additional_allowed_status_codes}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:34.260325" elapsed="0.000331"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.260128" elapsed="0.000564"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.259761" elapsed="0.000953"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.261265" level="INFO">${status_codes_type} = list</msg>
<var>${status_codes_type}</var>
<arg>type($explicit_status_codes).__name__</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.260885" elapsed="0.000407"/>
</kw>
<if>
<branch type="IF" condition="&quot;${status_codes_type}&quot;!=&quot;list&quot;">
<kw name="Create List" owner="BuiltIn">
<var>${explicit_status_codes_list}</var>
<arg>${explicit_status_codes}</arg>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.261609" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:34.261362" elapsed="0.000305"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.262172" level="INFO">${explicit_status_codes_list} = []</msg>
<var>${explicit_status_codes_list}</var>
<arg>${explicit_status_codes}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:34.261863" elapsed="0.000335"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.261690" elapsed="0.000544"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.261344" elapsed="0.000912"/>
</if>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>"""${explicit_status_codes_list}""" != """${NO_STATUS_CODES}"""</arg>
<arg>Collections.List_Should_Contain_Value</arg>
<arg>${explicit_status_codes_list}</arg>
<arg>${response.status_code}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:34.262408" elapsed="0.000352"/>
</kw>
<kw name="Combine Lists" owner="Collections">
<msg time="2026-05-25T01:55:34.263357" level="INFO">${final_allowd_list} = [200, 201, 204]</msg>
<var>${final_allowd_list}</var>
<arg>${ALLOWED_STATUS_CODES}</arg>
<arg>${allowed_status_codes_list}</arg>
<doc>Combines the given ``lists`` together and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.262926" elapsed="0.000457"/>
</kw>
<kw name="List Should Contain Value" owner="Collections">
<arg>${final_allowd_list}</arg>
<arg>${response.status_code}</arg>
<doc>Fails if the ``value`` is not found from ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.263539" elapsed="0.002198"/>
</kw>
<arg>${response}</arg>
<arg>additional_allowed_status_codes=${additional_allowed_status_codes}</arg>
<arg>explicit_status_codes=${explicit_status_codes}</arg>
<doc>Log response text, check status_code is one of allowed ones. In cases where this keyword is
called in a WUKS it could end up logging tons of data and it may be desired to skip the logging by passing
log_response=False, but by default it remains True.</doc>
<status status="PASS" start="2026-05-25T01:55:34.249612" elapsed="0.016190"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-05-25T01:55:34.265982" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:34.265875" elapsed="0.000152"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.265856" elapsed="0.000193"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<msg time="2026-05-25T01:55:34.268602" level="INFO">${text_normalized} = </msg>
<var>${text_normalized}</var>
<arg>${response.text}</arg>
<arg>jmes_path=${jmes_path}</arg>
<doc>Attempt to return sorted indented JSON string.</doc>
<status status="PASS" start="2026-05-25T01:55:34.266210" elapsed="0.002419"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="PASS" start="2026-05-25T01:55:34.268678" elapsed="0.000033"/>
</return>
<msg time="2026-05-25T01:55:34.268836" level="INFO">${response_text} = </msg>
<var>${response_text}</var>
<arg>uri=${uri}</arg>
<arg>data=${data}</arg>
<arg>content_type=${content_type}</arg>
<arg>accept=${accept}</arg>
<arg>session=${session}</arg>
<arg>jmes_path=${jmes_expression}</arg>
<arg>normalize_json=${normalize_json}</arg>
<arg>additional_allowed_status_codes=${additional_allowed_status_codes}</arg>
<arg>explicit_status_codes=${explicit_status_codes}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>POST data to given URI, check status code and return response text.
${content_type} and ${accept} are mandatory Python objects with headers to use.
If ${normalize_json}, normalize text before returning.</doc>
<status status="PASS" start="2026-05-25T01:55:34.173603" elapsed="0.095258"/>
</kw>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-05-25T01:55:34.268966" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:55:34.269137" level="INFO">${response_text} = </msg>
<var>${response_text}</var>
<arg>folder=${folder}</arg>
<arg>base_name=data</arg>
<arg>extension=json</arg>
<arg>accept=${ACCEPT_EMPTY}</arg>
<arg>content_type=${HEADERS_YANG_JSON}</arg>
<arg>mapping=${mapping}</arg>
<arg>session=${session}</arg>
<arg>normalize_json=True</arg>
<arg>endline=${\n}</arg>
<arg>iterations=${iterations}</arg>
<arg>iter_start=${iter_start}</arg>
<arg>additional_allowed_status_codes=${additional_allowed_status_codes}</arg>
<arg>explicit_status_codes=${explicit_status_codes}</arg>
<arg>http_timeout=${http_timeout}</arg>
<arg>iter_j_offset=${iter_j_offset}</arg>
<doc>Resolve URI and data from folder, call Post_To_Uri, return response text.</doc>
<status status="PASS" start="2026-05-25T01:55:33.785660" elapsed="0.483502"/>
</kw>
<if>
<branch type="IF" condition="${verify}">
<kw name="Verify_Response_As_Json_Templated" owner="TemplatedRequests">
<arg>response=${response_text}</arg>
<arg>folder=${folder}</arg>
<arg>base_name=response</arg>
<arg>mapping=${mapping}</arg>
<arg>iter_j_offset=${iter_j_offset}</arg>
<doc>Resolve expected JSON data, should be equal to provided ${response}.
JSON normalization is used, endlines enabled for readability.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.269507" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:34.269268" elapsed="0.000306"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.269251" elapsed="0.000347"/>
</if>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-05-25T01:55:34.269631" elapsed="0.000025"/>
</return>
<arg>folder=${VAR_DIR}/add-group-1</arg>
<arg>mapping=${mapping}</arg>
<arg>session=session</arg>
<arg>iterations=${iter}</arg>
<doc>Add arguments sensible for JSON data, return Post_Templated response text.
Optionally, verification against response.json (no iteration) is called.
Only subset of JSON data is verified and returned if JMES path is specified in
file ${folder}/jmespath.expr.
Response status code must be one of values from ${explicit_status_codes} if specified or one of set
created from all positive HTTP status codes together with ${additional_allowed_status_codes}.</doc>
<status status="PASS" start="2026-05-25T01:55:33.782970" elapsed="0.486784"/>
</kw>
<var name="${switch}">1</var>
<status status="PASS" start="2026-05-25T01:55:33.771589" elapsed="0.498210"/>
</iter>
<iter>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.270465" level="INFO">&amp;{mapping} = { NODE=openflow:2 }</msg>
<var>&amp;{mapping}</var>
<arg>NODE=openflow:${switch}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.270044" elapsed="0.000449"/>
</kw>
<kw name="Post_As_Json_Templated" owner="TemplatedRequests">
<kw name="Post_Templated" owner="TemplatedRequests">
<kw name="Resolve_Text_From_Template_Folder" owner="TemplatedRequests">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.311524" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/location.uri</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:34.311150" elapsed="0.000402"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:34.312319" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1.titanium/location.uri' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:34.312080" elapsed="0.000311">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1.titanium/location.uri' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:34.312485" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:34.311716" elapsed="0.000794"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.313062" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/location.uri</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:34.312678" elapsed="0.000427"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:34.313402" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1/location.uri"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1/location.uri&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:34.313546" level="INFO">${template} = /rests/data/opendaylight-inventory:nodes/node=$NODE
</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:34.313266" elapsed="0.000305"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.313972" level="INFO">/rests/data/opendaylight-inventory:nodes/node=$NODE
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:34.313731" elapsed="0.000285"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.314966" level="INFO">mapping: {'NODE': 'openflow:2'}</msg>
<arg>mapping: ${mapping}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:34.314713" elapsed="0.000297"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.315461" level="INFO">${encoded_mapping} = {}</msg>
<var>${encoded_mapping}</var>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.315199" elapsed="0.000288"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Convert To String" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.316243" level="INFO">${value} = openflow:2</msg>
<var>${value}</var>
<arg>${value}</arg>
<doc>Converts the given item to a Unicode string.</doc>
<status status="PASS" start="2026-05-25T01:55:34.315847" elapsed="0.000421"/>
</kw>
<kw name="Percent_Encode_String" owner="TemplatedRequests">
<kw name="Replace String Using Regexp" owner="String">
<msg time="2026-05-25T01:55:34.318091" level="INFO">${encoded} = openflow%3A2</msg>
<var>${encoded}</var>
<arg>${value}</arg>
<arg>:</arg>
<arg>%3A</arg>
<doc>Replaces ``pattern`` in the given ``string`` with ``replace_with``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.317625" elapsed="0.000525"/>
</kw>
<return>
<value>${encoded}</value>
<status status="PASS" start="2026-05-25T01:55:34.318205" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:55:34.318361" level="INFO">${encoded_value} = openflow%3A2</msg>
<var>${encoded_value}</var>
<arg>${value}</arg>
<doc>Percent encodes reserved characters in the given string so it can be used as part of url.</doc>
<status status="PASS" start="2026-05-25T01:55:34.316454" elapsed="0.001932"/>
</kw>
<kw name="Set To Dictionary" owner="Collections">
<arg>${encoded_mapping}</arg>
<arg>${key}</arg>
<arg>${encoded_value}</arg>
<doc>Adds the given ``key_value_pairs`` and/or ``items`` to the ``dictionary``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.318539" elapsed="0.000273"/>
</kw>
<var name="${key}">NODE</var>
<var name="${value}">openflow:2</var>
<status status="PASS" start="2026-05-25T01:55:34.315712" elapsed="0.003142"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="PASS" start="2026-05-25T01:55:34.315544" elapsed="0.003345"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-05-25T01:55:34.318933" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:55:34.319105" level="INFO">${mapping_to_use} = {'NODE': 'openflow%3A2'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-05-25T01:55:34.314390" elapsed="0.004742"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.314100" elapsed="0.005065"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.319340" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:34.319190" elapsed="0.000206"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.314079" elapsed="0.005339"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.320144" level="INFO">${final_text} = /rests/data/opendaylight-inventory:nodes/node=openflow%3A2</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.319561" elapsed="0.000611"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:34.320223" elapsed="0.000028"/>
</return>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:34.310528" elapsed="0.009818"/>
</kw>
<msg time="2026-05-25T01:55:34.320401" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>not "${iterations}"</arg>
<arg>Resolve_Text_From_Template_File</arg>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:34.298467" elapsed="0.021982"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${prolog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.prolog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.332511" elapsed="0.000028"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${epilog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.epilog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.344379" elapsed="0.000027"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${item_template}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${base_name}.item.${extension}</arg>
<arg>mapping=${mapping}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.356299" elapsed="0.000027"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.356494" elapsed="0.000022"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<var>${separator}</var>
<arg>'${extension}' != 'json'</arg>
<arg>${endline}</arg>
<arg>,${endline}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.356671" elapsed="0.000020"/>
</kw>
<for flavor="IN RANGE">
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.357033" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:34.356889" elapsed="0.000214"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:34.356875" elapsed="0.000288"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.357311" elapsed="0.000020"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.357482" elapsed="0.000021"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.357650" elapsed="0.000020"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-05-25T01:55:34.356847" elapsed="0.000857"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-05-25T01:55:34.356747" elapsed="0.000982"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<var>${final_text}</var>
<arg>SEPARATOR=</arg>
<arg>${prolog}</arg>
<arg>${endline}</arg>
<arg>@{items}</arg>
<arg>${endline}</arg>
<arg>${epilog}</arg>
<doc>Catenates the given items together and returns the resulted string.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.357876" elapsed="0.000020"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-05-25T01:55:34.357952" elapsed="0.000015"/>
</return>
<msg time="2026-05-25T01:55:34.358083" level="INFO">${uri} = /rests/data/opendaylight-inventory:nodes/node=openflow%3A2</msg>
<var>${uri}</var>
<arg>folder=${folder}</arg>
<arg>base_name=location</arg>
<arg>extension=uri</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=True</arg>
<doc>Read a template from folder, strip endline, make changes according to mapping, return the result.
If ${iterations} value is present, put text together from "prolog", "item" and "epilog" parts,
where additional template variable ${i} goes from 1, by one 100 times.
Template variable ${j} is calculated as ${i} incremented by offset 0 ( j = i + iter_j_offset )
used to create non uniform data in order to be able to validate UPDATE operations.
POST (as opposed to PUT) needs slightly different data, ${name_prefix} may be used to distinguish.
(Actually, it is GET who formats data differently when URI is a top-level container.)</doc>
<status status="PASS" start="2026-05-25T01:55:34.294376" elapsed="0.063735"/>
</kw>
<kw name="Resolve_Text_From_Template_Folder" owner="TemplatedRequests">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>not "${iterations}"</arg>
<arg>Resolve_Text_From_Template_File</arg>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:34.368640" elapsed="0.000337"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.381734" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/post_data.prolog.json</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:34.381358" elapsed="0.000405"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:34.382491" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1.titanium/post_data.prolog.json' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:34.382279" elapsed="0.000281">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1.titanium/post_data.prolog.json' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:34.382653" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:34.381926" elapsed="0.000752"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.383245" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/post_data.prolog.json</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:34.382843" elapsed="0.000429"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:34.383570" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1/post_data.prolog.json"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1/post_data.prolog.json&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:34.383720" level="INFO">${template} = {
  "flow-node-inventory:group": [
</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:34.383435" elapsed="0.000312"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.384167" level="INFO">{
  "flow-node-inventory:group": [
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:34.383904" elapsed="0.000309"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:34.384570" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:34.384282" elapsed="0.000345"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.385102" level="INFO">${mapping_to_use} = {'NODE': 'openflow:2'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:34.384796" elapsed="0.000333"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.384651" elapsed="0.000514"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.384264" elapsed="0.000922"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.385758" level="INFO">${final_text} = {
  "flow-node-inventory:group": [</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.385333" elapsed="0.000452"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:34.385834" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:34.385983" level="INFO">${prolog} = {
  "flow-node-inventory:group": [</msg>
<var>${prolog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.prolog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:34.380732" elapsed="0.005276"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.399180" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/post_data.epilog.json</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:34.398791" elapsed="0.000418"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:34.399946" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1.titanium/post_data.epilog.json' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:34.399736" elapsed="0.000273">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1.titanium/post_data.epilog.json' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:34.400118" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:34.399373" elapsed="0.000771"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.400689" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/post_data.epilog.json</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:34.400309" elapsed="0.000407"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:34.401010" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1/post_data.epilog.json"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1/post_data.epilog.json&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:34.401148" level="INFO">${template} =   ]
}
</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:34.400877" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.401576" level="INFO">  ]
}
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:34.401331" elapsed="0.000288"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:34.401972" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:34.401687" elapsed="0.000343"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.402508" level="INFO">${mapping_to_use} = {'NODE': 'openflow:2'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:34.402218" elapsed="0.000316"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.402054" elapsed="0.000516"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.401668" elapsed="0.000924"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.403173" level="INFO">${final_text} =   ]
}</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.402737" elapsed="0.000464"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:34.403251" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:34.403401" level="INFO">${epilog} =   ]
}</msg>
<var>${epilog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.epilog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:34.398173" elapsed="0.005253"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.416269" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/data.item.json</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:34.415880" elapsed="0.000417"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:34.417003" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1.titanium/data.item.json' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:34.416800" elapsed="0.000280">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1.titanium/data.item.json' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:34.417175" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:34.416461" elapsed="0.000738"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.417787" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/data.item.json</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:34.417361" elapsed="0.000454"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:34.418129" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1/data.item.json"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1/data.item.json&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:34.418253" level="INFO">${template} =         {
          "group-id": ${i}000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
       ...</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:34.417978" elapsed="0.000302"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.418682" level="INFO">        {
          "group-id": ${i}000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-${i}",
          "group-type": "group-select"
        }
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:34.418439" elapsed="0.000291"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:34.419102" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:34.418797" elapsed="0.000365"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.419646" level="INFO">${mapping_to_use} = {'NODE': 'openflow:2'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:34.419334" elapsed="0.000339"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.419187" elapsed="0.000523"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.418779" elapsed="0.000952"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.420471" level="INFO">${final_text} =         {
          "group-id": ${i}000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
       ...</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.419879" elapsed="0.000621"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:34.420550" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:55:34.420704" level="INFO">${item_template} =         {
          "group-id": ${i}000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
       ...</msg>
<var>${item_template}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${base_name}.item.${extension}</arg>
<arg>mapping=${mapping}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:34.415301" elapsed="0.005430"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.421154" level="INFO">${items} = []</msg>
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:55:34.420894" elapsed="0.000286"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.421704" level="INFO">${separator} = ,
</msg>
<var>${separator}</var>
<arg>'${extension}' != 'json'</arg>
<arg>${endline}</arg>
<arg>,${endline}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:34.421340" elapsed="0.000390"/>
</kw>
<for flavor="IN RANGE">
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.422365" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:34.422128" elapsed="0.000295"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.422114" elapsed="0.000333"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.422937" level="INFO">${j} = 1</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.422589" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.423920" level="INFO">${item} =         {
          "group-id": 1000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
          ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.423134" elapsed="0.000815"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.424124" elapsed="0.000192"/>
</kw>
<var name="${iteration}">1</var>
<status status="PASS" start="2026-05-25T01:55:34.422081" elapsed="0.002273"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.424772" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.424534" elapsed="0.000463"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.424518" elapsed="0.000503"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.425540" level="INFO">${j} = 2</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.425182" elapsed="0.000385"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.426362" level="INFO">${item} =         {
          "group-id": 2000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
          ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.425760" elapsed="0.000631"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.426551" elapsed="0.000197"/>
</kw>
<var name="${iteration}">2</var>
<status status="PASS" start="2026-05-25T01:55:34.424488" elapsed="0.002298"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.427230" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.426977" elapsed="0.000541"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.426962" elapsed="0.000581"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.428045" level="INFO">${j} = 3</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.427693" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.428826" level="INFO">${item} =         {
          "group-id": 3000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
          ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.428248" elapsed="0.000606"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.429011" elapsed="0.000199"/>
</kw>
<var name="${iteration}">3</var>
<status status="PASS" start="2026-05-25T01:55:34.426933" elapsed="0.002316"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.429671" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.429428" elapsed="0.000465"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.429413" elapsed="0.000504"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.430427" level="INFO">${j} = 4</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.430061" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.431196" level="INFO">${item} =         {
          "group-id": 4000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
          ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.430609" elapsed="0.000616"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.431380" elapsed="0.000212"/>
</kw>
<var name="${iteration}">4</var>
<status status="PASS" start="2026-05-25T01:55:34.429383" elapsed="0.002247"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.432046" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.431810" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.431795" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.432807" level="INFO">${j} = 5</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.432454" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.433579" level="INFO">${item} =         {
          "group-id": 5000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
          ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.432989" elapsed="0.000618"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.433762" elapsed="0.000181"/>
</kw>
<var name="${iteration}">5</var>
<status status="PASS" start="2026-05-25T01:55:34.431766" elapsed="0.002215"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.434415" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.434179" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.434164" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.435175" level="INFO">${j} = 6</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.434807" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.435969" level="INFO">${item} =         {
          "group-id": 6000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
          ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.435357" elapsed="0.000640"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.436168" elapsed="0.000184"/>
</kw>
<var name="${iteration}">6</var>
<status status="PASS" start="2026-05-25T01:55:34.434134" elapsed="0.002255"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.436801" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.436567" elapsed="0.000486"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.436552" elapsed="0.000544"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.437595" level="INFO">${j} = 7</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.437244" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.438367" level="INFO">${item} =         {
          "group-id": 7000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
          ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.437776" elapsed="0.000619"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.438553" elapsed="0.000182"/>
</kw>
<var name="${iteration}">7</var>
<status status="PASS" start="2026-05-25T01:55:34.436524" elapsed="0.002249"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.439203" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.438951" elapsed="0.000490"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.438936" elapsed="0.000530"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.439960" level="INFO">${j} = 8</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.439611" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.440869" level="INFO">${item} =         {
          "group-id": 8000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
          ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.440164" elapsed="0.000734"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.441056" elapsed="0.000206"/>
</kw>
<var name="${iteration}">8</var>
<status status="PASS" start="2026-05-25T01:55:34.438907" elapsed="0.002393"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.441717" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.441481" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.441466" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.442471" level="INFO">${j} = 9</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.442122" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.443237" level="INFO">${item} =         {
          "group-id": 9000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
          ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.442651" elapsed="0.000615"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.443436" elapsed="0.000185"/>
</kw>
<var name="${iteration}">9</var>
<status status="PASS" start="2026-05-25T01:55:34.441436" elapsed="0.002222"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.444093" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.443837" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.443823" elapsed="0.000520"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.444835" level="INFO">${j} = 10</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.444485" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.445613" level="INFO">${item} =         {
          "group-id": 10000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.445017" elapsed="0.000625"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.445796" elapsed="0.000181"/>
</kw>
<var name="${iteration}">10</var>
<status status="PASS" start="2026-05-25T01:55:34.443793" elapsed="0.002220"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.446445" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.446210" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.446195" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.447199" level="INFO">${j} = 11</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.446833" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.447985" level="INFO">${item} =         {
          "group-id": 11000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.447407" elapsed="0.000605"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.448184" elapsed="0.000182"/>
</kw>
<var name="${iteration}">11</var>
<status status="PASS" start="2026-05-25T01:55:34.446165" elapsed="0.002271"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.448859" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.448623" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.448608" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.449615" level="INFO">${j} = 12</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.449264" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.450388" level="INFO">${item} =         {
          "group-id": 12000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.449797" elapsed="0.000619"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.450572" elapsed="0.000181"/>
</kw>
<var name="${iteration}">12</var>
<status status="PASS" start="2026-05-25T01:55:34.448578" elapsed="0.002212"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.451217" elapsed="0.000196"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.450968" elapsed="0.000487"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.450953" elapsed="0.000526"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.451975" level="INFO">${j} = 13</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.451627" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.452747" level="INFO">${item} =         {
          "group-id": 13000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.452172" elapsed="0.000603"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.452927" elapsed="0.000195"/>
</kw>
<var name="${iteration}">13</var>
<status status="PASS" start="2026-05-25T01:55:34.450924" elapsed="0.002236"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.453575" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.453340" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.453323" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.454330" level="INFO">${j} = 14</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.453963" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.455097" level="INFO">${item} =         {
          "group-id": 14000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.454511" elapsed="0.000615"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.455280" elapsed="0.000192"/>
</kw>
<var name="${iteration}">14</var>
<status status="PASS" start="2026-05-25T01:55:34.453294" elapsed="0.002216"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.455924" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.455690" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.455675" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.456794" level="INFO">${j} = 15</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.456329" elapsed="0.000492"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.457569" level="INFO">${item} =         {
          "group-id": 15000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.456976" elapsed="0.000621"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.457754" elapsed="0.000181"/>
</kw>
<var name="${iteration}">15</var>
<status status="PASS" start="2026-05-25T01:55:34.455646" elapsed="0.002327"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.458403" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.458168" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.458152" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.459153" level="INFO">${j} = 16</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.458789" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.459944" level="INFO">${item} =         {
          "group-id": 16000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.459359" elapsed="0.000650"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.460187" elapsed="0.000184"/>
</kw>
<var name="${iteration}">16</var>
<status status="PASS" start="2026-05-25T01:55:34.458122" elapsed="0.002286"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.460821" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.460587" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.460572" elapsed="0.000506"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.461571" level="INFO">${j} = 17</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.461223" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.462341" level="INFO">${item} =         {
          "group-id": 17000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.461752" elapsed="0.000618"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.462525" elapsed="0.000181"/>
</kw>
<var name="${iteration}">17</var>
<status status="PASS" start="2026-05-25T01:55:34.460543" elapsed="0.002200"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.463173" elapsed="0.000214"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.462923" elapsed="0.000503"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.462908" elapsed="0.000543"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.463944" level="INFO">${j} = 18</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.463593" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.464716" level="INFO">${item} =         {
          "group-id": 18000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.464143" elapsed="0.000602"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.464900" elapsed="0.000196"/>
</kw>
<var name="${iteration}">18</var>
<status status="PASS" start="2026-05-25T01:55:34.462879" elapsed="0.002255"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.465546" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.465312" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.465297" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.466295" level="INFO">${j} = 19</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.465931" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.467046" level="INFO">${item} =         {
          "group-id": 19000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.466474" elapsed="0.000614"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.467243" elapsed="0.000199"/>
</kw>
<var name="${iteration}">19</var>
<status status="PASS" start="2026-05-25T01:55:34.465268" elapsed="0.002212"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.467893" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.467658" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.467642" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.468650" level="INFO">${j} = 20</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.468300" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.469418" level="INFO">${item} =         {
          "group-id": 20000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.468831" elapsed="0.000616"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.469601" elapsed="0.000180"/>
</kw>
<var name="${iteration}">20</var>
<status status="PASS" start="2026-05-25T01:55:34.467613" elapsed="0.002205"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.470247" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.469996" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.469979" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.470985" level="INFO">${j} = 21</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.470639" elapsed="0.000408"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.471824" level="INFO">${item} =         {
          "group-id": 21000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.471223" elapsed="0.000629"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.472008" elapsed="0.000200"/>
</kw>
<var name="${iteration}">21</var>
<status status="PASS" start="2026-05-25T01:55:34.469950" elapsed="0.002297"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.472660" elapsed="0.000298"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.472425" elapsed="0.000572"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.472411" elapsed="0.000611"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.473539" level="INFO">${j} = 22</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.473183" elapsed="0.000385"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.474313" level="INFO">${item} =         {
          "group-id": 22000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.473725" elapsed="0.000617"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.474498" elapsed="0.000182"/>
</kw>
<var name="${iteration}">22</var>
<status status="PASS" start="2026-05-25T01:55:34.472382" elapsed="0.002335"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.475142" elapsed="0.000197"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.474894" elapsed="0.000487"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.474879" elapsed="0.000527"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.475897" level="INFO">${j} = 23</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.475549" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.476664" level="INFO">${item} =         {
          "group-id": 23000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.476092" elapsed="0.000601"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.476848" elapsed="0.000181"/>
</kw>
<var name="${iteration}">23</var>
<status status="PASS" start="2026-05-25T01:55:34.474850" elapsed="0.002230"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.477494" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.477259" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.477244" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.478247" level="INFO">${j} = 24</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.477882" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.478997" level="INFO">${item} =         {
          "group-id": 24000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.478428" elapsed="0.000597"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.479196" elapsed="0.000209"/>
</kw>
<var name="${iteration}">24</var>
<status status="PASS" start="2026-05-25T01:55:34.477215" elapsed="0.002227"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.479860" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.479624" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.479610" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.480612" level="INFO">${j} = 25</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.480264" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.481381" level="INFO">${item} =         {
          "group-id": 25000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.480793" elapsed="0.000616"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.481564" elapsed="0.000181"/>
</kw>
<var name="${iteration}">25</var>
<status status="PASS" start="2026-05-25T01:55:34.479580" elapsed="0.002202"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.482244" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.481960" elapsed="0.000510"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.481945" elapsed="0.000550"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.482987" level="INFO">${j} = 26</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.482638" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.483795" level="INFO">${item} =         {
          "group-id": 26000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.483185" elapsed="0.000638"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.483982" elapsed="0.000205"/>
</kw>
<var name="${iteration}">26</var>
<status status="PASS" start="2026-05-25T01:55:34.481915" elapsed="0.002310"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.484638" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.484404" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.484389" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.485391" level="INFO">${j} = 27</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.485025" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.486160" level="INFO">${item} =         {
          "group-id": 27000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.485572" elapsed="0.000617"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.486345" elapsed="0.000181"/>
</kw>
<var name="${iteration}">27</var>
<status status="PASS" start="2026-05-25T01:55:34.484360" elapsed="0.002204"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.486976" elapsed="0.000209"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.486744" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.486729" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.487741" level="INFO">${j} = 28</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.487388" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.488514" level="INFO">${item} =         {
          "group-id": 28000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.487922" elapsed="0.000620"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.488698" elapsed="0.000181"/>
</kw>
<var name="${iteration}">28</var>
<status status="PASS" start="2026-05-25T01:55:34.486700" elapsed="0.002217"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.489462" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.489113" elapsed="0.000572"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.489096" elapsed="0.000613"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.490216" level="INFO">${j} = 29</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.489851" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.490971" level="INFO">${item} =         {
          "group-id": 29000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.490399" elapsed="0.000600"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.491180" elapsed="0.000187"/>
</kw>
<var name="${iteration}">29</var>
<status status="PASS" start="2026-05-25T01:55:34.489050" elapsed="0.002355"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.491831" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.491584" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.491569" elapsed="0.000526"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.492607" level="INFO">${j} = 30</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.492251" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.493377" level="INFO">${item} =         {
          "group-id": 30000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.492788" elapsed="0.000617"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.493593" elapsed="0.000183"/>
</kw>
<var name="${iteration}">30</var>
<status status="PASS" start="2026-05-25T01:55:34.491540" elapsed="0.002274"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.494244" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.493993" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.493978" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.494976" level="INFO">${j} = 31</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.494629" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.495774" level="INFO">${item} =         {
          "group-id": 31000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.495192" elapsed="0.000610"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.495958" elapsed="0.000197"/>
</kw>
<var name="${iteration}">31</var>
<status status="PASS" start="2026-05-25T01:55:34.493949" elapsed="0.002244"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.496602" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.496369" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.496355" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.497353" level="INFO">${j} = 32</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.496986" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.498122" level="INFO">${item} =         {
          "group-id": 32000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.497535" elapsed="0.000616"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.498307" elapsed="0.000180"/>
</kw>
<var name="${iteration}">32</var>
<status status="PASS" start="2026-05-25T01:55:34.496326" elapsed="0.002198"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.498936" elapsed="0.000210"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.498701" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.498687" elapsed="0.000522"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.499697" level="INFO">${j} = 33</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.499351" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.500466" level="INFO">${item} =         {
          "group-id": 33000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.499875" elapsed="0.000619"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.500648" elapsed="0.000180"/>
</kw>
<var name="${iteration}">33</var>
<status status="PASS" start="2026-05-25T01:55:34.498658" elapsed="0.002207"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.501298" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.501045" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.501028" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.502034" level="INFO">${j} = 34</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.501687" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.502810" level="INFO">${item} =         {
          "group-id": 34000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.502233" elapsed="0.000605"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.502993" elapsed="0.000211"/>
</kw>
<var name="${iteration}">34</var>
<status status="PASS" start="2026-05-25T01:55:34.500998" elapsed="0.002243"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.503653" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.503418" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.503403" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.504428" level="INFO">${j} = 35</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.504041" elapsed="0.000414"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.505250" level="INFO">${item} =         {
          "group-id": 35000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.504650" elapsed="0.000629"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.505436" elapsed="0.000182"/>
</kw>
<var name="${iteration}">35</var>
<status status="PASS" start="2026-05-25T01:55:34.503374" elapsed="0.002282"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.506242" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.505975" elapsed="0.000493"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.505851" elapsed="0.000642"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.506987" level="INFO">${j} = 36</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.506636" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.507868" level="INFO">${item} =         {
          "group-id": 36000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.507258" elapsed="0.000638"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.508051" elapsed="0.000199"/>
</kw>
<var name="${iteration}">36</var>
<status status="PASS" start="2026-05-25T01:55:34.505791" elapsed="0.002498"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.508701" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.508467" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.508452" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.509452" level="INFO">${j} = 37</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.509101" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.510223" level="INFO">${item} =         {
          "group-id": 37000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.509633" elapsed="0.000618"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.510406" elapsed="0.000181"/>
</kw>
<var name="${iteration}">37</var>
<status status="PASS" start="2026-05-25T01:55:34.508423" elapsed="0.002201"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.511037" elapsed="0.000223"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.510802" elapsed="0.000497"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.510787" elapsed="0.000536"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.511816" level="INFO">${j} = 38</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.511465" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.512593" level="INFO">${item} =         {
          "group-id": 38000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.511997" elapsed="0.000624"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.512777" elapsed="0.000180"/>
</kw>
<var name="${iteration}">38</var>
<status status="PASS" start="2026-05-25T01:55:34.510758" elapsed="0.002237"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.513424" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.513190" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.513175" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.514180" level="INFO">${j} = 39</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.513813" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.514943" level="INFO">${item} =         {
          "group-id": 39000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.514362" elapsed="0.000609"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.515155" elapsed="0.000185"/>
</kw>
<var name="${iteration}">39</var>
<status status="PASS" start="2026-05-25T01:55:34.513145" elapsed="0.002233"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.515792" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.515558" elapsed="0.000486"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.515542" elapsed="0.000543"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.516587" level="INFO">${j} = 40</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.516233" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.517367" level="INFO">${item} =         {
          "group-id": 40000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.516770" elapsed="0.000626"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.517553" elapsed="0.000183"/>
</kw>
<var name="${iteration}">40</var>
<status status="PASS" start="2026-05-25T01:55:34.515513" elapsed="0.002261"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.518202" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.517952" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.517937" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.518942" level="INFO">${j} = 41</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.518593" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.519746" level="INFO">${item} =         {
          "group-id": 41000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.519165" elapsed="0.000610"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.519929" elapsed="0.000196"/>
</kw>
<var name="${iteration}">41</var>
<status status="PASS" start="2026-05-25T01:55:34.517908" elapsed="0.002255"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.520581" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.520342" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.520327" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.521331" level="INFO">${j} = 42</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.520965" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.522104" level="INFO">${item} =         {
          "group-id": 42000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.521511" elapsed="0.000623"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.522290" elapsed="0.000182"/>
</kw>
<var name="${iteration}">42</var>
<status status="PASS" start="2026-05-25T01:55:34.520298" elapsed="0.002212"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.523055" elapsed="0.000207"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.522801" elapsed="0.000501"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.522677" elapsed="0.000650"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.523817" level="INFO">${j} = 43</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.523469" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.524593" level="INFO">${item} =         {
          "group-id": 43000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.523998" elapsed="0.000623"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.524776" elapsed="0.000181"/>
</kw>
<var name="${iteration}">43</var>
<status status="PASS" start="2026-05-25T01:55:34.522648" elapsed="0.002347"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.525423" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.525189" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.525174" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.526179" level="INFO">${j} = 44</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.525812" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.526937" level="INFO">${item} =         {
          "group-id": 44000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.526362" elapsed="0.000602"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.527163" elapsed="0.000185"/>
</kw>
<var name="${iteration}">44</var>
<status status="PASS" start="2026-05-25T01:55:34.525145" elapsed="0.002276"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.527843" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.527607" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.527593" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.528597" level="INFO">${j} = 45</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.528247" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.529370" level="INFO">${item} =         {
          "group-id": 45000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.528777" elapsed="0.000622"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.529554" elapsed="0.000181"/>
</kw>
<var name="${iteration}">45</var>
<status status="PASS" start="2026-05-25T01:55:34.527563" elapsed="0.002210"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.530201" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.529950" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.529935" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.531108" level="INFO">${j} = 46</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.530632" elapsed="0.000511"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.532006" level="INFO">${item} =         {
          "group-id": 46000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.531330" elapsed="0.000708"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.532244" elapsed="0.000219"/>
</kw>
<var name="${iteration}">46</var>
<status status="PASS" start="2026-05-25T01:55:34.529905" elapsed="0.002604"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.532938" elapsed="0.000205"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.532701" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.532685" elapsed="0.000522"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.533705" level="INFO">${j} = 47</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.533350" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.534490" level="INFO">${item} =         {
          "group-id": 47000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.533886" elapsed="0.000633"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.534673" elapsed="0.000191"/>
</kw>
<var name="${iteration}">47</var>
<status status="PASS" start="2026-05-25T01:55:34.532655" elapsed="0.002247"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.535351" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.535114" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.535097" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.536107" level="INFO">${j} = 48</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.535740" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.536866" level="INFO">${item} =         {
          "group-id": 48000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.536290" elapsed="0.000604"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.537048" elapsed="0.000197"/>
</kw>
<var name="${iteration}">48</var>
<status status="PASS" start="2026-05-25T01:55:34.535051" elapsed="0.002232"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.537692" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.537460" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.537445" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.538474" level="INFO">${j} = 49</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.538096" elapsed="0.000404"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.539270" level="INFO">${item} =         {
          "group-id": 49000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.538655" elapsed="0.000681"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.539496" elapsed="0.000183"/>
</kw>
<var name="${iteration}">49</var>
<status status="PASS" start="2026-05-25T01:55:34.537416" elapsed="0.002302"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.540268" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.540009" elapsed="0.000484"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.539881" elapsed="0.000636"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.541010" level="INFO">${j} = 50</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.540659" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.541787" level="INFO">${item} =         {
          "group-id": 50000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.541209" elapsed="0.000606"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.541970" elapsed="0.000200"/>
</kw>
<var name="${iteration}">50</var>
<status status="PASS" start="2026-05-25T01:55:34.539852" elapsed="0.002357"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.542627" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.542387" elapsed="0.000462"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.542372" elapsed="0.000501"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.543420" level="INFO">${j} = 51</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.543051" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.544191" level="INFO">${item} =         {
          "group-id": 51000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.543600" elapsed="0.000619"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.544375" elapsed="0.000180"/>
</kw>
<var name="${iteration}">51</var>
<status status="PASS" start="2026-05-25T01:55:34.542343" elapsed="0.002249"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.545004" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.544769" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.544754" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.545763" level="INFO">${j} = 52</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.545409" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.546533" level="INFO">${item} =         {
          "group-id": 52000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.545942" elapsed="0.000625"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.546757" elapsed="0.000241"/>
</kw>
<var name="${iteration}">52</var>
<status status="PASS" start="2026-05-25T01:55:34.544725" elapsed="0.002319"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.547557" elapsed="0.000215"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.547279" elapsed="0.000542"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.547261" elapsed="0.000589"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.548447" level="INFO">${j} = 53</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.548024" elapsed="0.000450"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.549226" level="INFO">${item} =         {
          "group-id": 53000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.548630" elapsed="0.000630"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.549538" elapsed="0.000192"/>
</kw>
<var name="${iteration}">53</var>
<status status="PASS" start="2026-05-25T01:55:34.547227" elapsed="0.002542"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.550201" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.549949" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.549933" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.550965" level="INFO">${j} = 54</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.550590" elapsed="0.000443"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.551996" level="INFO">${item} =         {
          "group-id": 54000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.551250" elapsed="0.000781"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.552253" elapsed="0.000234"/>
</kw>
<var name="${iteration}">54</var>
<status status="PASS" start="2026-05-25T01:55:34.549903" elapsed="0.002631"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.553066" elapsed="0.000252"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.552759" elapsed="0.000608"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.552741" elapsed="0.000657"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.554028" level="INFO">${j} = 55</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.553584" elapsed="0.000476"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.555081" level="INFO">${item} =         {
          "group-id": 55000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.554284" elapsed="0.000829"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.555273" elapsed="0.000186"/>
</kw>
<var name="${iteration}">55</var>
<status status="PASS" start="2026-05-25T01:55:34.552704" elapsed="0.002792"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.555915" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.555680" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.555665" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.556676" level="INFO">${j} = 56</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.556323" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.557450" level="INFO">${item} =         {
          "group-id": 56000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.556857" elapsed="0.000621"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.557634" elapsed="0.000181"/>
</kw>
<var name="${iteration}">56</var>
<status status="PASS" start="2026-05-25T01:55:34.555636" elapsed="0.002218"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.558400" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.558158" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.558016" elapsed="0.000638"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.559197" level="INFO">${j} = 57</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.558798" elapsed="0.000426"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.559954" level="INFO">${item} =         {
          "group-id": 57000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.559382" elapsed="0.000600"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.560153" elapsed="0.000184"/>
</kw>
<var name="${iteration}">57</var>
<status status="PASS" start="2026-05-25T01:55:34.557987" elapsed="0.002387"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.560785" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.560550" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.560535" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.561540" level="INFO">${j} = 58</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.561187" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.562313" level="INFO">${item} =         {
          "group-id": 58000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.561721" elapsed="0.000621"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.562497" elapsed="0.000181"/>
</kw>
<var name="${iteration}">58</var>
<status status="PASS" start="2026-05-25T01:55:34.560506" elapsed="0.002209"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.563192" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.562906" elapsed="0.000513"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.562891" elapsed="0.000553"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.563937" level="INFO">${j} = 59</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.563587" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.564716" level="INFO">${item} =         {
          "group-id": 59000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.564135" elapsed="0.000609"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.564900" elapsed="0.000198"/>
</kw>
<var name="${iteration}">59</var>
<status status="PASS" start="2026-05-25T01:55:34.562861" elapsed="0.002275"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.565552" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.565315" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.565301" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.566302" level="INFO">${j} = 60</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.565937" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.567109" level="INFO">${item} =         {
          "group-id": 60000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.566484" elapsed="0.000654"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.567293" elapsed="0.000182"/>
</kw>
<var name="${iteration}">60</var>
<status status="PASS" start="2026-05-25T01:55:34.565272" elapsed="0.002240"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.567923" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.567689" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.567675" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.568673" level="INFO">${j} = 61</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.568325" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.569440" level="INFO">${item} =         {
          "group-id": 61000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.568852" elapsed="0.000617"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.569622" elapsed="0.000179"/>
</kw>
<var name="${iteration}">61</var>
<status status="PASS" start="2026-05-25T01:55:34.567646" elapsed="0.002192"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.570264" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.570014" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.570000" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.571016" level="INFO">${j} = 62</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.570651" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.571798" level="INFO">${item} =         {
          "group-id": 62000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.571214" elapsed="0.000612"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.571980" elapsed="0.000204"/>
</kw>
<var name="${iteration}">62</var>
<status status="PASS" start="2026-05-25T01:55:34.569971" elapsed="0.002250"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.572635" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.572400" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.572385" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.573386" level="INFO">${j} = 63</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.573021" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.574154" level="INFO">${item} =         {
          "group-id": 63000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.573566" elapsed="0.000617"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.574372" elapsed="0.000190"/>
</kw>
<var name="${iteration}">63</var>
<status status="PASS" start="2026-05-25T01:55:34.572356" elapsed="0.002244"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.575170" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.574907" elapsed="0.000490"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.574765" elapsed="0.000656"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.575916" level="INFO">${j} = 64</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.575564" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.576691" level="INFO">${item} =         {
          "group-id": 64000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.576113" elapsed="0.000606"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.576875" elapsed="0.000182"/>
</kw>
<var name="${iteration}">64</var>
<status status="PASS" start="2026-05-25T01:55:34.574736" elapsed="0.002373"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.577528" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.577291" elapsed="0.000463"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.577276" elapsed="0.000503"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.578289" level="INFO">${j} = 65</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.577921" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.579087" level="INFO">${item} =         {
          "group-id": 65000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.578471" elapsed="0.000646"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.579273" elapsed="0.000183"/>
</kw>
<var name="${iteration}">65</var>
<status status="PASS" start="2026-05-25T01:55:34.577246" elapsed="0.002248"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.579906" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.579672" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.579657" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.580658" level="INFO">${j} = 66</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.580310" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.581428" level="INFO">${item} =         {
          "group-id": 66000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.580837" elapsed="0.000619"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.581610" elapsed="0.000180"/>
</kw>
<var name="${iteration}">66</var>
<status status="PASS" start="2026-05-25T01:55:34.579628" elapsed="0.002200"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.582258" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.582006" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.581991" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.583005" level="INFO">${j} = 67</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.582646" elapsed="0.000385"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.583779" level="INFO">${item} =         {
          "group-id": 67000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.583204" elapsed="0.000603"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.583959" elapsed="0.000198"/>
</kw>
<var name="${iteration}">67</var>
<status status="PASS" start="2026-05-25T01:55:34.581962" elapsed="0.002233"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.584610" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.584375" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.584360" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.585364" level="INFO">${j} = 68</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.584997" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.586174" level="INFO">${item} =         {
          "group-id": 68000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.585579" elapsed="0.000624"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.586359" elapsed="0.000183"/>
</kw>
<var name="${iteration}">68</var>
<status status="PASS" start="2026-05-25T01:55:34.584329" elapsed="0.002250"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.587005" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.586771" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.586755" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.587759" level="INFO">${j} = 69</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.587412" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.588527" level="INFO">${item} =         {
          "group-id": 69000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.587939" elapsed="0.000617"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.588711" elapsed="0.000181"/>
</kw>
<var name="${iteration}">69</var>
<status status="PASS" start="2026-05-25T01:55:34.586715" elapsed="0.002215"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.589362" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.589125" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.589110" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.590111" level="INFO">${j} = 70</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.589749" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.590896" level="INFO">${item} =         {
          "group-id": 70000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.590292" elapsed="0.000632"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.591098" elapsed="0.000184"/>
</kw>
<var name="${iteration}">70</var>
<status status="PASS" start="2026-05-25T01:55:34.589079" elapsed="0.002240"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.592454" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.592208" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.591483" elapsed="0.001222"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.593212" level="INFO">${j} = 71</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.592847" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.593972" level="INFO">${item} =         {
          "group-id": 71000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.593394" elapsed="0.000606"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.594170" elapsed="0.000184"/>
</kw>
<var name="${iteration}">71</var>
<status status="PASS" start="2026-05-25T01:55:34.591453" elapsed="0.002939"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.594818" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.594571" elapsed="0.000468"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.594557" elapsed="0.000524"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.595575" level="INFO">${j} = 72</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.595225" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.596340" level="INFO">${item} =         {
          "group-id": 72000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.595753" elapsed="0.000615"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.596521" elapsed="0.000181"/>
</kw>
<var name="${iteration}">72</var>
<status status="PASS" start="2026-05-25T01:55:34.594527" elapsed="0.002212"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.597165" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.596917" elapsed="0.000501"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.596902" elapsed="0.000543"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.597938" level="INFO">${j} = 73</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.597588" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.598733" level="INFO">${item} =         {
          "group-id": 73000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.598142" elapsed="0.000619"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.598916" elapsed="0.000200"/>
</kw>
<var name="${iteration}">73</var>
<status status="PASS" start="2026-05-25T01:55:34.596874" elapsed="0.002281"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.599575" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.599336" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.599321" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.600329" level="INFO">${j} = 74</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.599960" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.601102" level="INFO">${item} =         {
          "group-id": 74000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.600509" elapsed="0.000622"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.601287" elapsed="0.000182"/>
</kw>
<var name="${iteration}">74</var>
<status status="PASS" start="2026-05-25T01:55:34.599292" elapsed="0.002215"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.601921" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.601686" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.601671" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.602702" level="INFO">${j} = 75</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.602323" elapsed="0.000407"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.603480" level="INFO">${item} =         {
          "group-id": 75000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.602886" elapsed="0.000622"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.603663" elapsed="0.000181"/>
</kw>
<var name="${iteration}">75</var>
<status status="PASS" start="2026-05-25T01:55:34.601643" elapsed="0.002238"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.604314" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.604061" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.604046" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.605047" level="INFO">${j} = 76</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.604699" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.605830" level="INFO">${item} =         {
          "group-id": 76000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.605247" elapsed="0.000611"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.606011" elapsed="0.000199"/>
</kw>
<var name="${iteration}">76</var>
<status status="PASS" start="2026-05-25T01:55:34.604017" elapsed="0.002231"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.606672" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.606429" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.606414" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.607429" level="INFO">${j} = 77</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.607080" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.608195" level="INFO">${item} =         {
          "group-id": 77000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.607608" elapsed="0.000614"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.608375" elapsed="0.000179"/>
</kw>
<var name="${iteration}">77</var>
<status status="PASS" start="2026-05-25T01:55:34.606385" elapsed="0.002246"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.609186" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.608927" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.608799" elapsed="0.000636"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.609934" level="INFO">${j} = 78</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.609584" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.610725" level="INFO">${item} =         {
          "group-id": 78000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.610136" elapsed="0.000617"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.610911" elapsed="0.000202"/>
</kw>
<var name="${iteration}">78</var>
<status status="PASS" start="2026-05-25T01:55:34.608770" elapsed="0.002381"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.611567" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.611332" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.611317" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.612320" level="INFO">${j} = 79</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.611953" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.613094" level="INFO">${item} =         {
          "group-id": 79000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.612500" elapsed="0.000623"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.613278" elapsed="0.000184"/>
</kw>
<var name="${iteration}">79</var>
<status status="PASS" start="2026-05-25T01:55:34.611288" elapsed="0.002211"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.613912" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.613678" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.613664" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.614687" level="INFO">${j} = 80</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.614314" elapsed="0.000400"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.615465" level="INFO">${item} =         {
          "group-id": 80000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.614869" elapsed="0.000624"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.615653" elapsed="0.000182"/>
</kw>
<var name="${iteration}">80</var>
<status status="PASS" start="2026-05-25T01:55:34.613635" elapsed="0.002238"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.616306" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.616054" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.616039" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.617043" level="INFO">${j} = 81</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.616695" elapsed="0.000388"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.617820" level="INFO">${item} =         {
          "group-id": 81000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.617240" elapsed="0.000608"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.618003" elapsed="0.000198"/>
</kw>
<var name="${iteration}">81</var>
<status status="PASS" start="2026-05-25T01:55:34.616010" elapsed="0.002229"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.618663" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.618418" elapsed="0.000466"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.618404" elapsed="0.000504"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.619416" level="INFO">${j} = 82</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.619049" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.620185" level="INFO">${item} =         {
          "group-id": 82000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.619596" elapsed="0.000651"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.620405" elapsed="0.000185"/>
</kw>
<var name="${iteration}">82</var>
<status status="PASS" start="2026-05-25T01:55:34.618374" elapsed="0.002253"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.621040" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.620806" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.620791" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.621797" level="INFO">${j} = 83</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.621446" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.622572" level="INFO">${item} =         {
          "group-id": 83000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.621979" elapsed="0.000635"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.622777" elapsed="0.000185"/>
</kw>
<var name="${iteration}">83</var>
<status status="PASS" start="2026-05-25T01:55:34.620762" elapsed="0.002238"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.623434" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.623200" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.623185" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.624181" level="INFO">${j} = 84</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.623819" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.624934" level="INFO">${item} =         {
          "group-id": 84000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.624362" elapsed="0.000600"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.625131" elapsed="0.000184"/>
</kw>
<var name="${iteration}">84</var>
<status status="PASS" start="2026-05-25T01:55:34.623155" elapsed="0.002198"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.625886" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.625645" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.625515" elapsed="0.000633"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.626666" level="INFO">${j} = 85</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.626291" elapsed="0.000402"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.627440" level="INFO">${item} =         {
          "group-id": 85000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.626847" elapsed="0.000621"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.627622" elapsed="0.000183"/>
</kw>
<var name="${iteration}">85</var>
<status status="PASS" start="2026-05-25T01:55:34.625486" elapsed="0.002356"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.628271" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.628021" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.628005" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.629008" level="INFO">${j} = 86</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.628659" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.629782" level="INFO">${item} =         {
          "group-id": 86000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.629205" elapsed="0.000605"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.629965" elapsed="0.000199"/>
</kw>
<var name="${iteration}">86</var>
<status status="PASS" start="2026-05-25T01:55:34.627976" elapsed="0.002226"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.630630" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.630381" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.630366" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.631385" level="INFO">${j} = 87</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.631017" elapsed="0.000431"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.632204" level="INFO">${item} =         {
          "group-id": 87000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.631614" elapsed="0.000619"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.632390" elapsed="0.000183"/>
</kw>
<var name="${iteration}">87</var>
<status status="PASS" start="2026-05-25T01:55:34.630337" elapsed="0.002274"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.633027" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.632791" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.632776" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.633787" level="INFO">${j} = 88</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.633437" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.634587" level="INFO">${item} =         {
          "group-id": 88000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.633969" elapsed="0.000648"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.634773" elapsed="0.000182"/>
</kw>
<var name="${iteration}">88</var>
<status status="PASS" start="2026-05-25T01:55:34.632747" elapsed="0.002245"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.635441" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.635205" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.635190" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.636192" level="INFO">${j} = 89</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.635827" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.636948" level="INFO">${item} =         {
          "group-id": 89000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.636375" elapsed="0.000601"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.637146" elapsed="0.000183"/>
</kw>
<var name="${iteration}">89</var>
<status status="PASS" start="2026-05-25T01:55:34.635153" elapsed="0.002213"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.637790" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.637542" elapsed="0.000468"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.637527" elapsed="0.000582"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.638647" level="INFO">${j} = 90</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.638257" elapsed="0.000418"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.639431" level="INFO">${item} =         {
          "group-id": 90000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.638830" elapsed="0.000629"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.639613" elapsed="0.000182"/>
</kw>
<var name="${iteration}">90</var>
<status status="PASS" start="2026-05-25T01:55:34.637499" elapsed="0.002333"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.640260" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.640008" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.639992" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.640995" level="INFO">${j} = 91</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.640648" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.641770" level="INFO">${item} =         {
          "group-id": 91000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.641194" elapsed="0.000605"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.641956" elapsed="0.000197"/>
</kw>
<var name="${iteration}">91</var>
<status status="PASS" start="2026-05-25T01:55:34.639963" elapsed="0.002228"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.642768" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.642482" elapsed="0.000514"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.642354" elapsed="0.000667"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.643544" level="INFO">${j} = 92</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.643186" elapsed="0.000384"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.644326" level="INFO">${item} =         {
          "group-id": 92000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.643726" elapsed="0.000628"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.644509" elapsed="0.000184"/>
</kw>
<var name="${iteration}">92</var>
<status status="PASS" start="2026-05-25T01:55:34.642325" elapsed="0.002405"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.645160" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.644909" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.644894" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.645905" level="INFO">${j} = 93</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.645551" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.646695" level="INFO">${item} =         {
          "group-id": 93000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.646101" elapsed="0.000622"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.646879" elapsed="0.000181"/>
</kw>
<var name="${iteration}">93</var>
<status status="PASS" start="2026-05-25T01:55:34.644865" elapsed="0.002252"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.647529" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.647296" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.647281" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.648285" level="INFO">${j} = 94</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.647920" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.649041" level="INFO">${item} =         {
          "group-id": 94000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.648468" elapsed="0.000615"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.649241" elapsed="0.000181"/>
</kw>
<var name="${iteration}">94</var>
<status status="PASS" start="2026-05-25T01:55:34.647252" elapsed="0.002208"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.649917" elapsed="0.000197"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.649684" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.649669" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.650714" level="INFO">${j} = 95</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.650317" elapsed="0.000423"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.651490" level="INFO">${item} =         {
          "group-id": 95000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.650895" elapsed="0.000623"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.651676" elapsed="0.000181"/>
</kw>
<var name="${iteration}">95</var>
<status status="PASS" start="2026-05-25T01:55:34.649641" elapsed="0.002253"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.652323" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.652086" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.652056" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.653057" level="INFO">${j} = 96</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.652709" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.653827" level="INFO">${item} =         {
          "group-id": 96000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.653254" elapsed="0.000601"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.654045" elapsed="0.000201"/>
</kw>
<var name="${iteration}">96</var>
<status status="PASS" start="2026-05-25T01:55:34.652027" elapsed="0.002258"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.654711" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.654475" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.654459" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.655469" level="INFO">${j} = 97</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.655117" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.656242" level="INFO">${item} =         {
          "group-id": 97000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.655652" elapsed="0.000617"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.656424" elapsed="0.000186"/>
</kw>
<var name="${iteration}">97</var>
<status status="PASS" start="2026-05-25T01:55:34.654419" elapsed="0.002228"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.657060" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.656826" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.656811" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.657812" level="INFO">${j} = 98</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.657466" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.658620" level="INFO">${item} =         {
          "group-id": 98000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.657992" elapsed="0.000656"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.658804" elapsed="0.000181"/>
</kw>
<var name="${iteration}">98</var>
<status status="PASS" start="2026-05-25T01:55:34.656781" elapsed="0.002242"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.659573" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.659330" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.659206" elapsed="0.000613"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.660331" level="INFO">${j} = 99</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.659962" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.661099" level="INFO">${item} =         {
          "group-id": 99000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.660513" elapsed="0.000615"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.661284" elapsed="0.000183"/>
</kw>
<var name="${iteration}">99</var>
<status status="PASS" start="2026-05-25T01:55:34.659176" elapsed="0.002328"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.661919" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.661683" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.661668" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.662708" level="INFO">${j} = 100</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.662327" elapsed="0.000407"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.663483" level="INFO">${item} =         {
          "group-id": 100000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
        ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.662891" elapsed="0.000620"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.663667" elapsed="0.000182"/>
</kw>
<var name="${iteration}">100</var>
<status status="PASS" start="2026-05-25T01:55:34.661638" elapsed="0.002247"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="PASS" start="2026-05-25T01:55:34.421787" elapsed="0.242129"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.665226" level="INFO">${final_text} = {
  "flow-node-inventory:group": [
        {
          "group-id": 1000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
   ...</msg>
<var>${final_text}</var>
<arg>SEPARATOR=</arg>
<arg>${prolog}</arg>
<arg>${endline}</arg>
<arg>@{items}</arg>
<arg>${endline}</arg>
<arg>${epilog}</arg>
<doc>Catenates the given items together and returns the resulted string.</doc>
<status status="PASS" start="2026-05-25T01:55:34.664093" elapsed="0.001162"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:34.665350" elapsed="0.000044"/>
</return>
<msg time="2026-05-25T01:55:34.665531" level="INFO">${data} = {
  "flow-node-inventory:group": [
        {
          "group-id": 1000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
   ...</msg>
<var>${data}</var>
<arg>folder=${folder}</arg>
<arg>name_prefix=post_</arg>
<arg>base_name=${base_name}</arg>
<arg>extension=${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>endline=${endline}</arg>
<arg>iterations=${iterations}</arg>
<arg>iter_start=${iter_start}</arg>
<arg>iter_j_offset=${iter_j_offset}</arg>
<doc>Read a template from folder, strip endline, make changes according to mapping, return the result.
If ${iterations} value is present, put text together from "prolog", "item" and "epilog" parts,
where additional template variable ${i} goes from 1, by one 100 times.
Template variable ${j} is calculated as ${i} incremented by offset 0 ( j = i + iter_j_offset )
used to create non uniform data in order to be able to validate UPDATE operations.
POST (as opposed to PUT) needs slightly different data, ${name_prefix} may be used to distinguish.
(Actually, it is GET who formats data differently when URI is a top-level container.)</doc>
<status status="PASS" start="2026-05-25T01:55:34.367773" elapsed="0.297786"/>
</kw>
<kw name="Resolve_Jmes_Path" owner="TemplatedRequests">
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:34.666959" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1/jmespath.expr' does not exist.</msg>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:34.666675" elapsed="0.000363">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1/jmespath.expr' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:34.667154" level="INFO">${read_jmes_file} = False</msg>
<var>${read_jmes_file}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:34.666313" elapsed="0.000866"/>
</kw>
<if>
<branch type="IF" condition="${read_jmes_file} == ${true}">
<kw name="Get File" owner="OperatingSystem">
<var>${jmes_expression}</var>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.667495" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:34.667249" elapsed="0.000302"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.668084" level="INFO">${jmes_expression} = None</msg>
<var>${jmes_expression}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:34.667780" elapsed="0.000332"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.667575" elapsed="0.000572"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.667230" elapsed="0.000939"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.670503" level="INFO">${expression} = </msg>
<var>${expression}</var>
<arg>${read_jmes_file} == ${true}</arg>
<arg>${jmes_expression}</arg>
<arg>${EMPTY}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:34.668322" elapsed="0.002207"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-05-25T01:55:34.670581" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:55:34.670734" level="INFO">${jmes_expression} = </msg>
<var>${jmes_expression}</var>
<arg>${folder}</arg>
<doc>Reads JMES path from file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/jmespath.expr if the file exists and
returns the JMES path. Empty string is returned otherwise.</doc>
<status status="PASS" start="2026-05-25T01:55:34.665936" elapsed="0.004823"/>
</kw>
<kw name="Post_To_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.672306" level="INFO">/rests/data/opendaylight-inventory:nodes/node=openflow%3A2</msg>
<arg>${uri}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:34.672035" elapsed="0.000316"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.672747" level="INFO">{
  "flow-node-inventory:group": [
        {
          "group-id": 1000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-1",
          "group-type": "group-select"
        },
        {
          "group-id": 2000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-2",
          "group-type": "group-select"
        },
        {
          "group-id": 3000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-3",
          "group-type": "group-select"
        },
        {
          "group-id": 4000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-4",
          "group-type": "group-select"
        },
        {
          "group-id": 5000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-5",
          "group-type": "group-select"
        },
        {
          "group-id": 6000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-6",
          "group-type": "group-select"
        },
        {
          "group-id": 7000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-7",
          "group-type": "group-select"
        },
        {
          "group-id": 8000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-8",
          "group-type": "group-select"
        },
        {
          "group-id": 9000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-9",
          "group-type": "group-select"
        },
        {
          "group-id": 10000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-10",
          "group-type": "group-select"
        },
        {
          "group-id": 11000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-11",
          "group-type": "group-select"
        },
        {
          "group-id": 12000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-12",
          "group-type": "group-select"
        },
        {
          "group-id": 13000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-13",
          "group-type": "group-select"
        },
        {
          "group-id": 14000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-14",
          "group-type": "group-select"
        },
        {
          "group-id": 15000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-15",
          "group-type": "group-select"
        },
        {
          "group-id": 16000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-16",
          "group-type": "group-select"
        },
        {
          "group-id": 17000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-17",
          "group-type": "group-select"
        },
        {
          "group-id": 18000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-18",
          "group-type": "group-select"
        },
        {
          "group-id": 19000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-19",
          "group-type": "group-select"
        },
        {
          "group-id": 20000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-20",
          "group-type": "group-select"
        },
        {
          "group-id": 21000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-21",
          "group-type": "group-select"
        },
        {
          "group-id": 22000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-22",
          "group-type": "group-select"
        },
        {
          "group-id": 23000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-23",
          "group-type": "group-select"
        },
        {
          "group-id": 24000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-24",
          "group-type": "group-select"
        },
        {
          "group-id": 25000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-25",
          "group-type": "group-select"
        },
        {
          "group-id": 26000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-26",
          "group-type": "group-select"
        },
        {
          "group-id": 27000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-27",
          "group-type": "group-select"
        },
        {
          "group-id": 28000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-28",
          "group-type": "group-select"
        },
        {
          "group-id": 29000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-29",
          "group-type": "group-select"
        },
        {
          "group-id": 30000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-30",
          "group-type": "group-select"
        },
        {
          "group-id": 31000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-31",
          "group-type": "group-select"
        },
        {
          "group-id": 32000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-32",
          "group-type": "group-select"
        },
        {
          "group-id": 33000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-33",
          "group-type": "group-select"
        },
        {
          "group-id": 34000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-34",
          "group-type": "group-select"
        },
        {
          "group-id": 35000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-35",
          "group-type": "group-select"
        },
        {
          "group-id": 36000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-36",
          "group-type": "group-select"
        },
        {
          "group-id": 37000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-37",
          "group-type": "group-select"
        },
        {
          "group-id": 38000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-38",
          "group-type": "group-select"
        },
        {
          "group-id": 39000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-39",
          "group-type": "group-select"
        },
        {
          "group-id": 40000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-40",
          "group-type": "group-select"
        },
        {
          "group-id": 41000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-41",
          "group-type": "group-select"
        },
        {
          "group-id": 42000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-42",
          "group-type": "group-select"
        },
        {
          "group-id": 43000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-43",
          "group-type": "group-select"
        },
        {
          "group-id": 44000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-44",
          "group-type": "group-select"
        },
        {
          "group-id": 45000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-45",
          "group-type": "group-select"
        },
        {
          "group-id": 46000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-46",
          "group-type": "group-select"
        },
        {
          "group-id": 47000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-47",
          "group-type": "group-select"
        },
        {
          "group-id": 48000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-48",
          "group-type": "group-select"
        },
        {
          "group-id": 49000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-49",
          "group-type": "group-select"
        },
        {
          "group-id": 50000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-50",
          "group-type": "group-select"
        },
        {
          "group-id": 51000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-51",
          "group-type": "group-select"
        },
        {
          "group-id": 52000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-52",
          "group-type": "group-select"
        },
        {
          "group-id": 53000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-53",
          "group-type": "group-select"
        },
        {
          "group-id": 54000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-54",
          "group-type": "group-select"
        },
        {
          "group-id": 55000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-55",
          "group-type": "group-select"
        },
        {
          "group-id": 56000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-56",
          "group-type": "group-select"
        },
        {
          "group-id": 57000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-57",
          "group-type": "group-select"
        },
        {
          "group-id": 58000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-58",
          "group-type": "group-select"
        },
        {
          "group-id": 59000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-59",
          "group-type": "group-select"
        },
        {
          "group-id": 60000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-60",
          "group-type": "group-select"
        },
        {
          "group-id": 61000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-61",
          "group-type": "group-select"
        },
        {
          "group-id": 62000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-62",
          "group-type": "group-select"
        },
        {
          "group-id": 63000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-63",
          "group-type": "group-select"
        },
        {
          "group-id": 64000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-64",
          "group-type": "group-select"
        },
        {
          "group-id": 65000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-65",
          "group-type": "group-select"
        },
        {
          "group-id": 66000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-66",
          "group-type": "group-select"
        },
        {
          "group-id": 67000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-67",
          "group-type": "group-select"
        },
        {
          "group-id": 68000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-68",
          "group-type": "group-select"
        },
        {
          "group-id": 69000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-69",
          "group-type": "group-select"
        },
        {
          "group-id": 70000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-70",
          "group-type": "group-select"
        },
        {
          "group-id": 71000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-71",
          "group-type": "group-select"
        },
        {
          "group-id": 72000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-72",
          "group-type": "group-select"
        },
        {
          "group-id": 73000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-73",
          "group-type": "group-select"
        },
        {
          "group-id": 74000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-74",
          "group-type": "group-select"
        },
        {
          "group-id": 75000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-75",
          "group-type": "group-select"
        },
        {
          "group-id": 76000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-76",
          "group-type": "group-select"
        },
        {
          "group-id": 77000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-77",
          "group-type": "group-select"
        },
        {
          "group-id": 78000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-78",
          "group-type": "group-select"
        },
        {
          "group-id": 79000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-79",
          "group-type": "group-select"
        },
        {
          "group-id": 80000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-80",
          "group-type": "group-select"
        },
        {
          "group-id": 81000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-81",
          "group-type": "group-select"
        },
        {
          "group-id": 82000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-82",
          "group-type": "group-select"
        },
        {
          "group-id": 83000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-83",
          "group-type": "group-select"
        },
        {
          "group-id": 84000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-84",
          "group-type": "group-select"
        },
        {
          "group-id": 85000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-85",
          "group-type": "group-select"
        },
        {
          "group-id": 86000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-86",
          "group-type": "group-select"
        },
        {
          "group-id": 87000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-87",
          "group-type": "group-select"
        },
        {
          "group-id": 88000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-88",
          "group-type": "group-select"
        },
        {
          "group-id": 89000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-89",
          "group-type": "group-select"
        },
        {
          "group-id": 90000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-90",
          "group-type": "group-select"
        },
        {
          "group-id": 91000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-91",
          "group-type": "group-select"
        },
        {
          "group-id": 92000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-92",
          "group-type": "group-select"
        },
        {
          "group-id": 93000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-93",
          "group-type": "group-select"
        },
        {
          "group-id": 94000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-94",
          "group-type": "group-select"
        },
        {
          "group-id": 95000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-95",
          "group-type": "group-select"
        },
        {
          "group-id": 96000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-96",
          "group-type": "group-select"
        },
        {
          "group-id": 97000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-97",
          "group-type": "group-select"
        },
        {
          "group-id": 98000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-98",
          "group-type": "group-select"
        },
        {
          "group-id": 99000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-99",
          "group-type": "group-select"
        },
        {
          "group-id": 100000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-100",
          "group-type": "group-select"
        }
  ]
}</msg>
<arg>${data}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:34.672505" elapsed="0.000745"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.673656" level="INFO">{'Content-Type': 'application/json'}</msg>
<arg>${content_type}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:34.673406" elapsed="0.000293"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.674105" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:34.673851" elapsed="0.000298"/>
</kw>
<kw name="Join_Two_Headers" owner="TemplatedRequests">
<kw name="Copy Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:34.674983" level="INFO">${accumulator} = {'Content-Type': 'application/json'}</msg>
<var>${accumulator}</var>
<arg>${first}</arg>
<doc>Returns a copy of the given dictionary.</doc>
<status status="PASS" start="2026-05-25T01:55:34.674787" elapsed="0.000222"/>
</kw>
<kw name="Get Dictionary Items" owner="Collections">
<msg time="2026-05-25T01:55:34.675352" level="INFO">${items_to_add} = []</msg>
<var>${items_to_add}</var>
<arg>${second}</arg>
<doc>Returns items of the given ``dictionary`` as a list.</doc>
<status status="PASS" start="2026-05-25T01:55:34.675178" elapsed="0.000199"/>
</kw>
<kw name="Set To Dictionary" owner="Collections">
<arg>${accumulator}</arg>
<arg>@{items_to_add}</arg>
<doc>Adds the given ``key_value_pairs`` and/or ``items`` to the ``dictionary``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.675526" elapsed="0.000190"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.676133" level="INFO">{'Content-Type': 'application/json'}</msg>
<arg>${accumulator}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:34.675869" elapsed="0.000308"/>
</kw>
<return>
<value>${accumulator}</value>
<status status="PASS" start="2026-05-25T01:55:34.676219" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:34.676372" level="INFO">${headers} = {'Content-Type': 'application/json'}</msg>
<var>${headers}</var>
<arg>first=${content_type}</arg>
<arg>second=${accept}</arg>
<doc>Take two dicts, join them, return result. Second argument values take precedence.</doc>
<status status="PASS" start="2026-05-25T01:55:34.674372" elapsed="0.002024"/>
</kw>
<if>
<branch type="IF" condition="&quot;&quot;&quot;${http_timeout}&quot;&quot;&quot; == &quot;&quot;&quot;${EMPTY}&quot;&quot;&quot;">
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:34.714510" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Content-Length': '52323', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body={
  "flow-node-inventory:group": [
        {
          "group-id": 1000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-1",
          "group-type": "group-select"
        },
        {
          "group-id": 2000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-2",
          "group-type": "group-select"
        },
        {
          "group-id": 3000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-3",
          "group-type": "group-select"
        },
        {
          "group-id": 4000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-4",
          "group-type": "group-select"
        },
        {
          "group-id": 5000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-5",
          "group-type": "group-select"
        },
        {
          "group-id": 6000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-6",
          "group-type": "group-select"
        },
        {
          "group-id": 7000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-7",
          "group-type": "group-select"
        },
        {
          "group-id": 8000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-8",
          "group-type": "group-select"
        },
        {
          "group-id": 9000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-9",
          "group-type": "group-select"
        },
        {
          "group-id": 10000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-10",
          "group-type": "group-select"
        },
        {
          "group-id": 11000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-11",
          "group-type": "group-select"
        },
        {
          "group-id": 12000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-12",
          "group-type": "group-select"
        },
        {
          "group-id": 13000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-13",
          "group-type": "group-select"
        },
        {
          "group-id": 14000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-14",
          "group-type": "group-select"
        },
        {
          "group-id": 15000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-15",
          "group-type": "group-select"
        },
        {
          "group-id": 16000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-16",
          "group-type": "group-select"
        },
        {
          "group-id": 17000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-17",
          "group-type": "group-select"
        },
        {
          "group-id": 18000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-18",
          "group-type": "group-select"
        },
        {
          "group-id": 19000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-19",
          "group-type": "group-select"
        },
        {
          "group-id": 20000,
       ... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:55:34.714726" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/flow-node-inventory:group=5000', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:34.714884" level="INFO">${response} = &lt;Response [201]&gt;</msg>
<var>${response}</var>
<arg>${session}</arg>
<arg>${uri}</arg>
<arg>data=${data}</arg>
<arg>headers=${headers}</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:34.678651" elapsed="0.036270"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.676620" elapsed="0.038365"/>
</branch>
<branch type="ELSE">
<kw name="POST On Session" owner="RequestsLibrary">
<var>${response}</var>
<arg>${session}</arg>
<arg>${uri}</arg>
<arg>data=${data}</arg>
<arg>headers=${headers}</arg>
<arg>timeout=${http_timeout}</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.715259" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:34.715022" elapsed="0.000332"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.676447" elapsed="0.038938"/>
</if>
<kw name="Check_Status_Code" owner="TemplatedRequests">
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.719982" level="INFO"/>
<arg>${response.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:34.716864" elapsed="0.003178"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.716551" elapsed="0.003559"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.716524" elapsed="0.003623"/>
</if>
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.723301" level="INFO">201</msg>
<arg>${response.status_code}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:34.720533" elapsed="0.002813"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.720225" elapsed="0.003155"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.720201" elapsed="0.003203"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.723962" level="INFO">${status_codes_type} = list</msg>
<var>${status_codes_type}</var>
<arg>type($additional_allowed_status_codes).__name__</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.723582" elapsed="0.000407"/>
</kw>
<if>
<branch type="IF" condition="&quot;${status_codes_type}&quot;!=&quot;list&quot;">
<kw name="Create List" owner="BuiltIn">
<var>${allowed_status_codes_list}</var>
<arg>${additional_allowed_status_codes}</arg>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.724326" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:34.724058" elapsed="0.000325"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.724877" level="INFO">${allowed_status_codes_list} = []</msg>
<var>${allowed_status_codes_list}</var>
<arg>${additional_allowed_status_codes}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:34.724579" elapsed="0.000324"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.724406" elapsed="0.000533"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.724040" elapsed="0.000920"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.725510" level="INFO">${status_codes_type} = list</msg>
<var>${status_codes_type}</var>
<arg>type($explicit_status_codes).__name__</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.725146" elapsed="0.000391"/>
</kw>
<if>
<branch type="IF" condition="&quot;${status_codes_type}&quot;!=&quot;list&quot;">
<kw name="Create List" owner="BuiltIn">
<var>${explicit_status_codes_list}</var>
<arg>${explicit_status_codes}</arg>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.725858" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:34.725612" elapsed="0.000302"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.726436" level="INFO">${explicit_status_codes_list} = []</msg>
<var>${explicit_status_codes_list}</var>
<arg>${explicit_status_codes}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:34.726136" elapsed="0.000326"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.725937" elapsed="0.000560"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.725594" elapsed="0.000924"/>
</if>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>"""${explicit_status_codes_list}""" != """${NO_STATUS_CODES}"""</arg>
<arg>Collections.List_Should_Contain_Value</arg>
<arg>${explicit_status_codes_list}</arg>
<arg>${response.status_code}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:34.726668" elapsed="0.000343"/>
</kw>
<kw name="Combine Lists" owner="Collections">
<msg time="2026-05-25T01:55:34.727466" level="INFO">${final_allowd_list} = [200, 201, 204]</msg>
<var>${final_allowd_list}</var>
<arg>${ALLOWED_STATUS_CODES}</arg>
<arg>${allowed_status_codes_list}</arg>
<doc>Combines the given ``lists`` together and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.727192" elapsed="0.000300"/>
</kw>
<kw name="List Should Contain Value" owner="Collections">
<arg>${final_allowd_list}</arg>
<arg>${response.status_code}</arg>
<doc>Fails if the ``value`` is not found from ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.727645" elapsed="0.002182"/>
</kw>
<arg>${response}</arg>
<arg>additional_allowed_status_codes=${additional_allowed_status_codes}</arg>
<arg>explicit_status_codes=${explicit_status_codes}</arg>
<doc>Log response text, check status_code is one of allowed ones. In cases where this keyword is
called in a WUKS it could end up logging tons of data and it may be desired to skip the logging by passing
log_response=False, but by default it remains True.</doc>
<status status="PASS" start="2026-05-25T01:55:34.715924" elapsed="0.013966"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-05-25T01:55:34.730079" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:34.729961" elapsed="0.000180"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.729943" elapsed="0.000225"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<msg time="2026-05-25T01:55:34.732561" level="INFO">${text_normalized} = </msg>
<var>${text_normalized}</var>
<arg>${response.text}</arg>
<arg>jmes_path=${jmes_path}</arg>
<doc>Attempt to return sorted indented JSON string.</doc>
<status status="PASS" start="2026-05-25T01:55:34.730319" elapsed="0.002269"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="PASS" start="2026-05-25T01:55:34.732636" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:55:34.732788" level="INFO">${response_text} = </msg>
<var>${response_text}</var>
<arg>uri=${uri}</arg>
<arg>data=${data}</arg>
<arg>content_type=${content_type}</arg>
<arg>accept=${accept}</arg>
<arg>session=${session}</arg>
<arg>jmes_path=${jmes_expression}</arg>
<arg>normalize_json=${normalize_json}</arg>
<arg>additional_allowed_status_codes=${additional_allowed_status_codes}</arg>
<arg>explicit_status_codes=${explicit_status_codes}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>POST data to given URI, check status code and return response text.
${content_type} and ${accept} are mandatory Python objects with headers to use.
If ${normalize_json}, normalize text before returning.</doc>
<status status="PASS" start="2026-05-25T01:55:34.671102" elapsed="0.061711"/>
</kw>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-05-25T01:55:34.732916" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:55:34.733084" level="INFO">${response_text} = </msg>
<var>${response_text}</var>
<arg>folder=${folder}</arg>
<arg>base_name=data</arg>
<arg>extension=json</arg>
<arg>accept=${ACCEPT_EMPTY}</arg>
<arg>content_type=${HEADERS_YANG_JSON}</arg>
<arg>mapping=${mapping}</arg>
<arg>session=${session}</arg>
<arg>normalize_json=True</arg>
<arg>endline=${\n}</arg>
<arg>iterations=${iterations}</arg>
<arg>iter_start=${iter_start}</arg>
<arg>additional_allowed_status_codes=${additional_allowed_status_codes}</arg>
<arg>explicit_status_codes=${explicit_status_codes}</arg>
<arg>http_timeout=${http_timeout}</arg>
<arg>iter_j_offset=${iter_j_offset}</arg>
<doc>Resolve URI and data from folder, call Post_To_Uri, return response text.</doc>
<status status="PASS" start="2026-05-25T01:55:34.283805" elapsed="0.449306"/>
</kw>
<if>
<branch type="IF" condition="${verify}">
<kw name="Verify_Response_As_Json_Templated" owner="TemplatedRequests">
<arg>response=${response_text}</arg>
<arg>folder=${folder}</arg>
<arg>base_name=response</arg>
<arg>mapping=${mapping}</arg>
<arg>iter_j_offset=${iter_j_offset}</arg>
<doc>Resolve expected JSON data, should be equal to provided ${response}.
JSON normalization is used, endlines enabled for readability.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.733455" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:34.733217" elapsed="0.000306"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.733200" elapsed="0.000347"/>
</if>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-05-25T01:55:34.733579" elapsed="0.000026"/>
</return>
<arg>folder=${VAR_DIR}/add-group-1</arg>
<arg>mapping=${mapping}</arg>
<arg>session=session</arg>
<arg>iterations=${iter}</arg>
<doc>Add arguments sensible for JSON data, return Post_Templated response text.
Optionally, verification against response.json (no iteration) is called.
Only subset of JSON data is verified and returned if JMES path is specified in
file ${folder}/jmespath.expr.
Response status code must be one of values from ${explicit_status_codes} if specified or one of set
created from all positive HTTP status codes together with ${additional_allowed_status_codes}.</doc>
<status status="PASS" start="2026-05-25T01:55:34.281313" elapsed="0.452390"/>
</kw>
<var name="${switch}">2</var>
<status status="PASS" start="2026-05-25T01:55:34.269898" elapsed="0.463851"/>
</iter>
<iter>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.734443" level="INFO">&amp;{mapping} = { NODE=openflow:3 }</msg>
<var>&amp;{mapping}</var>
<arg>NODE=openflow:${switch}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.733988" elapsed="0.000483"/>
</kw>
<kw name="Post_As_Json_Templated" owner="TemplatedRequests">
<kw name="Post_Templated" owner="TemplatedRequests">
<kw name="Resolve_Text_From_Template_Folder" owner="TemplatedRequests">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.775787" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/location.uri</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:34.775413" elapsed="0.000402"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:34.776548" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1.titanium/location.uri' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:34.776332" elapsed="0.000287">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1.titanium/location.uri' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:34.776711" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:34.775980" elapsed="0.000755"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.777296" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/location.uri</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:34.776899" elapsed="0.000425"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:34.777619" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1/location.uri"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1/location.uri&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:34.777771" level="INFO">${template} = /rests/data/opendaylight-inventory:nodes/node=$NODE
</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:34.777484" elapsed="0.000313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.778260" level="INFO">/rests/data/opendaylight-inventory:nodes/node=$NODE
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:34.777989" elapsed="0.000316"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.779287" level="INFO">mapping: {'NODE': 'openflow:3'}</msg>
<arg>mapping: ${mapping}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:34.779011" elapsed="0.000321"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.779759" level="INFO">${encoded_mapping} = {}</msg>
<var>${encoded_mapping}</var>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.779492" elapsed="0.000293"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Convert To String" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.780505" level="INFO">${value} = openflow:3</msg>
<var>${value}</var>
<arg>${value}</arg>
<doc>Converts the given item to a Unicode string.</doc>
<status status="PASS" start="2026-05-25T01:55:34.780154" elapsed="0.000377"/>
</kw>
<kw name="Percent_Encode_String" owner="TemplatedRequests">
<kw name="Replace String Using Regexp" owner="String">
<msg time="2026-05-25T01:55:34.781526" level="INFO">${encoded} = openflow%3A3</msg>
<var>${encoded}</var>
<arg>${value}</arg>
<arg>:</arg>
<arg>%3A</arg>
<doc>Replaces ``pattern`` in the given ``string`` with ``replace_with``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.781054" elapsed="0.000498"/>
</kw>
<return>
<value>${encoded}</value>
<status status="PASS" start="2026-05-25T01:55:34.781636" elapsed="0.000032"/>
</return>
<msg time="2026-05-25T01:55:34.781792" level="INFO">${encoded_value} = openflow%3A3</msg>
<var>${encoded_value}</var>
<arg>${value}</arg>
<doc>Percent encodes reserved characters in the given string so it can be used as part of url.</doc>
<status status="PASS" start="2026-05-25T01:55:34.780715" elapsed="0.001101"/>
</kw>
<kw name="Set To Dictionary" owner="Collections">
<arg>${encoded_mapping}</arg>
<arg>${key}</arg>
<arg>${encoded_value}</arg>
<doc>Adds the given ``key_value_pairs`` and/or ``items`` to the ``dictionary``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.782036" elapsed="0.000314"/>
</kw>
<var name="${key}">NODE</var>
<var name="${value}">openflow:3</var>
<status status="PASS" start="2026-05-25T01:55:34.780005" elapsed="0.002388"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="PASS" start="2026-05-25T01:55:34.779837" elapsed="0.002591"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-05-25T01:55:34.782472" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:55:34.782629" level="INFO">${mapping_to_use} = {'NODE': 'openflow%3A3'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-05-25T01:55:34.778674" elapsed="0.003980"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.778383" elapsed="0.004303"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.782859" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:34.782711" elapsed="0.000203"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.778362" elapsed="0.004573"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.783623" level="INFO">${final_text} = /rests/data/opendaylight-inventory:nodes/node=openflow%3A3</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.783090" elapsed="0.000560"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:34.783700" elapsed="0.000028"/>
</return>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:34.774787" elapsed="0.009036"/>
</kw>
<msg time="2026-05-25T01:55:34.783878" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>not "${iterations}"</arg>
<arg>Resolve_Text_From_Template_File</arg>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:34.762705" elapsed="0.021220"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${prolog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.prolog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.797739" elapsed="0.000039"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${epilog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.epilog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.810944" elapsed="0.000027"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${item_template}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${base_name}.item.${extension}</arg>
<arg>mapping=${mapping}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.822650" elapsed="0.000026"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.822844" elapsed="0.000021"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<var>${separator}</var>
<arg>'${extension}' != 'json'</arg>
<arg>${endline}</arg>
<arg>,${endline}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.823018" elapsed="0.000020"/>
</kw>
<for flavor="IN RANGE">
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.823395" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:34.823250" elapsed="0.000201"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:34.823236" elapsed="0.000238"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.823615" elapsed="0.000020"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.823819" elapsed="0.000020"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.823987" elapsed="0.000020"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-05-25T01:55:34.823207" elapsed="0.000833"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-05-25T01:55:34.823106" elapsed="0.000973"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<var>${final_text}</var>
<arg>SEPARATOR=</arg>
<arg>${prolog}</arg>
<arg>${endline}</arg>
<arg>@{items}</arg>
<arg>${endline}</arg>
<arg>${epilog}</arg>
<doc>Catenates the given items together and returns the resulted string.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.824229" elapsed="0.000021"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-05-25T01:55:34.824305" elapsed="0.000015"/>
</return>
<msg time="2026-05-25T01:55:34.824421" level="INFO">${uri} = /rests/data/opendaylight-inventory:nodes/node=openflow%3A3</msg>
<var>${uri}</var>
<arg>folder=${folder}</arg>
<arg>base_name=location</arg>
<arg>extension=uri</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=True</arg>
<doc>Read a template from folder, strip endline, make changes according to mapping, return the result.
If ${iterations} value is present, put text together from "prolog", "item" and "epilog" parts,
where additional template variable ${i} goes from 1, by one 100 times.
Template variable ${j} is calculated as ${i} incremented by offset 0 ( j = i + iter_j_offset )
used to create non uniform data in order to be able to validate UPDATE operations.
POST (as opposed to PUT) needs slightly different data, ${name_prefix} may be used to distinguish.
(Actually, it is GET who formats data differently when URI is a top-level container.)</doc>
<status status="PASS" start="2026-05-25T01:55:34.758591" elapsed="0.065856"/>
</kw>
<kw name="Resolve_Text_From_Template_Folder" owner="TemplatedRequests">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>not "${iterations}"</arg>
<arg>Resolve_Text_From_Template_File</arg>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:34.834857" elapsed="0.000353"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.847891" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/post_data.prolog.json</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:34.847518" elapsed="0.000401"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:34.848642" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1.titanium/post_data.prolog.json' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:34.848434" elapsed="0.000272">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1.titanium/post_data.prolog.json' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:34.848799" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:34.848098" elapsed="0.000725"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.849387" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/post_data.prolog.json</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:34.848988" elapsed="0.000427"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:34.849734" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1/post_data.prolog.json"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1/post_data.prolog.json&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:34.849861" level="INFO">${template} = {
  "flow-node-inventory:group": [
</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:34.849575" elapsed="0.000311"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.850305" level="INFO">{
  "flow-node-inventory:group": [
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:34.850044" elapsed="0.000306"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:34.850701" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:34.850417" elapsed="0.000341"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.851237" level="INFO">${mapping_to_use} = {'NODE': 'openflow:3'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:34.850927" elapsed="0.000335"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.850783" elapsed="0.000515"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.850398" elapsed="0.000921"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.851885" level="INFO">${final_text} = {
  "flow-node-inventory:group": [</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.851464" elapsed="0.000448"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:34.851961" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:34.852127" level="INFO">${prolog} = {
  "flow-node-inventory:group": [</msg>
<var>${prolog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.prolog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:34.846896" elapsed="0.005257"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.865157" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/post_data.epilog.json</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:34.864768" elapsed="0.000417"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:34.865909" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1.titanium/post_data.epilog.json' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:34.865704" elapsed="0.000267">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1.titanium/post_data.epilog.json' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:34.866079" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:34.865352" elapsed="0.000754"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.866655" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/post_data.epilog.json</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:34.866273" elapsed="0.000409"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:34.866974" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1/post_data.epilog.json"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1/post_data.epilog.json&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:34.867111" level="INFO">${template} =   ]
}
</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:34.866843" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.867534" level="INFO">  ]
}
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:34.867293" elapsed="0.000289"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:34.867932" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:34.867649" elapsed="0.000341"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.868475" level="INFO">${mapping_to_use} = {'NODE': 'openflow:3'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:34.868176" elapsed="0.000324"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.868014" elapsed="0.000522"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.867631" elapsed="0.000926"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.869133" level="INFO">${final_text} =   ]
}</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.868701" elapsed="0.000459"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:34.869209" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:34.869360" level="INFO">${epilog} =   ]
}</msg>
<var>${epilog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.epilog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:34.864147" elapsed="0.005238"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.882202" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/data.item.json</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:34.881815" elapsed="0.000415"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:34.882927" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1.titanium/data.item.json' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:34.882725" elapsed="0.000269">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1.titanium/data.item.json' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:34.883104" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:34.882393" elapsed="0.000737"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.883680" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/data.item.json</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:34.883297" elapsed="0.000409"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:34.883997" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1/data.item.json"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1/data.item.json&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:34.884168" level="INFO">${template} =         {
          "group-id": ${i}000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
       ...</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:34.883866" elapsed="0.000329"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.884592" level="INFO">        {
          "group-id": ${i}000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-${i}",
          "group-type": "group-select"
        }
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:34.884351" elapsed="0.000288"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:34.884989" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:34.884706" elapsed="0.000341"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.885554" level="INFO">${mapping_to_use} = {'NODE': 'openflow:3'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:34.885235" elapsed="0.000350"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.885088" elapsed="0.000534"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.884687" elapsed="0.000956"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.886373" level="INFO">${final_text} =         {
          "group-id": ${i}000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
       ...</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.885787" elapsed="0.000615"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:34.886451" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:34.886610" level="INFO">${item_template} =         {
          "group-id": ${i}000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
       ...</msg>
<var>${item_template}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${base_name}.item.${extension}</arg>
<arg>mapping=${mapping}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:34.881263" elapsed="0.005373"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.887035" level="INFO">${items} = []</msg>
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:55:34.886798" elapsed="0.000263"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.887595" level="INFO">${separator} = ,
</msg>
<var>${separator}</var>
<arg>'${extension}' != 'json'</arg>
<arg>${endline}</arg>
<arg>,${endline}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:34.887236" elapsed="0.000385"/>
</kw>
<for flavor="IN RANGE">
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:34.888250" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:34.887999" elapsed="0.000308"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.887985" elapsed="0.000346"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.888817" level="INFO">${j} = 1</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.888471" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.889770" level="INFO">${item} =         {
          "group-id": 1000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
          ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.888997" elapsed="0.000802"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.889958" elapsed="0.000210"/>
</kw>
<var name="${iteration}">1</var>
<status status="PASS" start="2026-05-25T01:55:34.887955" elapsed="0.002252"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.890621" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.890385" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.890371" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.891400" level="INFO">${j} = 2</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.891008" elapsed="0.000418"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.892186" level="INFO">${item} =         {
          "group-id": 2000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
          ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.891582" elapsed="0.000633"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.892375" elapsed="0.000184"/>
</kw>
<var name="${iteration}">2</var>
<status status="PASS" start="2026-05-25T01:55:34.890341" elapsed="0.002255"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.893055" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.892820" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.892806" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.893827" level="INFO">${j} = 3</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.893477" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.894598" level="INFO">${item} =         {
          "group-id": 3000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
          ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.894007" elapsed="0.000619"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.894781" elapsed="0.000182"/>
</kw>
<var name="${iteration}">3</var>
<status status="PASS" start="2026-05-25T01:55:34.892776" elapsed="0.002225"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.895431" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.895196" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.895182" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.896188" level="INFO">${j} = 4</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.895824" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.896943" level="INFO">${item} =         {
          "group-id": 4000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
          ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.896370" elapsed="0.000601"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.897141" elapsed="0.000183"/>
</kw>
<var name="${iteration}">4</var>
<status status="PASS" start="2026-05-25T01:55:34.895152" elapsed="0.002210"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.897805" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.897571" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.897557" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.898558" level="INFO">${j} = 5</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.898208" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.899323" level="INFO">${item} =         {
          "group-id": 5000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
          ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.898737" elapsed="0.000615"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.899506" elapsed="0.000185"/>
</kw>
<var name="${iteration}">5</var>
<status status="PASS" start="2026-05-25T01:55:34.897527" elapsed="0.002201"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.900156" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.899907" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.899893" elapsed="0.000507"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.900889" level="INFO">${j} = 6</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.900542" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.901670" level="INFO">${item} =         {
          "group-id": 6000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
          ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.901081" elapsed="0.000617"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.901849" elapsed="0.000181"/>
</kw>
<var name="${iteration}">6</var>
<status status="PASS" start="2026-05-25T01:55:34.899864" elapsed="0.002218"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.902499" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.902264" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.902249" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.903254" level="INFO">${j} = 7</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.902885" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.904003" level="INFO">${item} =         {
          "group-id": 7000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
          ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.903435" elapsed="0.000596"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.904235" elapsed="0.000182"/>
</kw>
<var name="${iteration}">7</var>
<status status="PASS" start="2026-05-25T01:55:34.902219" elapsed="0.002235"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.904866" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.904632" elapsed="0.000467"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.904617" elapsed="0.000507"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.905631" level="INFO">${j} = 8</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.905267" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.906528" level="INFO">${item} =         {
          "group-id": 8000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
          ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.905813" elapsed="0.000744"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.906713" elapsed="0.000181"/>
</kw>
<var name="${iteration}">8</var>
<status status="PASS" start="2026-05-25T01:55:34.904588" elapsed="0.002343"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.907359" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.907125" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.907110" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.908106" level="INFO">${j} = 9</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.907745" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.908866" level="INFO">${item} =         {
          "group-id": 9000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
          ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.908288" elapsed="0.000605"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.909047" elapsed="0.000198"/>
</kw>
<var name="${iteration}">9</var>
<status status="PASS" start="2026-05-25T01:55:34.907079" elapsed="0.002204"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.909723" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.909488" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.909471" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.910476" level="INFO">${j} = 10</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.910128" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.911240" level="INFO">${item} =         {
          "group-id": 10000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.910656" elapsed="0.000613"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.911422" elapsed="0.000181"/>
</kw>
<var name="${iteration}">10</var>
<status status="PASS" start="2026-05-25T01:55:34.909440" elapsed="0.002199"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.912049" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.911816" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.911801" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.912800" level="INFO">${j} = 11</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.912452" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.913594" level="INFO">${item} =         {
          "group-id": 11000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.912979" elapsed="0.000643"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.913776" elapsed="0.000181"/>
</kw>
<var name="${iteration}">11</var>
<status status="PASS" start="2026-05-25T01:55:34.911773" elapsed="0.002221"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.914424" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.914190" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.914176" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.915171" level="INFO">${j} = 12</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.914808" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.915963" level="INFO">${item} =         {
          "group-id": 12000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.915386" elapsed="0.000606"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.916164" elapsed="0.000183"/>
</kw>
<var name="${iteration}">12</var>
<status status="PASS" start="2026-05-25T01:55:34.914146" elapsed="0.002239"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.916797" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.916564" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.916549" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.917595" level="INFO">${j} = 13</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.917200" elapsed="0.000422"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.918373" level="INFO">${item} =         {
          "group-id": 13000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.917779" elapsed="0.000622"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.918558" elapsed="0.000180"/>
</kw>
<var name="${iteration}">13</var>
<status status="PASS" start="2026-05-25T01:55:34.916520" elapsed="0.002256"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.919209" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.918959" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.918944" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.919951" level="INFO">${j} = 14</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.919605" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.920717" level="INFO">${item} =         {
          "group-id": 14000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.920145" elapsed="0.000600"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.920899" elapsed="0.000196"/>
</kw>
<var name="${iteration}">14</var>
<status status="PASS" start="2026-05-25T01:55:34.918915" elapsed="0.002217"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.921574" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.921335" elapsed="0.000468"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.921320" elapsed="0.000507"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.922455" level="INFO">${j} = 15</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.921970" elapsed="0.000511"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.923230" level="INFO">${item} =         {
          "group-id": 15000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.922637" elapsed="0.000625"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.923417" elapsed="0.000181"/>
</kw>
<var name="${iteration}">15</var>
<status status="PASS" start="2026-05-25T01:55:34.921289" elapsed="0.002375"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.924098" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.923844" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.923830" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.924962" level="INFO">${j} = 16</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.924487" elapsed="0.000502"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.925758" level="INFO">${item} =         {
          "group-id": 16000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.925160" elapsed="0.000626"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.925940" elapsed="0.000201"/>
</kw>
<var name="${iteration}">16</var>
<status status="PASS" start="2026-05-25T01:55:34.923801" elapsed="0.002378"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.926591" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.926357" elapsed="0.000486"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.926343" elapsed="0.000526"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.927412" level="INFO">${j} = 17</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.927012" elapsed="0.000426"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.928187" level="INFO">${item} =         {
          "group-id": 17000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.927593" elapsed="0.000623"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.928371" elapsed="0.000183"/>
</kw>
<var name="${iteration}">17</var>
<status status="PASS" start="2026-05-25T01:55:34.926314" elapsed="0.002277"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.929006" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.928770" elapsed="0.000486"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.928755" elapsed="0.000527"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.929782" level="INFO">${j} = 18</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.929432" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.930557" level="INFO">${item} =         {
          "group-id": 18000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.929966" elapsed="0.000622"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.930749" elapsed="0.000181"/>
</kw>
<var name="${iteration}">18</var>
<status status="PASS" start="2026-05-25T01:55:34.928726" elapsed="0.002241"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.931395" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.931161" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.931147" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.932145" level="INFO">${j} = 19</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.931781" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.932896" level="INFO">${item} =         {
          "group-id": 19000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.932325" elapsed="0.000599"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.933092" elapsed="0.000228"/>
</kw>
<var name="${iteration}">19</var>
<status status="PASS" start="2026-05-25T01:55:34.931117" elapsed="0.002242"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.933771" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.933537" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.933522" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.934518" level="INFO">${j} = 20</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.934172" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.935285" level="INFO">${item} =         {
          "group-id": 20000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.934697" elapsed="0.000616"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.935466" elapsed="0.000181"/>
</kw>
<var name="${iteration}">20</var>
<status status="PASS" start="2026-05-25T01:55:34.933493" elapsed="0.002191"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.936117" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.935863" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.935847" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.936859" level="INFO">${j} = 21</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.936507" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.937646" level="INFO">${item} =         {
          "group-id": 21000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.937037" elapsed="0.000637"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.937827" elapsed="0.000221"/>
</kw>
<var name="${iteration}">21</var>
<status status="PASS" start="2026-05-25T01:55:34.935817" elapsed="0.002291"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.938572" elapsed="0.001117"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.938335" elapsed="0.001396"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.938320" elapsed="0.001435"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.940268" level="INFO">${j} = 22</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.939898" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.941038" level="INFO">${item} =         {
          "group-id": 22000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.940452" elapsed="0.000629"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.941259" elapsed="0.000188"/>
</kw>
<var name="${iteration}">22</var>
<status status="PASS" start="2026-05-25T01:55:34.938283" elapsed="0.003203"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.941902" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.941666" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.941651" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.942666" level="INFO">${j} = 23</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.942312" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.943440" level="INFO">${item} =         {
          "group-id": 23000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.942848" elapsed="0.000620"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.943629" elapsed="0.000182"/>
</kw>
<var name="${iteration}">23</var>
<status status="PASS" start="2026-05-25T01:55:34.941621" elapsed="0.002228"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.944278" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.944026" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.944011" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.945011" level="INFO">${j} = 24</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.944665" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.945813" level="INFO">${item} =         {
          "group-id": 24000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.945233" elapsed="0.000608"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.945996" elapsed="0.000200"/>
</kw>
<var name="${iteration}">24</var>
<status status="PASS" start="2026-05-25T01:55:34.943982" elapsed="0.002252"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.946650" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.946411" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.946396" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.947400" level="INFO">${j} = 25</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.947035" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.948169" level="INFO">${item} =         {
          "group-id": 25000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.947581" elapsed="0.000623"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.948402" elapsed="0.000233"/>
</kw>
<var name="${iteration}">25</var>
<status status="PASS" start="2026-05-25T01:55:34.946367" elapsed="0.002317"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.949153" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.948889" elapsed="0.000493"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.948874" elapsed="0.000532"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.949897" level="INFO">${j} = 26</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.949547" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.950667" level="INFO">${item} =         {
          "group-id": 26000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.950094" elapsed="0.000639"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.950892" elapsed="0.000199"/>
</kw>
<var name="${iteration}">26</var>
<status status="PASS" start="2026-05-25T01:55:34.948842" elapsed="0.002288"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.951544" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.951308" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.951293" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.952298" level="INFO">${j} = 27</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.951931" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.953053" level="INFO">${item} =         {
          "group-id": 27000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.952482" elapsed="0.000614"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.953283" elapsed="0.000185"/>
</kw>
<var name="${iteration}">27</var>
<status status="PASS" start="2026-05-25T01:55:34.951264" elapsed="0.002242"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.953917" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.953683" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.953668" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.954671" level="INFO">${j} = 28</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.954323" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.955444" level="INFO">${item} =         {
          "group-id": 28000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.954852" elapsed="0.000620"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.955628" elapsed="0.000180"/>
</kw>
<var name="${iteration}">28</var>
<status status="PASS" start="2026-05-25T01:55:34.953639" elapsed="0.002206"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.956274" elapsed="0.000305"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.956022" elapsed="0.000597"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.956008" elapsed="0.000636"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.957235" level="INFO">${j} = 29</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.956788" elapsed="0.000475"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.958080" level="INFO">${item} =         {
          "group-id": 29000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.957423" elapsed="0.000689"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.958301" elapsed="0.000239"/>
</kw>
<var name="${iteration}">29</var>
<status status="PASS" start="2026-05-25T01:55:34.955978" elapsed="0.002613"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.959062" elapsed="0.000248"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.958821" elapsed="0.000537"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.958803" elapsed="0.000586"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.959993" level="INFO">${j} = 30</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.959587" elapsed="0.000434"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.960778" level="INFO">${item} =         {
          "group-id": 30000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.960196" elapsed="0.000614"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.960973" elapsed="0.000221"/>
</kw>
<var name="${iteration}">30</var>
<status status="PASS" start="2026-05-25T01:55:34.958764" elapsed="0.002473"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.961656" elapsed="0.000192"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.961418" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.961403" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.962426" level="INFO">${j} = 31</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.962055" elapsed="0.000432"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.963262" level="INFO">${item} =         {
          "group-id": 31000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.962650" elapsed="0.000640"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.963450" elapsed="0.000185"/>
</kw>
<var name="${iteration}">31</var>
<status status="PASS" start="2026-05-25T01:55:34.961372" elapsed="0.002302"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.964130" elapsed="0.000192"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.963875" elapsed="0.000487"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.963860" elapsed="0.000526"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.964895" level="INFO">${j} = 32</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.964529" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.965700" level="INFO">${item} =         {
          "group-id": 32000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.965108" elapsed="0.000620"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.965886" elapsed="0.000197"/>
</kw>
<var name="${iteration}">32</var>
<status status="PASS" start="2026-05-25T01:55:34.963817" elapsed="0.002312"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.966541" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.966308" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.966293" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.967301" level="INFO">${j} = 33</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.966931" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.968057" level="INFO">${item} =         {
          "group-id": 33000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.967483" elapsed="0.000617"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.968256" elapsed="0.000182"/>
</kw>
<var name="${iteration}">33</var>
<status status="PASS" start="2026-05-25T01:55:34.966264" elapsed="0.002212"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.968892" elapsed="0.000233"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.968659" elapsed="0.000508"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.968644" elapsed="0.000549"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.969700" level="INFO">${j} = 34</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.969338" elapsed="0.000388"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.970490" level="INFO">${item} =         {
          "group-id": 34000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.969894" elapsed="0.000630"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.970680" elapsed="0.000183"/>
</kw>
<var name="${iteration}">34</var>
<status status="PASS" start="2026-05-25T01:55:34.968615" elapsed="0.002285"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.971330" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.971094" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.971063" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.972092" level="INFO">${j} = 35</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.971723" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.972847" level="INFO">${item} =         {
          "group-id": 35000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.972274" elapsed="0.000601"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.973030" elapsed="0.000252"/>
</kw>
<var name="${iteration}">35</var>
<status status="PASS" start="2026-05-25T01:55:34.971034" elapsed="0.002286"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.973888" elapsed="0.000209"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.973499" elapsed="0.000646"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.973485" elapsed="0.000687"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.974678" level="INFO">${j} = 36</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.974320" elapsed="0.000387"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.975498" level="INFO">${item} =         {
          "group-id": 36000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.974873" elapsed="0.000654"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.975684" elapsed="0.000185"/>
</kw>
<var name="${iteration}">36</var>
<status status="PASS" start="2026-05-25T01:55:34.973455" elapsed="0.002451"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.976337" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.976101" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.976084" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.977107" level="INFO">${j} = 37</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.976724" elapsed="0.000411"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.977873" level="INFO">${item} =         {
          "group-id": 37000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.977293" elapsed="0.000608"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.978056" elapsed="0.000200"/>
</kw>
<var name="${iteration}">37</var>
<status status="PASS" start="2026-05-25T01:55:34.976040" elapsed="0.002254"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.978705" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.978473" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.978458" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.979456" level="INFO">${j} = 38</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.979106" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.980228" level="INFO">${item} =         {
          "group-id": 38000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.979637" elapsed="0.000619"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.980411" elapsed="0.000182"/>
</kw>
<var name="${iteration}">38</var>
<status status="PASS" start="2026-05-25T01:55:34.978429" elapsed="0.002201"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.981089" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.980810" elapsed="0.000504"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.980796" elapsed="0.000542"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.981829" level="INFO">${j} = 39</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.981482" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.982600" level="INFO">${item} =         {
          "group-id": 39000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.982007" elapsed="0.000621"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.982782" elapsed="0.000180"/>
</kw>
<var name="${iteration}">39</var>
<status status="PASS" start="2026-05-25T01:55:34.980767" elapsed="0.002232"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.983432" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.983198" elapsed="0.000462"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.983183" elapsed="0.000502"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.984192" level="INFO">${j} = 40</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.983828" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.985016" level="INFO">${item} =         {
          "group-id": 40000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.984376" elapsed="0.000669"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.985259" elapsed="0.000201"/>
</kw>
<var name="${iteration}">40</var>
<status status="PASS" start="2026-05-25T01:55:34.983153" elapsed="0.002346"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.985914" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.985678" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.985663" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.986673" level="INFO">${j} = 41</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.986322" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.987447" level="INFO">${item} =         {
          "group-id": 41000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.986854" elapsed="0.000621"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.987636" elapsed="0.000182"/>
</kw>
<var name="${iteration}">41</var>
<status status="PASS" start="2026-05-25T01:55:34.985634" elapsed="0.002221"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.988283" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.988032" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.988018" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.989043" level="INFO">${j} = 42</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.988668" elapsed="0.000420"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.989821" level="INFO">${item} =         {
          "group-id": 42000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.989244" elapsed="0.000605"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.990002" elapsed="0.000199"/>
</kw>
<var name="${iteration}">42</var>
<status status="PASS" start="2026-05-25T01:55:34.987989" elapsed="0.002250"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.990774" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.990528" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.990403" elapsed="0.000620"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.991533" level="INFO">${j} = 43</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.991182" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.992304" level="INFO">${item} =         {
          "group-id": 43000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.991713" elapsed="0.000619"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.992487" elapsed="0.000182"/>
</kw>
<var name="${iteration}">43</var>
<status status="PASS" start="2026-05-25T01:55:34.990373" elapsed="0.002333"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.993165" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.992885" elapsed="0.000505"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.992870" elapsed="0.000545"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.993907" level="INFO">${j} = 44</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.993557" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.994676" level="INFO">${item} =         {
          "group-id": 44000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.994102" elapsed="0.000602"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.994859" elapsed="0.000181"/>
</kw>
<var name="${iteration}">44</var>
<status status="PASS" start="2026-05-25T01:55:34.992840" elapsed="0.002253"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.995510" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.995275" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.995260" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.996260" level="INFO">${j} = 45</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.995895" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.997090" level="INFO">${item} =         {
          "group-id": 45000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.996480" elapsed="0.000640"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.997279" elapsed="0.000183"/>
</kw>
<var name="${iteration}">45</var>
<status status="PASS" start="2026-05-25T01:55:34.995230" elapsed="0.002270"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.997910" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:34.997678" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.997663" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.998658" level="INFO">${j} = 46</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.998312" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:34.999427" level="INFO">${item} =         {
          "group-id": 46000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:34.998838" elapsed="0.000617"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:34.999610" elapsed="0.000180"/>
</kw>
<var name="${iteration}">46</var>
<status status="PASS" start="2026-05-25T01:55:34.997634" elapsed="0.002194"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.000256" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.000005" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:34.999991" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.001002" level="INFO">${j} = 47</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.000644" elapsed="0.000385"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.001786" level="INFO">${item} =         {
          "group-id": 47000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.001210" elapsed="0.000604"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.001968" elapsed="0.000202"/>
</kw>
<var name="${iteration}">47</var>
<status status="PASS" start="2026-05-25T01:55:34.999962" elapsed="0.002246"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.002619" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.002387" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.002372" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.003375" level="INFO">${j} = 48</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.003005" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.004159" level="INFO">${item} =         {
          "group-id": 48000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.003560" elapsed="0.000628"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.004344" elapsed="0.000181"/>
</kw>
<var name="${iteration}">48</var>
<status status="PASS" start="2026-05-25T01:55:35.002342" elapsed="0.002221"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.005005" elapsed="0.000207"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.004744" elapsed="0.000507"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.004728" elapsed="0.000548"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.005765" level="INFO">${j} = 49</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.005419" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.006534" level="INFO">${item} =         {
          "group-id": 49000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.005944" elapsed="0.000621"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.006719" elapsed="0.000180"/>
</kw>
<var name="${iteration}">49</var>
<status status="PASS" start="2026-05-25T01:55:35.004698" elapsed="0.002239"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.007487" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.007243" elapsed="0.000501"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.007118" elapsed="0.000654"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.008288" level="INFO">${j} = 50</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.007917" elapsed="0.000398"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.009081" level="INFO">${item} =         {
          "group-id": 50000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.008470" elapsed="0.000641"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.009269" elapsed="0.000182"/>
</kw>
<var name="${iteration}">50</var>
<status status="PASS" start="2026-05-25T01:55:35.007087" elapsed="0.002402"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.009904" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.009670" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.009655" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.010654" level="INFO">${j} = 51</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.010308" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.011478" level="INFO">${item} =         {
          "group-id": 51000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.010835" elapsed="0.000671"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.011663" elapsed="0.000181"/>
</kw>
<var name="${iteration}">51</var>
<status status="PASS" start="2026-05-25T01:55:35.009626" elapsed="0.002256"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.012329" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.012090" elapsed="0.000463"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.012058" elapsed="0.000520"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.013116" level="INFO">${j} = 52</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.012721" elapsed="0.000423"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.013879" level="INFO">${item} =         {
          "group-id": 52000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.013301" elapsed="0.000606"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.014087" elapsed="0.000187"/>
</kw>
<var name="${iteration}">52</var>
<status status="PASS" start="2026-05-25T01:55:35.012027" elapsed="0.002285"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.014728" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.014492" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.014477" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.015500" level="INFO">${j} = 53</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.015144" elapsed="0.000383"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.016290" level="INFO">${item} =         {
          "group-id": 53000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.015682" elapsed="0.000637"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.016474" elapsed="0.000184"/>
</kw>
<var name="${iteration}">53</var>
<status status="PASS" start="2026-05-25T01:55:35.014447" elapsed="0.002249"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.017168" elapsed="0.000191"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.016903" elapsed="0.000494"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.016885" elapsed="0.000536"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.017914" level="INFO">${j} = 54</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.017563" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.018698" level="INFO">${item} =         {
          "group-id": 54000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.018117" elapsed="0.000609"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.018880" elapsed="0.000182"/>
</kw>
<var name="${iteration}">54</var>
<status status="PASS" start="2026-05-25T01:55:35.016830" elapsed="0.002353"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.019607" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.019369" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.019354" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.020382" level="INFO">${j} = 55</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.019994" elapsed="0.000415"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.021188" level="INFO">${item} =         {
          "group-id": 55000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.020563" elapsed="0.000655"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.021374" elapsed="0.000184"/>
</kw>
<var name="${iteration}">55</var>
<status status="PASS" start="2026-05-25T01:55:35.019323" elapsed="0.002274"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.022011" elapsed="0.000215"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.021776" elapsed="0.000490"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.021761" elapsed="0.000530"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.022791" level="INFO">${j} = 56</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.022435" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.023577" level="INFO">${item} =         {
          "group-id": 56000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.022970" elapsed="0.000636"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.023759" elapsed="0.000183"/>
</kw>
<var name="${iteration}">56</var>
<status status="PASS" start="2026-05-25T01:55:35.021731" elapsed="0.002248"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.024541" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.024293" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.024162" elapsed="0.000628"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.025351" level="INFO">${j} = 57</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.024960" elapsed="0.000418"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.026133" level="INFO">${item} =         {
          "group-id": 57000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.025533" elapsed="0.000629"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.026326" elapsed="0.000185"/>
</kw>
<var name="${iteration}">57</var>
<status status="PASS" start="2026-05-25T01:55:35.024130" elapsed="0.002419"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.026962" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.026728" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.026713" elapsed="0.000522"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.027744" level="INFO">${j} = 58</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.027389" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.028535" level="INFO">${item} =         {
          "group-id": 58000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.027928" elapsed="0.000636"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.028727" elapsed="0.000212"/>
</kw>
<var name="${iteration}">58</var>
<status status="PASS" start="2026-05-25T01:55:35.026683" elapsed="0.002294"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.029428" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.029180" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.029165" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.030199" level="INFO">${j} = 59</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.029826" elapsed="0.000400"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.030976" level="INFO">${item} =         {
          "group-id": 59000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.030391" elapsed="0.000648"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.031219" elapsed="0.000194"/>
</kw>
<var name="${iteration}">59</var>
<status status="PASS" start="2026-05-25T01:55:35.029134" elapsed="0.002318"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.031875" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.031638" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.031624" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.032644" level="INFO">${j} = 60</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.032282" elapsed="0.000388"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.033457" level="INFO">${item} =         {
          "group-id": 60000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.032844" elapsed="0.000642"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.033643" elapsed="0.000185"/>
</kw>
<var name="${iteration}">60</var>
<status status="PASS" start="2026-05-25T01:55:35.031593" elapsed="0.002272"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.034299" elapsed="0.000195"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.034044" elapsed="0.000490"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.034029" elapsed="0.000530"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.035059" level="INFO">${j} = 61</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.034707" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.035866" level="INFO">${item} =         {
          "group-id": 61000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.035258" elapsed="0.000636"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.036049" elapsed="0.000201"/>
</kw>
<var name="${iteration}">61</var>
<status status="PASS" start="2026-05-25T01:55:35.034000" elapsed="0.002288"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.036722" elapsed="0.000195"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.036476" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.036462" elapsed="0.000520"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.037504" level="INFO">${j} = 62</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.037144" elapsed="0.000387"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.038287" level="INFO">${item} =         {
          "group-id": 62000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.037691" elapsed="0.000625"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.038480" elapsed="0.000184"/>
</kw>
<var name="${iteration}">62</var>
<status status="PASS" start="2026-05-25T01:55:35.036431" elapsed="0.002271"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.039133" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.038881" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.038866" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.039887" level="INFO">${j} = 63</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.039533" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.040681" level="INFO">${item} =         {
          "group-id": 63000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.040083" elapsed="0.000627"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.040894" elapsed="0.000205"/>
</kw>
<var name="${iteration}">63</var>
<status status="PASS" start="2026-05-25T01:55:35.038838" elapsed="0.002302"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.041685" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.041431" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.041306" elapsed="0.000627"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.042448" level="INFO">${j} = 64</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.042092" elapsed="0.000421"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.043281" level="INFO">${item} =         {
          "group-id": 64000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.042679" elapsed="0.000630"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.043467" elapsed="0.000198"/>
</kw>
<var name="${iteration}">64</var>
<status status="PASS" start="2026-05-25T01:55:35.041276" elapsed="0.002427"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.044144" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.043883" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.043868" elapsed="0.000528"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.044935" level="INFO">${j} = 65</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.044545" elapsed="0.000417"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.045735" level="INFO">${item} =         {
          "group-id": 65000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.045138" elapsed="0.000627"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.045920" elapsed="0.000202"/>
</kw>
<var name="${iteration}">65</var>
<status status="PASS" start="2026-05-25T01:55:35.043838" elapsed="0.002323"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.046587" elapsed="0.000191"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.046341" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.046325" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.047361" level="INFO">${j} = 66</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.046985" elapsed="0.000403"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.048152" level="INFO">${item} =         {
          "group-id": 66000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.047543" elapsed="0.000638"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.048336" elapsed="0.000182"/>
</kw>
<var name="${iteration}">66</var>
<status status="PASS" start="2026-05-25T01:55:35.046296" elapsed="0.002260"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.049007" elapsed="0.000205"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.048764" elapsed="0.000487"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.048748" elapsed="0.000528"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.049782" level="INFO">${j} = 67</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.049421" elapsed="0.000388"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.050574" level="INFO">${item} =         {
          "group-id": 67000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.049966" elapsed="0.000638"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.050769" elapsed="0.000184"/>
</kw>
<var name="${iteration}">67</var>
<status status="PASS" start="2026-05-25T01:55:35.048701" elapsed="0.002309"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.051458" elapsed="0.000192"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.051219" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.051204" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.052250" level="INFO">${j} = 68</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.051862" elapsed="0.000415"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.053025" level="INFO">${item} =         {
          "group-id": 68000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.052431" elapsed="0.000622"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.053227" elapsed="0.000181"/>
</kw>
<var name="${iteration}">68</var>
<status status="PASS" start="2026-05-25T01:55:35.051173" elapsed="0.002272"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.053894" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.053623" elapsed="0.000512"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.053608" elapsed="0.000551"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.054650" level="INFO">${j} = 69</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.054303" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.055423" level="INFO">${item} =         {
          "group-id": 69000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.054832" elapsed="0.000619"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.055608" elapsed="0.000181"/>
</kw>
<var name="${iteration}">69</var>
<status status="PASS" start="2026-05-25T01:55:35.053579" elapsed="0.002248"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.056259" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.056006" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.055991" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.057016" level="INFO">${j} = 70</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.056650" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.057792" level="INFO">${item} =         {
          "group-id": 70000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.057217" elapsed="0.000603"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.057974" elapsed="0.000196"/>
</kw>
<var name="${iteration}">70</var>
<status status="PASS" start="2026-05-25T01:55:35.055962" elapsed="0.002247"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.058738" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.058498" elapsed="0.000467"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.058376" elapsed="0.000614"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.059499" level="INFO">${j} = 71</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.059149" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.060278" level="INFO">${item} =         {
          "group-id": 71000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.059686" elapsed="0.000621"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.060461" elapsed="0.000182"/>
</kw>
<var name="${iteration}">71</var>
<status status="PASS" start="2026-05-25T01:55:35.058347" elapsed="0.002346"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.061143" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.060889" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.060874" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.061878" level="INFO">${j} = 72</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.061530" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.062649" level="INFO">${item} =         {
          "group-id": 72000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.062058" elapsed="0.000619"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.062830" elapsed="0.000181"/>
</kw>
<var name="${iteration}">72</var>
<status status="PASS" start="2026-05-25T01:55:35.060843" elapsed="0.002205"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.063481" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.063246" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.063231" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.064237" level="INFO">${j} = 73</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.063868" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.065024" level="INFO">${item} =         {
          "group-id": 73000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.064417" elapsed="0.000636"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.065260" elapsed="0.000185"/>
</kw>
<var name="${iteration}">73</var>
<status status="PASS" start="2026-05-25T01:55:35.063201" elapsed="0.002281"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.065892" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.065657" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.065642" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.066650" level="INFO">${j} = 74</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.066294" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.067431" level="INFO">${item} =         {
          "group-id": 74000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.066830" elapsed="0.000630"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.067614" elapsed="0.000181"/>
</kw>
<var name="${iteration}">74</var>
<status status="PASS" start="2026-05-25T01:55:35.065613" elapsed="0.002219"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.068262" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.068009" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.067994" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.069009" level="INFO">${j} = 75</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.068661" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.069788" level="INFO">${item} =         {
          "group-id": 75000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.069214" elapsed="0.000602"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.069969" elapsed="0.000197"/>
</kw>
<var name="${iteration}">75</var>
<status status="PASS" start="2026-05-25T01:55:35.067965" elapsed="0.002239"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.070615" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.070381" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.070365" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.071368" level="INFO">${j} = 76</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.071000" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.072133" level="INFO">${item} =         {
          "group-id": 76000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.071548" elapsed="0.000613"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.072315" elapsed="0.000180"/>
</kw>
<var name="${iteration}">76</var>
<status status="PASS" start="2026-05-25T01:55:35.070336" elapsed="0.002195"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.072953" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.072719" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.072704" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.073710" level="INFO">${j} = 77</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.073364" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.074480" level="INFO">${item} =         {
          "group-id": 77000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.073889" elapsed="0.000619"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.074659" elapsed="0.000182"/>
</kw>
<var name="${iteration}">77</var>
<status status="PASS" start="2026-05-25T01:55:35.072675" elapsed="0.002204"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.075430" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.075185" elapsed="0.000466"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.075044" elapsed="0.000632"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.076181" level="INFO">${j} = 78</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.075817" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.076999" level="INFO">${item} =         {
          "group-id": 78000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.076397" elapsed="0.000630"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.077203" elapsed="0.000187"/>
</kw>
<var name="${iteration}">78</var>
<status status="PASS" start="2026-05-25T01:55:35.075014" elapsed="0.002414"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.077840" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.077607" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.077592" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.078592" level="INFO">${j} = 79</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.078242" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.079364" level="INFO">${item} =         {
          "group-id": 79000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.078770" elapsed="0.000622"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.079545" elapsed="0.000181"/>
</kw>
<var name="${iteration}">79</var>
<status status="PASS" start="2026-05-25T01:55:35.077562" elapsed="0.002201"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.080191" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.079941" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.079927" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.080941" level="INFO">${j} = 80</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.080590" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.081716" level="INFO">${item} =         {
          "group-id": 80000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.081138" elapsed="0.000607"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.081898" elapsed="0.000202"/>
</kw>
<var name="${iteration}">80</var>
<status status="PASS" start="2026-05-25T01:55:35.079897" elapsed="0.002243"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.082553" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.082319" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.082305" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.083331" level="INFO">${j} = 81</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.082941" elapsed="0.000416"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.084102" level="INFO">${item} =         {
          "group-id": 81000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.083513" elapsed="0.000618"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.084284" elapsed="0.000182"/>
</kw>
<var name="${iteration}">81</var>
<status status="PASS" start="2026-05-25T01:55:35.082275" elapsed="0.002229"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.084942" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.084708" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.084692" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.085697" level="INFO">${j} = 82</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.085349" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.086462" level="INFO">${item} =         {
          "group-id": 82000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.085876" elapsed="0.000614"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.086642" elapsed="0.000181"/>
</kw>
<var name="${iteration}">82</var>
<status status="PASS" start="2026-05-25T01:55:35.084662" elapsed="0.002198"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.087289" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.087038" elapsed="0.000502"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.087023" elapsed="0.000545"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.088057" level="INFO">${j} = 83</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.087711" elapsed="0.000387"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.088857" level="INFO">${item} =         {
          "group-id": 83000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.088253" elapsed="0.000633"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.089040" elapsed="0.000201"/>
</kw>
<var name="${iteration}">83</var>
<status status="PASS" start="2026-05-25T01:55:35.086994" elapsed="0.002285"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.089690" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.089456" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.089441" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.090440" level="INFO">${j} = 84</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.090090" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.091251" level="INFO">${item} =         {
          "group-id": 84000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.090647" elapsed="0.000632"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.091435" elapsed="0.000183"/>
</kw>
<var name="${iteration}">84</var>
<status status="PASS" start="2026-05-25T01:55:35.089413" elapsed="0.002243"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.092219" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.091960" elapsed="0.000484"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.091838" elapsed="0.000631"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.092982" level="INFO">${j} = 85</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.092624" elapsed="0.000385"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.093758" level="INFO">${item} =         {
          "group-id": 85000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.093183" elapsed="0.000603"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.093941" elapsed="0.000201"/>
</kw>
<var name="${iteration}">85</var>
<status status="PASS" start="2026-05-25T01:55:35.091808" elapsed="0.002372"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.094591" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.094357" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.094343" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.095344" level="INFO">${j} = 86</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.094979" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.096112" level="INFO">${item} =         {
          "group-id": 86000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.095524" elapsed="0.000617"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.096295" elapsed="0.000181"/>
</kw>
<var name="${iteration}">86</var>
<status status="PASS" start="2026-05-25T01:55:35.094314" elapsed="0.002212"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.096943" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.096705" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.096689" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.097694" level="INFO">${j} = 87</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.097349" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.098462" level="INFO">${item} =         {
          "group-id": 87000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.097874" elapsed="0.000616"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.098643" elapsed="0.000187"/>
</kw>
<var name="${iteration}">87</var>
<status status="PASS" start="2026-05-25T01:55:35.096660" elapsed="0.002240"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.099378" elapsed="0.000234"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.099098" elapsed="0.000561"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.099081" elapsed="0.000610"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.100306" level="INFO">${j} = 88</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.099853" elapsed="0.000481"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.101121" level="INFO">${item} =         {
          "group-id": 88000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.100514" elapsed="0.000636"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.101306" elapsed="0.000182"/>
</kw>
<var name="${iteration}">88</var>
<status status="PASS" start="2026-05-25T01:55:35.099037" elapsed="0.002488"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.101935" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.101702" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.101687" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.102688" level="INFO">${j} = 89</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.102341" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.103462" level="INFO">${item} =         {
          "group-id": 89000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.102868" elapsed="0.000622"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.103643" elapsed="0.000180"/>
</kw>
<var name="${iteration}">89</var>
<status status="PASS" start="2026-05-25T01:55:35.101658" elapsed="0.002202"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.104292" elapsed="0.000194"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.104039" elapsed="0.000486"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.104023" elapsed="0.000526"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.105041" level="INFO">${j} = 90</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.104696" elapsed="0.000387"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.105811" level="INFO">${item} =         {
          "group-id": 90000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.105241" elapsed="0.000598"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.105994" elapsed="0.000196"/>
</kw>
<var name="${iteration}">90</var>
<status status="PASS" start="2026-05-25T01:55:35.103993" elapsed="0.002235"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.106640" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.106406" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.106392" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.107386" level="INFO">${j} = 91</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.107024" elapsed="0.000388"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.108151" level="INFO">${item} =         {
          "group-id": 91000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.107566" elapsed="0.000614"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.108333" elapsed="0.000195"/>
</kw>
<var name="${iteration}">91</var>
<status status="PASS" start="2026-05-25T01:55:35.106363" elapsed="0.002203"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.109109" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.108851" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.108729" elapsed="0.000630"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.109850" level="INFO">${j} = 92</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.109502" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.110633" level="INFO">${item} =         {
          "group-id": 92000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.110032" elapsed="0.000668"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.110859" elapsed="0.000183"/>
</kw>
<var name="${iteration}">92</var>
<status status="PASS" start="2026-05-25T01:55:35.108700" elapsed="0.002402"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.111517" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.111281" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.111266" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.112266" level="INFO">${j} = 93</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.111902" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.113042" level="INFO">${item} =         {
          "group-id": 93000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.112466" elapsed="0.000620"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.113243" elapsed="0.000182"/>
</kw>
<var name="${iteration}">93</var>
<status status="PASS" start="2026-05-25T01:55:35.111237" elapsed="0.002225"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.113872" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.113637" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.113622" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.114621" level="INFO">${j} = 94</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.114273" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.115398" level="INFO">${item} =         {
          "group-id": 94000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.114802" elapsed="0.000625"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.115581" elapsed="0.000180"/>
</kw>
<var name="${iteration}">94</var>
<status status="PASS" start="2026-05-25T01:55:35.113593" elapsed="0.002205"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.116225" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.115975" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.115960" elapsed="0.000520"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.116972" level="INFO">${j} = 95</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.116626" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.117752" level="INFO">${item} =         {
          "group-id": 95000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.117169" elapsed="0.000611"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.117933" elapsed="0.000198"/>
</kw>
<var name="${iteration}">95</var>
<status status="PASS" start="2026-05-25T01:55:35.115931" elapsed="0.002237"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.118578" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.118346" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.118331" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.119333" level="INFO">${j} = 96</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.118961" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.120099" level="INFO">${item} =         {
          "group-id": 96000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.119513" elapsed="0.000616"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.120283" elapsed="0.000204"/>
</kw>
<var name="${iteration}">96</var>
<status status="PASS" start="2026-05-25T01:55:35.118302" elapsed="0.002222"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.120938" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.120703" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.120687" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.121689" level="INFO">${j} = 97</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.121344" elapsed="0.000403"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.122498" level="INFO">${item} =         {
          "group-id": 97000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.121904" elapsed="0.000623"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.122686" elapsed="0.000182"/>
</kw>
<var name="${iteration}">97</var>
<status status="PASS" start="2026-05-25T01:55:35.120657" elapsed="0.002247"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.123333" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.123096" elapsed="0.000463"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.123080" elapsed="0.000503"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.124084" level="INFO">${j} = 98</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.123723" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.124864" level="INFO">${item} =         {
          "group-id": 98000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.124267" elapsed="0.000626"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.125047" elapsed="0.000201"/>
</kw>
<var name="${iteration}">98</var>
<status status="PASS" start="2026-05-25T01:55:35.123037" elapsed="0.002249"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.125813" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.125572" elapsed="0.000463"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.125449" elapsed="0.000611"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.126576" level="INFO">${j} = 99</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.126220" elapsed="0.000383"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.127352" level="INFO">${item} =         {
          "group-id": 99000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
         ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.126757" elapsed="0.000623"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.127535" elapsed="0.000181"/>
</kw>
<var name="${iteration}">99</var>
<status status="PASS" start="2026-05-25T01:55:35.125420" elapsed="0.002334"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.128182" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.127932" elapsed="0.000487"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.127917" elapsed="0.000526"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.128937" level="INFO">${j} = 100</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.128588" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.129708" level="INFO">${item} =         {
          "group-id": 100000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
        ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.129134" elapsed="0.000603"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.129892" elapsed="0.000198"/>
</kw>
<var name="${iteration}">100</var>
<status status="PASS" start="2026-05-25T01:55:35.127888" elapsed="0.002240"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="PASS" start="2026-05-25T01:55:34.887678" elapsed="0.242481"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.131447" level="INFO">${final_text} = {
  "flow-node-inventory:group": [
        {
          "group-id": 1000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
   ...</msg>
<var>${final_text}</var>
<arg>SEPARATOR=</arg>
<arg>${prolog}</arg>
<arg>${endline}</arg>
<arg>@{items}</arg>
<arg>${endline}</arg>
<arg>${epilog}</arg>
<doc>Catenates the given items together and returns the resulted string.</doc>
<status status="PASS" start="2026-05-25T01:55:35.130320" elapsed="0.001155"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:35.131538" elapsed="0.000073"/>
</return>
<msg time="2026-05-25T01:55:35.131748" level="INFO">${data} = {
  "flow-node-inventory:group": [
        {
          "group-id": 1000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
   ...</msg>
<var>${data}</var>
<arg>folder=${folder}</arg>
<arg>name_prefix=post_</arg>
<arg>base_name=${base_name}</arg>
<arg>extension=${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>endline=${endline}</arg>
<arg>iterations=${iterations}</arg>
<arg>iter_start=${iter_start}</arg>
<arg>iter_j_offset=${iter_j_offset}</arg>
<doc>Read a template from folder, strip endline, make changes according to mapping, return the result.
If ${iterations} value is present, put text together from "prolog", "item" and "epilog" parts,
where additional template variable ${i} goes from 1, by one 100 times.
Template variable ${j} is calculated as ${i} incremented by offset 0 ( j = i + iter_j_offset )
used to create non uniform data in order to be able to validate UPDATE operations.
POST (as opposed to PUT) needs slightly different data, ${name_prefix} may be used to distinguish.
(Actually, it is GET who formats data differently when URI is a top-level container.)</doc>
<status status="PASS" start="2026-05-25T01:55:34.833995" elapsed="0.297781"/>
</kw>
<kw name="Resolve_Jmes_Path" owner="TemplatedRequests">
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:35.133246" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1/jmespath.expr' does not exist.</msg>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:35.132943" elapsed="0.000380">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-1/jmespath.expr' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:35.133417" level="INFO">${read_jmes_file} = False</msg>
<var>${read_jmes_file}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:35.132583" elapsed="0.000858"/>
</kw>
<if>
<branch type="IF" condition="${read_jmes_file} == ${true}">
<kw name="Get File" owner="OperatingSystem">
<var>${jmes_expression}</var>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.133757" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:35.133511" elapsed="0.000303"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.134350" level="INFO">${jmes_expression} = None</msg>
<var>${jmes_expression}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:35.134042" elapsed="0.000334"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.133838" elapsed="0.000573"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.133492" elapsed="0.000941"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.136778" level="INFO">${expression} = </msg>
<var>${expression}</var>
<arg>${read_jmes_file} == ${true}</arg>
<arg>${jmes_expression}</arg>
<arg>${EMPTY}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:35.134585" elapsed="0.002219"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-05-25T01:55:35.136856" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:35.137009" level="INFO">${jmes_expression} = </msg>
<var>${jmes_expression}</var>
<arg>${folder}</arg>
<doc>Reads JMES path from file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-1/jmespath.expr if the file exists and
returns the JMES path. Empty string is returned otherwise.</doc>
<status status="PASS" start="2026-05-25T01:55:35.132207" elapsed="0.004827"/>
</kw>
<kw name="Post_To_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.138571" level="INFO">/rests/data/opendaylight-inventory:nodes/node=openflow%3A3</msg>
<arg>${uri}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:35.138319" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.139010" level="INFO">{
  "flow-node-inventory:group": [
        {
          "group-id": 1000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-1",
          "group-type": "group-select"
        },
        {
          "group-id": 2000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-2",
          "group-type": "group-select"
        },
        {
          "group-id": 3000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-3",
          "group-type": "group-select"
        },
        {
          "group-id": 4000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-4",
          "group-type": "group-select"
        },
        {
          "group-id": 5000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-5",
          "group-type": "group-select"
        },
        {
          "group-id": 6000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-6",
          "group-type": "group-select"
        },
        {
          "group-id": 7000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-7",
          "group-type": "group-select"
        },
        {
          "group-id": 8000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-8",
          "group-type": "group-select"
        },
        {
          "group-id": 9000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-9",
          "group-type": "group-select"
        },
        {
          "group-id": 10000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-10",
          "group-type": "group-select"
        },
        {
          "group-id": 11000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-11",
          "group-type": "group-select"
        },
        {
          "group-id": 12000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-12",
          "group-type": "group-select"
        },
        {
          "group-id": 13000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-13",
          "group-type": "group-select"
        },
        {
          "group-id": 14000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-14",
          "group-type": "group-select"
        },
        {
          "group-id": 15000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-15",
          "group-type": "group-select"
        },
        {
          "group-id": 16000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-16",
          "group-type": "group-select"
        },
        {
          "group-id": 17000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-17",
          "group-type": "group-select"
        },
        {
          "group-id": 18000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-18",
          "group-type": "group-select"
        },
        {
          "group-id": 19000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-19",
          "group-type": "group-select"
        },
        {
          "group-id": 20000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-20",
          "group-type": "group-select"
        },
        {
          "group-id": 21000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-21",
          "group-type": "group-select"
        },
        {
          "group-id": 22000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-22",
          "group-type": "group-select"
        },
        {
          "group-id": 23000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-23",
          "group-type": "group-select"
        },
        {
          "group-id": 24000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-24",
          "group-type": "group-select"
        },
        {
          "group-id": 25000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-25",
          "group-type": "group-select"
        },
        {
          "group-id": 26000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-26",
          "group-type": "group-select"
        },
        {
          "group-id": 27000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-27",
          "group-type": "group-select"
        },
        {
          "group-id": 28000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-28",
          "group-type": "group-select"
        },
        {
          "group-id": 29000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-29",
          "group-type": "group-select"
        },
        {
          "group-id": 30000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-30",
          "group-type": "group-select"
        },
        {
          "group-id": 31000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-31",
          "group-type": "group-select"
        },
        {
          "group-id": 32000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-32",
          "group-type": "group-select"
        },
        {
          "group-id": 33000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-33",
          "group-type": "group-select"
        },
        {
          "group-id": 34000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-34",
          "group-type": "group-select"
        },
        {
          "group-id": 35000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-35",
          "group-type": "group-select"
        },
        {
          "group-id": 36000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-36",
          "group-type": "group-select"
        },
        {
          "group-id": 37000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-37",
          "group-type": "group-select"
        },
        {
          "group-id": 38000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-38",
          "group-type": "group-select"
        },
        {
          "group-id": 39000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-39",
          "group-type": "group-select"
        },
        {
          "group-id": 40000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-40",
          "group-type": "group-select"
        },
        {
          "group-id": 41000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-41",
          "group-type": "group-select"
        },
        {
          "group-id": 42000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-42",
          "group-type": "group-select"
        },
        {
          "group-id": 43000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-43",
          "group-type": "group-select"
        },
        {
          "group-id": 44000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-44",
          "group-type": "group-select"
        },
        {
          "group-id": 45000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-45",
          "group-type": "group-select"
        },
        {
          "group-id": 46000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-46",
          "group-type": "group-select"
        },
        {
          "group-id": 47000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-47",
          "group-type": "group-select"
        },
        {
          "group-id": 48000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-48",
          "group-type": "group-select"
        },
        {
          "group-id": 49000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-49",
          "group-type": "group-select"
        },
        {
          "group-id": 50000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-50",
          "group-type": "group-select"
        },
        {
          "group-id": 51000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-51",
          "group-type": "group-select"
        },
        {
          "group-id": 52000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-52",
          "group-type": "group-select"
        },
        {
          "group-id": 53000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-53",
          "group-type": "group-select"
        },
        {
          "group-id": 54000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-54",
          "group-type": "group-select"
        },
        {
          "group-id": 55000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-55",
          "group-type": "group-select"
        },
        {
          "group-id": 56000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-56",
          "group-type": "group-select"
        },
        {
          "group-id": 57000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-57",
          "group-type": "group-select"
        },
        {
          "group-id": 58000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-58",
          "group-type": "group-select"
        },
        {
          "group-id": 59000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-59",
          "group-type": "group-select"
        },
        {
          "group-id": 60000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-60",
          "group-type": "group-select"
        },
        {
          "group-id": 61000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-61",
          "group-type": "group-select"
        },
        {
          "group-id": 62000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-62",
          "group-type": "group-select"
        },
        {
          "group-id": 63000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-63",
          "group-type": "group-select"
        },
        {
          "group-id": 64000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-64",
          "group-type": "group-select"
        },
        {
          "group-id": 65000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-65",
          "group-type": "group-select"
        },
        {
          "group-id": 66000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-66",
          "group-type": "group-select"
        },
        {
          "group-id": 67000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-67",
          "group-type": "group-select"
        },
        {
          "group-id": 68000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-68",
          "group-type": "group-select"
        },
        {
          "group-id": 69000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-69",
          "group-type": "group-select"
        },
        {
          "group-id": 70000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-70",
          "group-type": "group-select"
        },
        {
          "group-id": 71000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-71",
          "group-type": "group-select"
        },
        {
          "group-id": 72000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-72",
          "group-type": "group-select"
        },
        {
          "group-id": 73000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-73",
          "group-type": "group-select"
        },
        {
          "group-id": 74000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-74",
          "group-type": "group-select"
        },
        {
          "group-id": 75000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-75",
          "group-type": "group-select"
        },
        {
          "group-id": 76000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-76",
          "group-type": "group-select"
        },
        {
          "group-id": 77000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-77",
          "group-type": "group-select"
        },
        {
          "group-id": 78000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-78",
          "group-type": "group-select"
        },
        {
          "group-id": 79000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-79",
          "group-type": "group-select"
        },
        {
          "group-id": 80000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-80",
          "group-type": "group-select"
        },
        {
          "group-id": 81000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-81",
          "group-type": "group-select"
        },
        {
          "group-id": 82000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-82",
          "group-type": "group-select"
        },
        {
          "group-id": 83000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-83",
          "group-type": "group-select"
        },
        {
          "group-id": 84000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-84",
          "group-type": "group-select"
        },
        {
          "group-id": 85000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-85",
          "group-type": "group-select"
        },
        {
          "group-id": 86000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-86",
          "group-type": "group-select"
        },
        {
          "group-id": 87000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-87",
          "group-type": "group-select"
        },
        {
          "group-id": 88000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-88",
          "group-type": "group-select"
        },
        {
          "group-id": 89000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-89",
          "group-type": "group-select"
        },
        {
          "group-id": 90000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-90",
          "group-type": "group-select"
        },
        {
          "group-id": 91000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-91",
          "group-type": "group-select"
        },
        {
          "group-id": 92000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-92",
          "group-type": "group-select"
        },
        {
          "group-id": 93000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-93",
          "group-type": "group-select"
        },
        {
          "group-id": 94000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-94",
          "group-type": "group-select"
        },
        {
          "group-id": 95000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-95",
          "group-type": "group-select"
        },
        {
          "group-id": 96000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-96",
          "group-type": "group-select"
        },
        {
          "group-id": 97000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-97",
          "group-type": "group-select"
        },
        {
          "group-id": 98000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-98",
          "group-type": "group-select"
        },
        {
          "group-id": 99000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-99",
          "group-type": "group-select"
        },
        {
          "group-id": 100000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-100",
          "group-type": "group-select"
        }
  ]
}</msg>
<arg>${data}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:35.138775" elapsed="0.000736"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.139911" level="INFO">{'Content-Type': 'application/json'}</msg>
<arg>${content_type}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:35.139665" elapsed="0.000290"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.140382" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:35.140120" elapsed="0.000305"/>
</kw>
<kw name="Join_Two_Headers" owner="TemplatedRequests">
<kw name="Copy Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:35.141242" level="INFO">${accumulator} = {'Content-Type': 'application/json'}</msg>
<var>${accumulator}</var>
<arg>${first}</arg>
<doc>Returns a copy of the given dictionary.</doc>
<status status="PASS" start="2026-05-25T01:55:35.141026" elapsed="0.000242"/>
</kw>
<kw name="Get Dictionary Items" owner="Collections">
<msg time="2026-05-25T01:55:35.141588" level="INFO">${items_to_add} = []</msg>
<var>${items_to_add}</var>
<arg>${second}</arg>
<doc>Returns items of the given ``dictionary`` as a list.</doc>
<status status="PASS" start="2026-05-25T01:55:35.141418" elapsed="0.000196"/>
</kw>
<kw name="Set To Dictionary" owner="Collections">
<arg>${accumulator}</arg>
<arg>@{items_to_add}</arg>
<doc>Adds the given ``key_value_pairs`` and/or ``items`` to the ``dictionary``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.141763" elapsed="0.000192"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.142369" level="INFO">{'Content-Type': 'application/json'}</msg>
<arg>${accumulator}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:35.142123" elapsed="0.000289"/>
</kw>
<return>
<value>${accumulator}</value>
<status status="PASS" start="2026-05-25T01:55:35.142455" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:35.142607" level="INFO">${headers} = {'Content-Type': 'application/json'}</msg>
<var>${headers}</var>
<arg>first=${content_type}</arg>
<arg>second=${accept}</arg>
<doc>Take two dicts, join them, return result. Second argument values take precedence.</doc>
<status status="PASS" start="2026-05-25T01:55:35.140626" elapsed="0.002006"/>
</kw>
<if>
<branch type="IF" condition="&quot;&quot;&quot;${http_timeout}&quot;&quot;&quot; == &quot;&quot;&quot;${EMPTY}&quot;&quot;&quot;">
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:35.169986" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A3 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Content-Length': '52323', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body={
  "flow-node-inventory:group": [
        {
          "group-id": 1000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-1",
          "group-type": "group-select"
        },
        {
          "group-id": 2000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-2",
          "group-type": "group-select"
        },
        {
          "group-id": 3000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-3",
          "group-type": "group-select"
        },
        {
          "group-id": 4000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-4",
          "group-type": "group-select"
        },
        {
          "group-id": 5000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-5",
          "group-type": "group-select"
        },
        {
          "group-id": 6000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-6",
          "group-type": "group-select"
        },
        {
          "group-id": 7000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-7",
          "group-type": "group-select"
        },
        {
          "group-id": 8000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-8",
          "group-type": "group-select"
        },
        {
          "group-id": 9000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-9",
          "group-type": "group-select"
        },
        {
          "group-id": 10000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-10",
          "group-type": "group-select"
        },
        {
          "group-id": 11000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-11",
          "group-type": "group-select"
        },
        {
          "group-id": 12000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-12",
          "group-type": "group-select"
        },
        {
          "group-id": 13000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-13",
          "group-type": "group-select"
        },
        {
          "group-id": 14000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-14",
          "group-type": "group-select"
        },
        {
          "group-id": 15000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-15",
          "group-type": "group-select"
        },
        {
          "group-id": 16000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-16",
          "group-type": "group-select"
        },
        {
          "group-id": 17000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-17",
          "group-type": "group-select"
        },
        {
          "group-id": 18000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-18",
          "group-type": "group-select"
        },
        {
          "group-id": 19000,
          "buckets": {
            "bucket": [
              {
                "bucket-id": 1,
                "weight": 1,
                "action": [
                  {
                    "order": 1,
                    "output-action": {
                      "output-node-connector": "1"
                    }
                  }
                ]
              }
            ]
          },
          "group-name": "Select-19",
          "group-type": "group-select"
        },
        {
          "group-id": 20000,
       ... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:55:35.170374" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3/flow-node-inventory:group=5000', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:35.170624" level="INFO">${response} = &lt;Response [201]&gt;</msg>
<var>${response}</var>
<arg>${session}</arg>
<arg>${uri}</arg>
<arg>data=${data}</arg>
<arg>headers=${headers}</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:35.145302" elapsed="0.025381"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.143271" elapsed="0.027516"/>
</branch>
<branch type="ELSE">
<kw name="POST On Session" owner="RequestsLibrary">
<var>${response}</var>
<arg>${session}</arg>
<arg>${uri}</arg>
<arg>data=${data}</arg>
<arg>headers=${headers}</arg>
<arg>timeout=${http_timeout}</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.171230" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:35.170847" elapsed="0.000536"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.142683" elapsed="0.028748"/>
</if>
<kw name="Check_Status_Code" owner="TemplatedRequests">
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.178821" level="INFO"/>
<arg>${response.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:35.173780" elapsed="0.005138"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.173283" elapsed="0.005715"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.173240" elapsed="0.005814"/>
</if>
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.182487" level="INFO">201</msg>
<arg>${response.status_code}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:35.179709" elapsed="0.002823"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.179213" elapsed="0.003354"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.179174" elapsed="0.003418"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.183172" level="INFO">${status_codes_type} = list</msg>
<var>${status_codes_type}</var>
<arg>type($additional_allowed_status_codes).__name__</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.182771" elapsed="0.000429"/>
</kw>
<if>
<branch type="IF" condition="&quot;${status_codes_type}&quot;!=&quot;list&quot;">
<kw name="Create List" owner="BuiltIn">
<var>${allowed_status_codes_list}</var>
<arg>${additional_allowed_status_codes}</arg>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.183522" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:35.183271" elapsed="0.000312"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.184096" level="INFO">${allowed_status_codes_list} = []</msg>
<var>${allowed_status_codes_list}</var>
<arg>${additional_allowed_status_codes}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:35.183782" elapsed="0.000351"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.183608" elapsed="0.000561"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.183252" elapsed="0.000939"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.184729" level="INFO">${status_codes_type} = list</msg>
<var>${status_codes_type}</var>
<arg>type($explicit_status_codes).__name__</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.184365" elapsed="0.000390"/>
</kw>
<if>
<branch type="IF" condition="&quot;${status_codes_type}&quot;!=&quot;list&quot;">
<kw name="Create List" owner="BuiltIn">
<var>${explicit_status_codes_list}</var>
<arg>${explicit_status_codes}</arg>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.185087" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:35.184825" elapsed="0.000321"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.185636" level="INFO">${explicit_status_codes_list} = []</msg>
<var>${explicit_status_codes_list}</var>
<arg>${explicit_status_codes}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:35.185344" elapsed="0.000318"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.185170" elapsed="0.000527"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.184807" elapsed="0.000912"/>
</if>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>"""${explicit_status_codes_list}""" != """${NO_STATUS_CODES}"""</arg>
<arg>Collections.List_Should_Contain_Value</arg>
<arg>${explicit_status_codes_list}</arg>
<arg>${response.status_code}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:35.185873" elapsed="0.000364"/>
</kw>
<kw name="Combine Lists" owner="Collections">
<msg time="2026-05-25T01:55:35.186686" level="INFO">${final_allowd_list} = [200, 201, 204]</msg>
<var>${final_allowd_list}</var>
<arg>${ALLOWED_STATUS_CODES}</arg>
<arg>${allowed_status_codes_list}</arg>
<doc>Combines the given ``lists`` together and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.186404" elapsed="0.000308"/>
</kw>
<kw name="List Should Contain Value" owner="Collections">
<arg>${final_allowd_list}</arg>
<arg>${response.status_code}</arg>
<doc>Fails if the ``value`` is not found from ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.186864" elapsed="0.002183"/>
</kw>
<arg>${response}</arg>
<arg>additional_allowed_status_codes=${additional_allowed_status_codes}</arg>
<arg>explicit_status_codes=${explicit_status_codes}</arg>
<doc>Log response text, check status_code is one of allowed ones. In cases where this keyword is
called in a WUKS it could end up logging tons of data and it may be desired to skip the logging by passing
log_response=False, but by default it remains True.</doc>
<status status="PASS" start="2026-05-25T01:55:35.172265" elapsed="0.016871"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-05-25T01:55:35.189315" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:35.189208" elapsed="0.000151"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.189189" elapsed="0.000192"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<msg time="2026-05-25T01:55:35.191767" level="INFO">${text_normalized} = </msg>
<var>${text_normalized}</var>
<arg>${response.text}</arg>
<arg>jmes_path=${jmes_path}</arg>
<doc>Attempt to return sorted indented JSON string.</doc>
<status status="PASS" start="2026-05-25T01:55:35.189526" elapsed="0.002267"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="PASS" start="2026-05-25T01:55:35.191841" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:55:35.191995" level="INFO">${response_text} = </msg>
<var>${response_text}</var>
<arg>uri=${uri}</arg>
<arg>data=${data}</arg>
<arg>content_type=${content_type}</arg>
<arg>accept=${accept}</arg>
<arg>session=${session}</arg>
<arg>jmes_path=${jmes_expression}</arg>
<arg>normalize_json=${normalize_json}</arg>
<arg>additional_allowed_status_codes=${additional_allowed_status_codes}</arg>
<arg>explicit_status_codes=${explicit_status_codes}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>POST data to given URI, check status code and return response text.
${content_type} and ${accept} are mandatory Python objects with headers to use.
If ${normalize_json}, normalize text before returning.</doc>
<status status="PASS" start="2026-05-25T01:55:35.137376" elapsed="0.054643"/>
</kw>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-05-25T01:55:35.192173" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:35.192329" level="INFO">${response_text} = </msg>
<var>${response_text}</var>
<arg>folder=${folder}</arg>
<arg>base_name=data</arg>
<arg>extension=json</arg>
<arg>accept=${ACCEPT_EMPTY}</arg>
<arg>content_type=${HEADERS_YANG_JSON}</arg>
<arg>mapping=${mapping}</arg>
<arg>session=${session}</arg>
<arg>normalize_json=True</arg>
<arg>endline=${\n}</arg>
<arg>iterations=${iterations}</arg>
<arg>iter_start=${iter_start}</arg>
<arg>additional_allowed_status_codes=${additional_allowed_status_codes}</arg>
<arg>explicit_status_codes=${explicit_status_codes}</arg>
<arg>http_timeout=${http_timeout}</arg>
<arg>iter_j_offset=${iter_j_offset}</arg>
<doc>Resolve URI and data from folder, call Post_To_Uri, return response text.</doc>
<status status="PASS" start="2026-05-25T01:55:34.747784" elapsed="0.444569"/>
</kw>
<if>
<branch type="IF" condition="${verify}">
<kw name="Verify_Response_As_Json_Templated" owner="TemplatedRequests">
<arg>response=${response_text}</arg>
<arg>folder=${folder}</arg>
<arg>base_name=response</arg>
<arg>mapping=${mapping}</arg>
<arg>iter_j_offset=${iter_j_offset}</arg>
<doc>Resolve expected JSON data, should be equal to provided ${response}.
JSON normalization is used, endlines enabled for readability.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.192703" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:35.192460" elapsed="0.000312"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.192442" elapsed="0.000353"/>
</if>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-05-25T01:55:35.192829" elapsed="0.000025"/>
</return>
<arg>folder=${VAR_DIR}/add-group-1</arg>
<arg>mapping=${mapping}</arg>
<arg>session=session</arg>
<arg>iterations=${iter}</arg>
<doc>Add arguments sensible for JSON data, return Post_Templated response text.
Optionally, verification against response.json (no iteration) is called.
Only subset of JSON data is verified and returned if JMES path is specified in
file ${folder}/jmespath.expr.
Response status code must be one of values from ${explicit_status_codes} if specified or one of set
created from all positive HTTP status codes together with ${additional_allowed_status_codes}.</doc>
<status status="PASS" start="2026-05-25T01:55:34.745260" elapsed="0.447690"/>
</kw>
<var name="${switch}">3</var>
<status status="PASS" start="2026-05-25T01:55:34.733843" elapsed="0.459153"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-05-25T01:55:33.769458" elapsed="1.423572"/>
</for>
<doc>Add 100 groups of type 1 in every switch.</doc>
<status status="PASS" start="2026-05-25T01:55:33.769062" elapsed="1.424114"/>
</test>
<test id="s1-s5-s1-t2" name="Add Group 2 In Every Switch" line="35">
<for flavor="IN RANGE">
<iter>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.196686" level="INFO">&amp;{mapping} = { NODE=openflow:1 }</msg>
<var>&amp;{mapping}</var>
<arg>NODE=openflow:${switch}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.196279" elapsed="0.000436"/>
</kw>
<kw name="Post_As_Json_Templated" owner="TemplatedRequests">
<kw name="Post_Templated" owner="TemplatedRequests">
<kw name="Resolve_Text_From_Template_Folder" owner="TemplatedRequests">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.238047" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/location.uri</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:35.237665" elapsed="0.000426"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:35.238867" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2.titanium/location.uri' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:35.238602" elapsed="0.000345">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2.titanium/location.uri' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:35.239043" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:35.238262" elapsed="0.000820"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.239644" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/location.uri</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:35.239252" elapsed="0.000419"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:35.239998" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2/location.uri"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2/location.uri&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:35.240180" level="INFO">${template} = /rests/data/opendaylight-inventory:nodes/node=$NODE
</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:35.239831" elapsed="0.000375"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.240613" level="INFO">/rests/data/opendaylight-inventory:nodes/node=$NODE
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:35.240364" elapsed="0.000295"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.241626" level="INFO">mapping: {'NODE': 'openflow:1'}</msg>
<arg>mapping: ${mapping}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:35.241372" elapsed="0.000299"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.242110" level="INFO">${encoded_mapping} = {}</msg>
<var>${encoded_mapping}</var>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.241831" elapsed="0.000306"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Convert To String" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.242857" level="INFO">${value} = openflow:1</msg>
<var>${value}</var>
<arg>${value}</arg>
<doc>Converts the given item to a Unicode string.</doc>
<status status="PASS" start="2026-05-25T01:55:35.242499" elapsed="0.000384"/>
</kw>
<kw name="Percent_Encode_String" owner="TemplatedRequests">
<kw name="Replace String Using Regexp" owner="String">
<msg time="2026-05-25T01:55:35.243954" level="INFO">${encoded} = openflow%3A1</msg>
<var>${encoded}</var>
<arg>${value}</arg>
<arg>:</arg>
<arg>%3A</arg>
<doc>Replaces ``pattern`` in the given ``string`` with ``replace_with``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.243485" elapsed="0.000497"/>
</kw>
<return>
<value>${encoded}</value>
<status status="PASS" start="2026-05-25T01:55:35.244034" elapsed="0.000056"/>
</return>
<msg time="2026-05-25T01:55:35.244220" level="INFO">${encoded_value} = openflow%3A1</msg>
<var>${encoded_value}</var>
<arg>${value}</arg>
<doc>Percent encodes reserved characters in the given string so it can be used as part of url.</doc>
<status status="PASS" start="2026-05-25T01:55:35.243094" elapsed="0.001151"/>
</kw>
<kw name="Set To Dictionary" owner="Collections">
<arg>${encoded_mapping}</arg>
<arg>${key}</arg>
<arg>${encoded_value}</arg>
<doc>Adds the given ``key_value_pairs`` and/or ``items`` to the ``dictionary``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.244400" elapsed="0.000276"/>
</kw>
<var name="${key}">NODE</var>
<var name="${value}">openflow:1</var>
<status status="PASS" start="2026-05-25T01:55:35.242361" elapsed="0.002356"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="PASS" start="2026-05-25T01:55:35.242189" elapsed="0.002563"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-05-25T01:55:35.244796" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:55:35.244950" level="INFO">${mapping_to_use} = {'NODE': 'openflow%3A1'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-05-25T01:55:35.241029" elapsed="0.003947"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.240729" elapsed="0.004278"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.245197" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:35.245032" elapsed="0.000221"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.240708" elapsed="0.004565"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.245951" level="INFO">${final_text} = /rests/data/opendaylight-inventory:nodes/node=openflow%3A1</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.245415" elapsed="0.000563"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:35.246027" elapsed="0.000028"/>
</return>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:35.237037" elapsed="0.009131"/>
</kw>
<msg time="2026-05-25T01:55:35.246223" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>not "${iterations}"</arg>
<arg>Resolve_Text_From_Template_File</arg>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:35.224939" elapsed="0.021332"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${prolog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.prolog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.258351" elapsed="0.000028"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${epilog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.epilog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.270246" elapsed="0.000027"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${item_template}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${base_name}.item.${extension}</arg>
<arg>mapping=${mapping}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.282002" elapsed="0.000027"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.282211" elapsed="0.000022"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<var>${separator}</var>
<arg>'${extension}' != 'json'</arg>
<arg>${endline}</arg>
<arg>,${endline}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.282389" elapsed="0.000021"/>
</kw>
<for flavor="IN RANGE">
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.282773" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:35.282619" elapsed="0.000241"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:35.282601" elapsed="0.000285"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.283029" elapsed="0.000020"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.283217" elapsed="0.000021"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.283384" elapsed="0.000020"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-05-25T01:55:35.282566" elapsed="0.000870"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-05-25T01:55:35.282465" elapsed="0.000997"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<var>${final_text}</var>
<arg>SEPARATOR=</arg>
<arg>${prolog}</arg>
<arg>${endline}</arg>
<arg>@{items}</arg>
<arg>${endline}</arg>
<arg>${epilog}</arg>
<doc>Catenates the given items together and returns the resulted string.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.283607" elapsed="0.000021"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-05-25T01:55:35.283683" elapsed="0.000015"/>
</return>
<msg time="2026-05-25T01:55:35.283811" level="INFO">${uri} = /rests/data/opendaylight-inventory:nodes/node=openflow%3A1</msg>
<var>${uri}</var>
<arg>folder=${folder}</arg>
<arg>base_name=location</arg>
<arg>extension=uri</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=True</arg>
<doc>Read a template from folder, strip endline, make changes according to mapping, return the result.
If ${iterations} value is present, put text together from "prolog", "item" and "epilog" parts,
where additional template variable ${i} goes from 1, by one 100 times.
Template variable ${j} is calculated as ${i} incremented by offset 0 ( j = i + iter_j_offset )
used to create non uniform data in order to be able to validate UPDATE operations.
POST (as opposed to PUT) needs slightly different data, ${name_prefix} may be used to distinguish.
(Actually, it is GET who formats data differently when URI is a top-level container.)</doc>
<status status="PASS" start="2026-05-25T01:55:35.220784" elapsed="0.063053"/>
</kw>
<kw name="Resolve_Text_From_Template_Folder" owner="TemplatedRequests">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>not "${iterations}"</arg>
<arg>Resolve_Text_From_Template_File</arg>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:35.294306" elapsed="0.000333"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.307364" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/post_data.prolog.json</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:35.306973" elapsed="0.000420"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:35.308122" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2.titanium/post_data.prolog.json' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:35.307900" elapsed="0.000287">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2.titanium/post_data.prolog.json' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:35.308279" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:35.307556" elapsed="0.000748"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.308848" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/post_data.prolog.json</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:35.308467" elapsed="0.000408"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:35.309186" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2/post_data.prolog.json"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2/post_data.prolog.json&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:35.309312" level="INFO">${template} = {
  "flow-node-inventory:group": [
</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:35.309035" elapsed="0.000303"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.309738" level="INFO">{
  "flow-node-inventory:group": [
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:35.309491" elapsed="0.000292"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:35.310153" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:35.309850" elapsed="0.000362"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.310673" level="INFO">${mapping_to_use} = {'NODE': 'openflow:1'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:35.310382" elapsed="0.000317"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.310236" elapsed="0.000499"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.309832" elapsed="0.000925"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.311338" level="INFO">${final_text} = {
  "flow-node-inventory:group": [</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.310901" elapsed="0.000464"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:35.311414" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:35.311564" level="INFO">${prolog} = {
  "flow-node-inventory:group": [</msg>
<var>${prolog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.prolog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:35.306368" elapsed="0.005246"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.324650" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/post_data.epilog.json</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:35.324274" elapsed="0.000404"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:35.325399" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2.titanium/post_data.epilog.json' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:35.325194" elapsed="0.000268">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2.titanium/post_data.epilog.json' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:35.325554" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:35.324842" elapsed="0.000738"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.326143" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/post_data.epilog.json</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:35.325747" elapsed="0.000424"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:35.326463" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2/post_data.epilog.json"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2/post_data.epilog.json&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:35.326588" level="INFO">${template} =   ]
}
</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:35.326331" elapsed="0.000283"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.327009" level="INFO">  ]
}
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:35.326767" elapsed="0.000286"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:35.327424" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:35.327137" elapsed="0.000344"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.327956" level="INFO">${mapping_to_use} = {'NODE': 'openflow:1'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:35.327666" elapsed="0.000316"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.327506" elapsed="0.000511"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.327117" elapsed="0.000922"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.328624" level="INFO">${final_text} =   ]
}</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.328200" elapsed="0.000451"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:35.328700" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:35.328851" level="INFO">${epilog} =   ]
}</msg>
<var>${epilog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.epilog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:35.323645" elapsed="0.005231"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.341735" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/data.item.json</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:35.341361" elapsed="0.000402"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:35.342482" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2.titanium/data.item.json' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:35.342277" elapsed="0.000267">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2.titanium/data.item.json' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:35.342635" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:35.341927" elapsed="0.000733"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.343259" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/data.item.json</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:35.342858" elapsed="0.000429"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:35.343601" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2/data.item.json"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2/data.item.json&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:35.343728" level="INFO">${template} =     {
      "group-id": ${i},
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": ${i}000,
            "action": [
              {
               ...</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:35.343461" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.344167" level="INFO">    {
      "group-id": ${i},
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": ${i}000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": ${i}000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-${i}",
      "group-type": "group-ff"
    }
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:35.343908" elapsed="0.000306"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:35.344568" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:35.344281" elapsed="0.000344"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.345099" level="INFO">${mapping_to_use} = {'NODE': 'openflow:1'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:35.344794" elapsed="0.000332"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.344649" elapsed="0.000514"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.344262" elapsed="0.000922"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.345889" level="INFO">${final_text} =     {
      "group-id": ${i},
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": ${i}000,
            "action": [
              {
               ...</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.345329" elapsed="0.000589"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:35.345967" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:35.346140" level="INFO">${item_template} =     {
      "group-id": ${i},
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": ${i}000,
            "action": [
              {
               ...</msg>
<var>${item_template}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${base_name}.item.${extension}</arg>
<arg>mapping=${mapping}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:35.340807" elapsed="0.005360"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.346578" level="INFO">${items} = []</msg>
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:55:35.346339" elapsed="0.000264"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.347146" level="INFO">${separator} = ,
</msg>
<var>${separator}</var>
<arg>'${extension}' != 'json'</arg>
<arg>${endline}</arg>
<arg>,${endline}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:35.346766" elapsed="0.000406"/>
</kw>
<for flavor="IN RANGE">
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.347814" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:35.347579" elapsed="0.000292"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.347565" elapsed="0.000330"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.348402" level="INFO">${j} = 1</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.348035" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.349337" level="INFO">${item} =     {
      "group-id": 1,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 1000,
            "action": [
              {
                "orde...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.348584" elapsed="0.000783"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.349523" elapsed="0.000196"/>
</kw>
<var name="${iteration}">1</var>
<status status="PASS" start="2026-05-25T01:55:35.347534" elapsed="0.002223"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.350188" elapsed="0.000193"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.349937" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.349922" elapsed="0.000521"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.350938" level="INFO">${j} = 2</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.350584" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.351713" level="INFO">${item} =     {
      "group-id": 2,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 2000,
            "action": [
              {
                "orde...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.351133" elapsed="0.000640"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.351933" elapsed="0.000203"/>
</kw>
<var name="${iteration}">2</var>
<status status="PASS" start="2026-05-25T01:55:35.349891" elapsed="0.002283"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.352594" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.352353" elapsed="0.000463"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.352338" elapsed="0.000503"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.353348" level="INFO">${j} = 3</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.352981" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.354115" level="INFO">${item} =     {
      "group-id": 3,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 3000,
            "action": [
              {
                "orde...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.353528" elapsed="0.000617"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.354299" elapsed="0.000187"/>
</kw>
<var name="${iteration}">3</var>
<status status="PASS" start="2026-05-25T01:55:35.352308" elapsed="0.002214"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.354930" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.354698" elapsed="0.000468"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.354683" elapsed="0.000507"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.355692" level="INFO">${j} = 4</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.355332" elapsed="0.000386"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.356460" level="INFO">${item} =     {
      "group-id": 4,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 4000,
            "action": [
              {
                "orde...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.355872" elapsed="0.000616"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.356651" elapsed="0.000181"/>
</kw>
<var name="${iteration}">4</var>
<status status="PASS" start="2026-05-25T01:55:35.354655" elapsed="0.002214"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.357298" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.357046" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.357032" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.358031" level="INFO">${j} = 5</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.357684" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.358802" level="INFO">${item} =     {
      "group-id": 5,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 5000,
            "action": [
              {
                "orde...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.358229" elapsed="0.000601"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.358983" elapsed="0.000198"/>
</kw>
<var name="${iteration}">5</var>
<status status="PASS" start="2026-05-25T01:55:35.357003" elapsed="0.002216"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.359657" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.359420" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.359404" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.360403" level="INFO">${j} = 6</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.360040" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.361170" level="INFO">${item} =     {
      "group-id": 6,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 6000,
            "action": [
              {
                "orde...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.360582" elapsed="0.000616"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.361351" elapsed="0.000179"/>
</kw>
<var name="${iteration}">6</var>
<status status="PASS" start="2026-05-25T01:55:35.359352" elapsed="0.002215"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.361974" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.361743" elapsed="0.000467"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.361729" elapsed="0.000537"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.362768" level="INFO">${j} = 7</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.362414" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.363547" level="INFO">${item} =     {
      "group-id": 7,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 7000,
            "action": [
              {
                "orde...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.362950" elapsed="0.000625"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.363731" elapsed="0.000181"/>
</kw>
<var name="${iteration}">7</var>
<status status="PASS" start="2026-05-25T01:55:35.361700" elapsed="0.002250"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.364379" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.364146" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.364132" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.365126" level="INFO">${j} = 8</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.364763" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.366004" level="INFO">${item} =     {
      "group-id": 8,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 8000,
            "action": [
              {
                "orde...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.365307" elapsed="0.000725"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.366205" elapsed="0.000182"/>
</kw>
<var name="${iteration}">8</var>
<status status="PASS" start="2026-05-25T01:55:35.364101" elapsed="0.002324"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.366838" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.366602" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.366587" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.367611" level="INFO">${j} = 9</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.367246" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.368380" level="INFO">${item} =     {
      "group-id": 9,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 9000,
            "action": [
              {
                "orde...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.367794" elapsed="0.000614"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.368562" elapsed="0.000182"/>
</kw>
<var name="${iteration}">9</var>
<status status="PASS" start="2026-05-25T01:55:35.366558" elapsed="0.002223"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.369208" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.368958" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.368944" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.369949" level="INFO">${j} = 10</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.369594" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.370717" level="INFO">${item} =     {
      "group-id": 10,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 10000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.370144" elapsed="0.000601"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.370900" elapsed="0.000197"/>
</kw>
<var name="${iteration}">10</var>
<status status="PASS" start="2026-05-25T01:55:35.368915" elapsed="0.002220"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.371573" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.371313" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.371298" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.372329" level="INFO">${j} = 11</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.371962" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.373087" level="INFO">${item} =     {
      "group-id": 11,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 11000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.372508" elapsed="0.000609"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.373270" elapsed="0.000180"/>
</kw>
<var name="${iteration}">11</var>
<status status="PASS" start="2026-05-25T01:55:35.371269" elapsed="0.002251"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.373938" elapsed="0.000206"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.373704" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.373689" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.374698" level="INFO">${j} = 12</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.374349" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.375477" level="INFO">${item} =     {
      "group-id": 12,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 12000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.374880" elapsed="0.000626"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.375666" elapsed="0.000182"/>
</kw>
<var name="${iteration}">12</var>
<status status="PASS" start="2026-05-25T01:55:35.373659" elapsed="0.002226"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.376316" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.376080" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.376050" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.377051" level="INFO">${j} = 13</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.376702" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.377819" level="INFO">${item} =     {
      "group-id": 13,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 13000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.377249" elapsed="0.000599"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.378002" elapsed="0.000198"/>
</kw>
<var name="${iteration}">13</var>
<status status="PASS" start="2026-05-25T01:55:35.376020" elapsed="0.002218"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.378655" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.378416" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.378401" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.379418" level="INFO">${j} = 14</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.379042" elapsed="0.000403"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.380183" level="INFO">${item} =     {
      "group-id": 14,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 14000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.379600" elapsed="0.000611"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.380364" elapsed="0.000180"/>
</kw>
<var name="${iteration}">14</var>
<status status="PASS" start="2026-05-25T01:55:35.378373" elapsed="0.002208"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.380990" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.380758" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.380743" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.381858" level="INFO">${j} = 15</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.381394" elapsed="0.000491"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.382632" level="INFO">${item} =     {
      "group-id": 15,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 15000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.382038" elapsed="0.000623"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.382817" elapsed="0.000181"/>
</kw>
<var name="${iteration}">15</var>
<status status="PASS" start="2026-05-25T01:55:35.380715" elapsed="0.002320"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.383493" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.383228" elapsed="0.000487"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.383214" elapsed="0.000525"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.384248" level="INFO">${j} = 16</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.383880" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.384996" level="INFO">${item} =     {
      "group-id": 16,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 16000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.384428" elapsed="0.000631"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.385235" elapsed="0.000185"/>
</kw>
<var name="${iteration}">16</var>
<status status="PASS" start="2026-05-25T01:55:35.383184" elapsed="0.002277"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.385870" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.385636" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.385622" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.386619" level="INFO">${j} = 17</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.386271" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.387396" level="INFO">${item} =     {
      "group-id": 17,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 17000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.386798" elapsed="0.000626"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.387586" elapsed="0.000186"/>
</kw>
<var name="${iteration}">17</var>
<status status="PASS" start="2026-05-25T01:55:35.385593" elapsed="0.002215"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.388237" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.387985" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.387970" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.388970" level="INFO">${j} = 18</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.388623" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.389741" level="INFO">${item} =     {
      "group-id": 18,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 18000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.389166" elapsed="0.000603"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.389924" elapsed="0.000197"/>
</kw>
<var name="${iteration}">18</var>
<status status="PASS" start="2026-05-25T01:55:35.387942" elapsed="0.002217"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.390570" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.390337" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.390323" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.391339" level="INFO">${j} = 19</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.390959" elapsed="0.000406"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.392110" level="INFO">${item} =     {
      "group-id": 19,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 19000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.391520" elapsed="0.000619"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.392293" elapsed="0.000180"/>
</kw>
<var name="${iteration}">19</var>
<status status="PASS" start="2026-05-25T01:55:35.390294" elapsed="0.002217"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.392927" elapsed="0.000197"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.392691" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.392676" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.393675" level="INFO">${j} = 20</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.393330" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.394440" level="INFO">${item} =     {
      "group-id": 20,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 20000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.393855" elapsed="0.000613"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.394627" elapsed="0.000180"/>
</kw>
<var name="${iteration}">20</var>
<status status="PASS" start="2026-05-25T01:55:35.392648" elapsed="0.002197"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.395299" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.395022" elapsed="0.000501"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.395007" elapsed="0.000540"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.396039" level="INFO">${j} = 21</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.395693" elapsed="0.000426"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.396851" level="INFO">${item} =     {
      "group-id": 21,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 21000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.396279" elapsed="0.000600"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.397034" elapsed="0.000198"/>
</kw>
<var name="${iteration}">21</var>
<status status="PASS" start="2026-05-25T01:55:35.394978" elapsed="0.002292"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.397686" elapsed="0.000299"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.397448" elapsed="0.000576"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.397433" elapsed="0.000615"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.398560" level="INFO">${j} = 22</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.398208" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.399343" level="INFO">${item} =     {
      "group-id": 22,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 22000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.398742" elapsed="0.000629"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.399527" elapsed="0.000182"/>
</kw>
<var name="${iteration}">22</var>
<status status="PASS" start="2026-05-25T01:55:35.397404" elapsed="0.002342"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.400184" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.399927" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.399913" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.400923" level="INFO">${j} = 23</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.400571" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.401688" level="INFO">${item} =     {
      "group-id": 23,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 23000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.401119" elapsed="0.000597"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.401871" elapsed="0.000181"/>
</kw>
<var name="${iteration}">23</var>
<status status="PASS" start="2026-05-25T01:55:35.399883" elapsed="0.002221"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.402515" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.402282" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.402267" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.403277" level="INFO">${j} = 24</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.402901" elapsed="0.000403"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.404028" level="INFO">${item} =     {
      "group-id": 24,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 24000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.403458" elapsed="0.000597"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.404227" elapsed="0.000183"/>
</kw>
<var name="${iteration}">24</var>
<status status="PASS" start="2026-05-25T01:55:35.402239" elapsed="0.002207"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.404877" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.404635" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.404615" elapsed="0.000526"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.405632" level="INFO">${j} = 25</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.405283" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.406451" level="INFO">${item} =     {
      "group-id": 25,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 25000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.405811" elapsed="0.000675"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.406676" elapsed="0.000188"/>
</kw>
<var name="${iteration}">25</var>
<status status="PASS" start="2026-05-25T01:55:35.404579" elapsed="0.002323"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.407398" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.407097" elapsed="0.000529"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.407080" elapsed="0.000571"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.408164" level="INFO">${j} = 26</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.407795" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.408918" level="INFO">${item} =     {
      "group-id": 26,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 26000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.408346" elapsed="0.000600"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.409121" elapsed="0.000184"/>
</kw>
<var name="${iteration}">26</var>
<status status="PASS" start="2026-05-25T01:55:35.407035" elapsed="0.002307"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.409754" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.409521" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.409506" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.410507" level="INFO">${j} = 27</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.410158" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.411288" level="INFO">${item} =     {
      "group-id": 27,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 27000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.410693" elapsed="0.000623"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.411470" elapsed="0.000181"/>
</kw>
<var name="${iteration}">27</var>
<status status="PASS" start="2026-05-25T01:55:35.409476" elapsed="0.002212"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.412120" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.411867" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.411852" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.412854" level="INFO">${j} = 28</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.412508" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.413626" level="INFO">${item} =     {
      "group-id": 28,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 28000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.413034" elapsed="0.000620"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.413809" elapsed="0.000181"/>
</kw>
<var name="${iteration}">28</var>
<status status="PASS" start="2026-05-25T01:55:35.411823" elapsed="0.002205"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.414570" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.414224" elapsed="0.000569"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.414209" elapsed="0.000608"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.415339" level="INFO">${j} = 29</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.414959" elapsed="0.000406"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.416104" level="INFO">${item} =     {
      "group-id": 29,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 29000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.415520" elapsed="0.000613"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.416288" elapsed="0.000182"/>
</kw>
<var name="${iteration}">29</var>
<status status="PASS" start="2026-05-25T01:55:35.414180" elapsed="0.002327"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.416918" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.416684" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.416670" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.417675" level="INFO">${j} = 30</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.417327" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.418448" level="INFO">${item} =     {
      "group-id": 30,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 30000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.417855" elapsed="0.000622"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.418666" elapsed="0.000186"/>
</kw>
<var name="${iteration}">30</var>
<status status="PASS" start="2026-05-25T01:55:35.416641" elapsed="0.002249"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.419351" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.419087" elapsed="0.000488"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.419054" elapsed="0.000550"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.420115" level="INFO">${j} = 31</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.419746" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.420873" level="INFO">${item} =     {
      "group-id": 31,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 31000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.420300" elapsed="0.000601"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.421056" elapsed="0.000201"/>
</kw>
<var name="${iteration}">31</var>
<status status="PASS" start="2026-05-25T01:55:35.419025" elapsed="0.002274"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.421708" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.421475" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.421461" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.422459" level="INFO">${j} = 32</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.422112" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.423245" level="INFO">${item} =     {
      "group-id": 32,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 32000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.422640" elapsed="0.000633"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.423428" elapsed="0.000182"/>
</kw>
<var name="${iteration}">32</var>
<status status="PASS" start="2026-05-25T01:55:35.421432" elapsed="0.002215"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.424054" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.423822" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.423808" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.424810" level="INFO">${j} = 33</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.424459" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.425577" level="INFO">${item} =     {
      "group-id": 33,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 33000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.424989" elapsed="0.000616"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.425759" elapsed="0.000182"/>
</kw>
<var name="${iteration}">33</var>
<status status="PASS" start="2026-05-25T01:55:35.423779" elapsed="0.002199"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.426412" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.426177" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.426160" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.427174" level="INFO">${j} = 34</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.426798" elapsed="0.000405"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.427926" level="INFO">${item} =     {
      "group-id": 34,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 34000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.427358" elapsed="0.000596"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.428123" elapsed="0.000184"/>
</kw>
<var name="${iteration}">34</var>
<status status="PASS" start="2026-05-25T01:55:35.426129" elapsed="0.002216"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.428761" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.428523" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.428508" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.429511" level="INFO">${j} = 35</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.429163" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.430324" level="INFO">${item} =     {
      "group-id": 35,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 35000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.429733" elapsed="0.000620"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.430509" elapsed="0.000181"/>
</kw>
<var name="${iteration}">35</var>
<status status="PASS" start="2026-05-25T01:55:35.428478" elapsed="0.002250"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.431303" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.431016" elapsed="0.000512"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.430894" elapsed="0.000659"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.432043" level="INFO">${j} = 36</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.431695" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.432820" level="INFO">${item} =     {
      "group-id": 36,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 36000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.432244" elapsed="0.000604"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.433004" elapsed="0.000205"/>
</kw>
<var name="${iteration}">36</var>
<status status="PASS" start="2026-05-25T01:55:35.430865" elapsed="0.002382"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.433660" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.433426" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.433412" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.434409" level="INFO">${j} = 37</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.434043" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.435186" level="INFO">${item} =     {
      "group-id": 37,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 37000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.434589" elapsed="0.000625"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.435368" elapsed="0.000180"/>
</kw>
<var name="${iteration}">37</var>
<status status="PASS" start="2026-05-25T01:55:35.433383" elapsed="0.002201"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.435992" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.435760" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.435746" elapsed="0.000507"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.436739" level="INFO">${j} = 38</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.436394" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.437540" level="INFO">${item} =     {
      "group-id": 38,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 38000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.436920" elapsed="0.000649"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.437723" elapsed="0.000182"/>
</kw>
<var name="${iteration}">38</var>
<status status="PASS" start="2026-05-25T01:55:35.435717" elapsed="0.002225"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.438369" elapsed="0.000194"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.438135" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.438120" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.439170" level="INFO">${j} = 39</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.438787" elapsed="0.000409"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.439919" level="INFO">${item} =     {
      "group-id": 39,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 39000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.439349" elapsed="0.000597"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.440115" elapsed="0.000184"/>
</kw>
<var name="${iteration}">39</var>
<status status="PASS" start="2026-05-25T01:55:35.438090" elapsed="0.002246"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.440747" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.440514" elapsed="0.000484"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.440497" elapsed="0.000529"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.441542" level="INFO">${j} = 40</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.441188" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.442312" level="INFO">${item} =     {
      "group-id": 40,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 40000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.441728" elapsed="0.000612"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.442496" elapsed="0.000180"/>
</kw>
<var name="${iteration}">40</var>
<status status="PASS" start="2026-05-25T01:55:35.440468" elapsed="0.002245"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.443169" elapsed="0.000192"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.442889" elapsed="0.000510"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.442875" elapsed="0.000549"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.443915" level="INFO">${j} = 41</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.443567" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.444693" level="INFO">${item} =     {
      "group-id": 41,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 41000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.444117" elapsed="0.000604"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.444874" elapsed="0.000179"/>
</kw>
<var name="${iteration}">41</var>
<status status="PASS" start="2026-05-25T01:55:35.442847" elapsed="0.002260"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.445520" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.445285" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.445271" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.446275" level="INFO">${j} = 42</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.445911" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.447036" level="INFO">${item} =     {
      "group-id": 42,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 42000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.446455" elapsed="0.000634"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.447246" elapsed="0.000181"/>
</kw>
<var name="${iteration}">42</var>
<status status="PASS" start="2026-05-25T01:55:35.445242" elapsed="0.002223"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.447993" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.447754" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.447630" elapsed="0.000627"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.448744" level="INFO">${j} = 43</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.448399" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.449510" level="INFO">${item} =     {
      "group-id": 43,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 43000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.448924" elapsed="0.000614"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.449690" elapsed="0.000181"/>
</kw>
<var name="${iteration}">43</var>
<status status="PASS" start="2026-05-25T01:55:35.447601" elapsed="0.002307"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.450335" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.450101" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.450085" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.451107" level="INFO">${j} = 44</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.450719" elapsed="0.000416"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.451867" level="INFO">${item} =     {
      "group-id": 44,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 44000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.451290" elapsed="0.000605"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.452048" elapsed="0.000199"/>
</kw>
<var name="${iteration}">44</var>
<status status="PASS" start="2026-05-25T01:55:35.450041" elapsed="0.002275"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.452730" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.452498" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.452483" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.453482" level="INFO">${j} = 45</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.453130" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.454247" level="INFO">${item} =     {
      "group-id": 45,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 45000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.453663" elapsed="0.000612"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.454430" elapsed="0.000184"/>
</kw>
<var name="${iteration}">45</var>
<status status="PASS" start="2026-05-25T01:55:35.452453" elapsed="0.002200"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.455107" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.454830" elapsed="0.000502"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.454816" elapsed="0.000540"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.455845" level="INFO">${j} = 46</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.455499" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.456611" level="INFO">${item} =     {
      "group-id": 46,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 46000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.456026" elapsed="0.000613"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.456792" elapsed="0.000182"/>
</kw>
<var name="${iteration}">46</var>
<status status="PASS" start="2026-05-25T01:55:35.454787" elapsed="0.002223"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.457441" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.457209" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.457194" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.458188" level="INFO">${j} = 47</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.457825" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.458932" level="INFO">${item} =     {
      "group-id": 47,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 47000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.458367" elapsed="0.000607"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.459149" elapsed="0.000183"/>
</kw>
<var name="${iteration}">47</var>
<status status="PASS" start="2026-05-25T01:55:35.457164" elapsed="0.002205"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.459782" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.459549" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.459533" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.460534" level="INFO">${j} = 48</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.460186" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.461309" level="INFO">${item} =     {
      "group-id": 48,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 48000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.460722" elapsed="0.000615"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.461490" elapsed="0.000180"/>
</kw>
<var name="${iteration}">48</var>
<status status="PASS" start="2026-05-25T01:55:35.459503" elapsed="0.002203"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.462133" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.461885" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.461870" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.462864" level="INFO">${j} = 49</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.462518" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.463648" level="INFO">${item} =     {
      "group-id": 49,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 49000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.463056" elapsed="0.000650"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.463862" elapsed="0.000180"/>
</kw>
<var name="${iteration}">49</var>
<status status="PASS" start="2026-05-25T01:55:35.461841" elapsed="0.002254"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.464624" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.464383" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.464262" elapsed="0.000607"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.465383" level="INFO">${j} = 50</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.465011" elapsed="0.000398"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.466156" level="INFO">${item} =     {
      "group-id": 50,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 50000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.465565" elapsed="0.000619"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.466340" elapsed="0.000181"/>
</kw>
<var name="${iteration}">50</var>
<status status="PASS" start="2026-05-25T01:55:35.464232" elapsed="0.002326"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.467001" elapsed="0.000209"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.466738" elapsed="0.000511"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.466724" elapsed="0.000549"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.467762" level="INFO">${j} = 51</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.467414" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.468524" level="INFO">${item} =     {
      "group-id": 51,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 51000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.467941" elapsed="0.000611"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.468706" elapsed="0.000180"/>
</kw>
<var name="${iteration}">51</var>
<status status="PASS" start="2026-05-25T01:55:35.466694" elapsed="0.002229"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.469351" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.469116" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.469101" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.470098" level="INFO">${j} = 52</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.469735" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.470848" level="INFO">${item} =     {
      "group-id": 52,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 52000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.470281" elapsed="0.000594"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.471044" elapsed="0.000202"/>
</kw>
<var name="${iteration}">52</var>
<status status="PASS" start="2026-05-25T01:55:35.469056" elapsed="0.002227"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.471694" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.471461" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.471446" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.472445" level="INFO">${j} = 53</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.472096" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.473207" level="INFO">${item} =     {
      "group-id": 53,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 53000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.472624" elapsed="0.000611"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.473390" elapsed="0.000180"/>
</kw>
<var name="${iteration}">53</var>
<status status="PASS" start="2026-05-25T01:55:35.471417" elapsed="0.002195"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.474023" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.473789" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.473774" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.474772" level="INFO">${j} = 54</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.474424" elapsed="0.000410"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.475603" level="INFO">${item} =     {
      "group-id": 54,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 54000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.475010" elapsed="0.000621"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.475787" elapsed="0.000181"/>
</kw>
<var name="${iteration}">54</var>
<status status="PASS" start="2026-05-25T01:55:35.473745" elapsed="0.002260"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.476432" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.476200" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.476185" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.477186" level="INFO">${j} = 55</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.476818" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.477931" level="INFO">${item} =     {
      "group-id": 55,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 55000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.477365" elapsed="0.000594"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.478129" elapsed="0.000184"/>
</kw>
<var name="${iteration}">55</var>
<status status="PASS" start="2026-05-25T01:55:35.476155" elapsed="0.002195"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.478763" elapsed="0.000209"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.478528" elapsed="0.000482"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.478514" elapsed="0.000521"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.479548" level="INFO">${j} = 56</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.479197" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.480316" level="INFO">${item} =     {
      "group-id": 56,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 56000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.479733" elapsed="0.000612"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.480499" elapsed="0.000179"/>
</kw>
<var name="${iteration}">56</var>
<status status="PASS" start="2026-05-25T01:55:35.478484" elapsed="0.002232"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.481860" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.481613" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.480880" elapsed="0.001248"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.482626" level="INFO">${j} = 57</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.482272" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.483419" level="INFO">${item} =     {
      "group-id": 57,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 57000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.482808" elapsed="0.000639"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.483601" elapsed="0.000182"/>
</kw>
<var name="${iteration}">57</var>
<status status="PASS" start="2026-05-25T01:55:35.480851" elapsed="0.002969"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.484249" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.483998" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.483983" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.484982" level="INFO">${j} = 58</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.484635" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.485744" level="INFO">${item} =     {
      "group-id": 58,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 58000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.485178" elapsed="0.000594"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.485927" elapsed="0.000197"/>
</kw>
<var name="${iteration}">58</var>
<status status="PASS" start="2026-05-25T01:55:35.483953" elapsed="0.002208"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.486607" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.486339" elapsed="0.000490"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.486325" elapsed="0.000543"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.487382" level="INFO">${j} = 59</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.487011" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.488145" level="INFO">${item} =     {
      "group-id": 59,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 59000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.487562" elapsed="0.000611"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.488327" elapsed="0.000180"/>
</kw>
<var name="${iteration}">59</var>
<status status="PASS" start="2026-05-25T01:55:35.486295" elapsed="0.002250"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.488959" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.488726" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.488711" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.489707" level="INFO">${j} = 60</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.489360" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.490471" level="INFO">${item} =     {
      "group-id": 60,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 60000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.489886" elapsed="0.000613"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.490653" elapsed="0.000205"/>
</kw>
<var name="${iteration}">60</var>
<status status="PASS" start="2026-05-25T01:55:35.488682" elapsed="0.002214"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.491332" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.491097" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.491080" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.492081" level="INFO">${j} = 61</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.491719" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.492838" level="INFO">${item} =     {
      "group-id": 61,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 61000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.492264" elapsed="0.000602"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.493021" elapsed="0.000198"/>
</kw>
<var name="${iteration}">61</var>
<status status="PASS" start="2026-05-25T01:55:35.491033" elapsed="0.002224"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.493669" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.493435" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.493421" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.494421" level="INFO">${j} = 62</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.494054" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.495212" level="INFO">${item} =     {
      "group-id": 62,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 62000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.494603" elapsed="0.000637"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.495395" elapsed="0.000182"/>
</kw>
<var name="${iteration}">62</var>
<status status="PASS" start="2026-05-25T01:55:35.493391" elapsed="0.002223"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.496026" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.495793" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.495778" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.496781" level="INFO">${j} = 63</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.496433" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.497544" level="INFO">${item} =     {
      "group-id": 63,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 63000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.496961" elapsed="0.000611"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.497759" elapsed="0.000184"/>
</kw>
<var name="${iteration}">63</var>
<status status="PASS" start="2026-05-25T01:55:35.495749" elapsed="0.002231"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.498525" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.498286" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.498161" elapsed="0.000610"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.499332" level="INFO">${j} = 64</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.498949" elapsed="0.000408"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.500103" level="INFO">${item} =     {
      "group-id": 64,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 64000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.499514" elapsed="0.000618"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.500287" elapsed="0.000183"/>
</kw>
<var name="${iteration}">64</var>
<status status="PASS" start="2026-05-25T01:55:35.498131" elapsed="0.002377"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.500920" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.500685" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.500670" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.501678" level="INFO">${j} = 65</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.501323" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.502443" level="INFO">${item} =     {
      "group-id": 65,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 65000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.501858" elapsed="0.000613"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.502626" elapsed="0.000207"/>
</kw>
<var name="${iteration}">65</var>
<status status="PASS" start="2026-05-25T01:55:35.500641" elapsed="0.002230"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.503308" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.503054" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.503039" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.504043" level="INFO">${j} = 66</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.503693" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.504811" level="INFO">${item} =     {
      "group-id": 66,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 66000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.504241" elapsed="0.000598"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.504994" elapsed="0.000198"/>
</kw>
<var name="${iteration}">66</var>
<status status="PASS" start="2026-05-25T01:55:35.503010" elapsed="0.002220"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.505640" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.505407" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.505392" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.506390" level="INFO">${j} = 67</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.506026" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.507172" level="INFO">${item} =     {
      "group-id": 67,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 67000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.506572" elapsed="0.000628"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.507355" elapsed="0.000182"/>
</kw>
<var name="${iteration}">67</var>
<status status="PASS" start="2026-05-25T01:55:35.505363" elapsed="0.002211"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.507993" elapsed="0.000205"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.507759" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.507742" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.508755" level="INFO">${j} = 68</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.508401" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.509556" level="INFO">${item} =     {
      "group-id": 68,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 68000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.508968" elapsed="0.000616"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.509740" elapsed="0.000181"/>
</kw>
<var name="${iteration}">68</var>
<status status="PASS" start="2026-05-25T01:55:35.507712" elapsed="0.002245"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.510386" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.510151" elapsed="0.000463"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.510136" elapsed="0.000503"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.511173" level="INFO">${j} = 69</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.510802" elapsed="0.000398"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.511920" level="INFO">${item} =     {
      "group-id": 69,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 69000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.511355" elapsed="0.000594"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.512119" elapsed="0.000184"/>
</kw>
<var name="${iteration}">69</var>
<status status="PASS" start="2026-05-25T01:55:35.510105" elapsed="0.002235"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.512753" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.512519" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.512504" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.513505" level="INFO">${j} = 70</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.513155" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.514273" level="INFO">${item} =     {
      "group-id": 70,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 70000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.513686" elapsed="0.000615"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.514457" elapsed="0.000182"/>
</kw>
<var name="${iteration}">70</var>
<status status="PASS" start="2026-05-25T01:55:35.512475" elapsed="0.002201"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.515253" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.514993" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.514865" elapsed="0.000636"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.515993" level="INFO">${j} = 71</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.515644" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.516767" level="INFO">${item} =     {
      "group-id": 71,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 71000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.516190" elapsed="0.000605"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.516950" elapsed="0.000200"/>
</kw>
<var name="${iteration}">71</var>
<status status="PASS" start="2026-05-25T01:55:35.514835" elapsed="0.002353"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.517601" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.517367" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.517352" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.518364" level="INFO">${j} = 72</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.517996" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.519153" level="INFO">${item} =     {
      "group-id": 72,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 72000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.518546" elapsed="0.000635"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.519337" elapsed="0.000180"/>
</kw>
<var name="${iteration}">72</var>
<status status="PASS" start="2026-05-25T01:55:35.517323" elapsed="0.002231"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.519968" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.519734" elapsed="0.000502"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.519719" elapsed="0.000544"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.520763" level="INFO">${j} = 73</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.520408" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.521533" level="INFO">${item} =     {
      "group-id": 73,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 73000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.520944" elapsed="0.000618"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.521716" elapsed="0.000187"/>
</kw>
<var name="${iteration}">73</var>
<status status="PASS" start="2026-05-25T01:55:35.519689" elapsed="0.002251"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.522374" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.522138" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.522123" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.523149" level="INFO">${j} = 74</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.522775" elapsed="0.000401"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.523900" level="INFO">${item} =     {
      "group-id": 74,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 74000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.523331" elapsed="0.000598"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.524099" elapsed="0.000182"/>
</kw>
<var name="${iteration}">74</var>
<status status="PASS" start="2026-05-25T01:55:35.522092" elapsed="0.002226"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.524726" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.524494" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.524479" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.525475" level="INFO">${j} = 75</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.525126" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.526238" level="INFO">${item} =     {
      "group-id": 75,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 75000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.525654" elapsed="0.000612"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.526419" elapsed="0.000181"/>
</kw>
<var name="${iteration}">75</var>
<status status="PASS" start="2026-05-25T01:55:35.524451" elapsed="0.002190"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.527104" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.526854" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.526839" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.527842" level="INFO">${j} = 76</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.527495" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.528611" level="INFO">${item} =     {
      "group-id": 76,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 76000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.528021" elapsed="0.000618"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.528791" elapsed="0.000180"/>
</kw>
<var name="${iteration}">76</var>
<status status="PASS" start="2026-05-25T01:55:35.526810" elapsed="0.002197"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.529436" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.529203" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.529187" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.530187" level="INFO">${j} = 77</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.529825" elapsed="0.000388"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.530948" level="INFO">${item} =     {
      "group-id": 77,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 77000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.530366" elapsed="0.000610"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.531188" elapsed="0.000184"/>
</kw>
<var name="${iteration}">77</var>
<status status="PASS" start="2026-05-25T01:55:35.529156" elapsed="0.002289"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.531978" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.531736" elapsed="0.000485"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.531612" elapsed="0.000634"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.532738" level="INFO">${j} = 78</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.532388" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.533506" level="INFO">${item} =     {
      "group-id": 78,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 78000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.532919" elapsed="0.000615"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.533695" elapsed="0.000180"/>
</kw>
<var name="${iteration}">78</var>
<status status="PASS" start="2026-05-25T01:55:35.531582" elapsed="0.002330"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.534349" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.534110" elapsed="0.000462"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.534094" elapsed="0.000505"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.535132" level="INFO">${j} = 79</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.534758" elapsed="0.000400"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.535882" level="INFO">${item} =     {
      "group-id": 79,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 79000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.535314" elapsed="0.000596"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.536080" elapsed="0.000183"/>
</kw>
<var name="${iteration}">79</var>
<status status="PASS" start="2026-05-25T01:55:35.534049" elapsed="0.002251"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.536724" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.536486" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.536471" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.537470" level="INFO">${j} = 80</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.537123" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.538231" level="INFO">${item} =     {
      "group-id": 80,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 80000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.537649" elapsed="0.000609"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.538410" elapsed="0.000180"/>
</kw>
<var name="${iteration}">80</var>
<status status="PASS" start="2026-05-25T01:55:35.536435" elapsed="0.002217"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.539085" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.538835" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.538820" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.539819" level="INFO">${j} = 81</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.539473" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.540584" level="INFO">${item} =     {
      "group-id": 81,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 81000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.539998" elapsed="0.000614"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.540764" elapsed="0.000180"/>
</kw>
<var name="${iteration}">81</var>
<status status="PASS" start="2026-05-25T01:55:35.538791" elapsed="0.002190"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.541408" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.541174" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.541159" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.542157" level="INFO">${j} = 82</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.541794" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.542922" level="INFO">${item} =     {
      "group-id": 82,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 82000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.542336" elapsed="0.000645"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.543159" elapsed="0.000185"/>
</kw>
<var name="${iteration}">82</var>
<status status="PASS" start="2026-05-25T01:55:35.541130" elapsed="0.002252"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.543799" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.543560" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.543545" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.544550" level="INFO">${j} = 83</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.544202" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.545313" level="INFO">${item} =     {
      "group-id": 83,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 83000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.544729" elapsed="0.000612"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.545495" elapsed="0.000181"/>
</kw>
<var name="${iteration}">83</var>
<status status="PASS" start="2026-05-25T01:55:35.543516" elapsed="0.002197"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.546139" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.545891" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.545877" elapsed="0.000507"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.546891" level="INFO">${j} = 84</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.546525" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.547692" level="INFO">${item} =     {
      "group-id": 84,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 84000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.547089" elapsed="0.000631"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.547872" elapsed="0.000182"/>
</kw>
<var name="${iteration}">84</var>
<status status="PASS" start="2026-05-25T01:55:35.545848" elapsed="0.002260"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.548640" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.548399" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.548275" elapsed="0.000613"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.549396" level="INFO">${j} = 85</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.549029" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.550157" level="INFO">${item} =     {
      "group-id": 85,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 85000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.549575" elapsed="0.000610"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.550340" elapsed="0.000181"/>
</kw>
<var name="${iteration}">85</var>
<status status="PASS" start="2026-05-25T01:55:35.548246" elapsed="0.002312"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.551003" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.550770" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.550755" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.551756" level="INFO">${j} = 86</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.551408" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.552531" level="INFO">${item} =     {
      "group-id": 86,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 86000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.551937" elapsed="0.000622"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.552713" elapsed="0.000181"/>
</kw>
<var name="${iteration}">86</var>
<status status="PASS" start="2026-05-25T01:55:35.550726" elapsed="0.002205"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.553362" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.553127" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.553112" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.554115" level="INFO">${j} = 87</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.553752" elapsed="0.000422"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.554928" level="INFO">${item} =     {
      "group-id": 87,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 87000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.554336" elapsed="0.000620"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.555139" elapsed="0.000185"/>
</kw>
<var name="${iteration}">87</var>
<status status="PASS" start="2026-05-25T01:55:35.553080" elapsed="0.002282"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.555773" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.555539" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.555524" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.556528" level="INFO">${j} = 88</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.556179" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.557294" level="INFO">${item} =     {
      "group-id": 88,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 88000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.556708" elapsed="0.000614"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.557478" elapsed="0.000180"/>
</kw>
<var name="${iteration}">88</var>
<status status="PASS" start="2026-05-25T01:55:35.555495" elapsed="0.002200"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.558121" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.557871" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.557856" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.558880" level="INFO">${j} = 89</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.558509" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.559703" level="INFO">${item} =     {
      "group-id": 89,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 89000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.559107" elapsed="0.000631"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.559900" elapsed="0.000199"/>
</kw>
<var name="${iteration}">89</var>
<status status="PASS" start="2026-05-25T01:55:35.557827" elapsed="0.002310"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.560548" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.560315" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.560300" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.561293" level="INFO">${j} = 90</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.560932" elapsed="0.000387"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.562043" level="INFO">${item} =     {
      "group-id": 90,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 90000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.561473" elapsed="0.000613"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.562240" elapsed="0.000180"/>
</kw>
<var name="${iteration}">90</var>
<status status="PASS" start="2026-05-25T01:55:35.560270" elapsed="0.002186"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.562899" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.562665" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.562650" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.563658" level="INFO">${j} = 91</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.563307" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.564423" level="INFO">${item} =     {
      "group-id": 91,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 91000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.563837" elapsed="0.000614"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.564605" elapsed="0.000186"/>
</kw>
<var name="${iteration}">91</var>
<status status="PASS" start="2026-05-25T01:55:35.562620" elapsed="0.002207"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.565413" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.565131" elapsed="0.000508"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.564990" elapsed="0.000674"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.566172" level="INFO">${j} = 92</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.565807" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.566940" level="INFO">${item} =     {
      "group-id": 92,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 92000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.566355" elapsed="0.000613"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.567139" elapsed="0.000183"/>
</kw>
<var name="${iteration}">92</var>
<status status="PASS" start="2026-05-25T01:55:35.564961" elapsed="0.002399"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.567770" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.567537" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.567522" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.568541" level="INFO">${j} = 93</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.568176" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.569317" level="INFO">${item} =     {
      "group-id": 93,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 93000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.568728" elapsed="0.000617"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.569499" elapsed="0.000182"/>
</kw>
<var name="${iteration}">93</var>
<status status="PASS" start="2026-05-25T01:55:35.567493" elapsed="0.002225"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.570145" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.569896" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.569881" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.570900" level="INFO">${j} = 94</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.570546" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.571667" level="INFO">${item} =     {
      "group-id": 94,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 94000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.571097" elapsed="0.000598"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.571848" elapsed="0.000180"/>
</kw>
<var name="${iteration}">94</var>
<status status="PASS" start="2026-05-25T01:55:35.569852" elapsed="0.002226"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.572491" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.572259" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.572244" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.573238" level="INFO">${j} = 95</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.572872" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.573983" level="INFO">${item} =     {
      "group-id": 95,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 95000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.573418" elapsed="0.000593"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.574180" elapsed="0.000192"/>
</kw>
<var name="${iteration}">95</var>
<status status="PASS" start="2026-05-25T01:55:35.572215" elapsed="0.002195"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.574862" elapsed="0.000195"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.574626" elapsed="0.000493"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.574609" elapsed="0.000534"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.575656" level="INFO">${j} = 96</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.575297" elapsed="0.000386"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.576422" level="INFO">${item} =     {
      "group-id": 96,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 96000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.575836" elapsed="0.000614"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.576640" elapsed="0.000183"/>
</kw>
<var name="${iteration}">96</var>
<status status="PASS" start="2026-05-25T01:55:35.574576" elapsed="0.002284"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.577288" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.577037" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.577022" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.578029" level="INFO">${j} = 97</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.577681" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.578861" level="INFO">${item} =     {
      "group-id": 97,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 97000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.578227" elapsed="0.000663"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.579046" elapsed="0.000202"/>
</kw>
<var name="${iteration}">97</var>
<status status="PASS" start="2026-05-25T01:55:35.576993" elapsed="0.002293"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.579696" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.579462" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.579447" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.580446" level="INFO">${j} = 98</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.580097" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.581207" level="INFO">${item} =     {
      "group-id": 98,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 98000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.580626" elapsed="0.000609"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.581388" elapsed="0.000181"/>
</kw>
<var name="${iteration}">98</var>
<status status="PASS" start="2026-05-25T01:55:35.579419" elapsed="0.002188"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.582145" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.581889" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.581767" elapsed="0.000625"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.582907" level="INFO">${j} = 99</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.582554" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.583680" level="INFO">${item} =     {
      "group-id": 99,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 99000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.583104" elapsed="0.000604"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.583863" elapsed="0.000182"/>
</kw>
<var name="${iteration}">99</var>
<status status="PASS" start="2026-05-25T01:55:35.581739" elapsed="0.002359"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.584510" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.584276" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.584260" elapsed="0.000505"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.585281" level="INFO">${j} = 100</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.584915" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.586027" level="INFO">${item} =     {
      "group-id": 100,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 100000,
            "action": [
              {
                "...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.585462" elapsed="0.000598"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.586277" elapsed="0.000228"/>
</kw>
<var name="${iteration}">100</var>
<status status="PASS" start="2026-05-25T01:55:35.584231" elapsed="0.002312"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="PASS" start="2026-05-25T01:55:35.347229" elapsed="0.239344"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.587857" level="INFO">${final_text} = {
  "flow-node-inventory:group": [
    {
      "group-id": 1,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 1000,
            "action": [
  ...</msg>
<var>${final_text}</var>
<arg>SEPARATOR=</arg>
<arg>${prolog}</arg>
<arg>${endline}</arg>
<arg>@{items}</arg>
<arg>${endline}</arg>
<arg>${epilog}</arg>
<doc>Catenates the given items together and returns the resulted string.</doc>
<status status="PASS" start="2026-05-25T01:55:35.586732" elapsed="0.001153"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:35.587977" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:55:35.588163" level="INFO">${data} = {
  "flow-node-inventory:group": [
    {
      "group-id": 1,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 1000,
            "action": [
  ...</msg>
<var>${data}</var>
<arg>folder=${folder}</arg>
<arg>name_prefix=post_</arg>
<arg>base_name=${base_name}</arg>
<arg>extension=${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>endline=${endline}</arg>
<arg>iterations=${iterations}</arg>
<arg>iter_start=${iter_start}</arg>
<arg>iter_j_offset=${iter_j_offset}</arg>
<doc>Read a template from folder, strip endline, make changes according to mapping, return the result.
If ${iterations} value is present, put text together from "prolog", "item" and "epilog" parts,
where additional template variable ${i} goes from 1, by one 100 times.
Template variable ${j} is calculated as ${i} incremented by offset 0 ( j = i + iter_j_offset )
used to create non uniform data in order to be able to validate UPDATE operations.
POST (as opposed to PUT) needs slightly different data, ${name_prefix} may be used to distinguish.
(Actually, it is GET who formats data differently when URI is a top-level container.)</doc>
<status status="PASS" start="2026-05-25T01:55:35.293446" elapsed="0.294744"/>
</kw>
<kw name="Resolve_Jmes_Path" owner="TemplatedRequests">
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:35.589530" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2/jmespath.expr' does not exist.</msg>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:35.589257" elapsed="0.000346">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2/jmespath.expr' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:35.589701" level="INFO">${read_jmes_file} = False</msg>
<var>${read_jmes_file}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:35.588893" elapsed="0.000833"/>
</kw>
<if>
<branch type="IF" condition="${read_jmes_file} == ${true}">
<kw name="Get File" owner="OperatingSystem">
<var>${jmes_expression}</var>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.590038" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:35.589795" elapsed="0.000317"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.590648" level="INFO">${jmes_expression} = None</msg>
<var>${jmes_expression}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:35.590336" elapsed="0.000338"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.590137" elapsed="0.000572"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.589777" elapsed="0.000954"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.593041" level="INFO">${expression} = </msg>
<var>${expression}</var>
<arg>${read_jmes_file} == ${true}</arg>
<arg>${jmes_expression}</arg>
<arg>${EMPTY}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:35.590887" elapsed="0.002193"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-05-25T01:55:35.593133" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:35.593286" level="INFO">${jmes_expression} = </msg>
<var>${jmes_expression}</var>
<arg>${folder}</arg>
<doc>Reads JMES path from file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/jmespath.expr if the file exists and
returns the JMES path. Empty string is returned otherwise.</doc>
<status status="PASS" start="2026-05-25T01:55:35.588551" elapsed="0.004760"/>
</kw>
<kw name="Post_To_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.594864" level="INFO">/rests/data/opendaylight-inventory:nodes/node=openflow%3A1</msg>
<arg>${uri}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:35.594592" elapsed="0.000317"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.595318" level="INFO">{
  "flow-node-inventory:group": [
    {
      "group-id": 1,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 1000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 1000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-1",
      "group-type": "group-ff"
    },
    {
      "group-id": 2,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 2000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 2000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-2",
      "group-type": "group-ff"
    },
    {
      "group-id": 3,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 3000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 3000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-3",
      "group-type": "group-ff"
    },
    {
      "group-id": 4,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 4000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 4000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-4",
      "group-type": "group-ff"
    },
    {
      "group-id": 5,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 5000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 5000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-5",
      "group-type": "group-ff"
    },
    {
      "group-id": 6,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 6000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 6000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-6",
      "group-type": "group-ff"
    },
    {
      "group-id": 7,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 7000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 7000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-7",
      "group-type": "group-ff"
    },
    {
      "group-id": 8,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 8000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 8000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-8",
      "group-type": "group-ff"
    },
    {
      "group-id": 9,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 9000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 9000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-9",
      "group-type": "group-ff"
    },
    {
      "group-id": 10,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 10000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 10000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-10",
      "group-type": "group-ff"
    },
    {
      "group-id": 11,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 11000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 11000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-11",
      "group-type": "group-ff"
    },
    {
      "group-id": 12,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 12000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 12000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-12",
      "group-type": "group-ff"
    },
    {
      "group-id": 13,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 13000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 13000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-13",
      "group-type": "group-ff"
    },
    {
      "group-id": 14,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 14000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 14000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-14",
      "group-type": "group-ff"
    },
    {
      "group-id": 15,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 15000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 15000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-15",
      "group-type": "group-ff"
    },
    {
      "group-id": 16,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 16000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 16000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-16",
      "group-type": "group-ff"
    },
    {
      "group-id": 17,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 17000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 17000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-17",
      "group-type": "group-ff"
    },
    {
      "group-id": 18,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 18000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 18000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-18",
      "group-type": "group-ff"
    },
    {
      "group-id": 19,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 19000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 19000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-19",
      "group-type": "group-ff"
    },
    {
      "group-id": 20,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 20000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 20000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-20",
      "group-type": "group-ff"
    },
    {
      "group-id": 21,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 21000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 21000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-21",
      "group-type": "group-ff"
    },
    {
      "group-id": 22,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 22000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 22000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-22",
      "group-type": "group-ff"
    },
    {
      "group-id": 23,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 23000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 23000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-23",
      "group-type": "group-ff"
    },
    {
      "group-id": 24,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 24000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 24000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-24",
      "group-type": "group-ff"
    },
    {
      "group-id": 25,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 25000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 25000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-25",
      "group-type": "group-ff"
    },
    {
      "group-id": 26,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 26000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 26000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-26",
      "group-type": "group-ff"
    },
    {
      "group-id": 27,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 27000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 27000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-27",
      "group-type": "group-ff"
    },
    {
      "group-id": 28,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 28000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 28000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-28",
      "group-type": "group-ff"
    },
    {
      "group-id": 29,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 29000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 29000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-29",
      "group-type": "group-ff"
    },
    {
      "group-id": 30,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 30000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 30000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-30",
      "group-type": "group-ff"
    },
    {
      "group-id": 31,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 31000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 31000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-31",
      "group-type": "group-ff"
    },
    {
      "group-id": 32,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 32000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 32000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-32",
      "group-type": "group-ff"
    },
    {
      "group-id": 33,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 33000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 33000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-33",
      "group-type": "group-ff"
    },
    {
      "group-id": 34,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 34000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 34000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-34",
      "group-type": "group-ff"
    },
    {
      "group-id": 35,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 35000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 35000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-35",
      "group-type": "group-ff"
    },
    {
      "group-id": 36,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 36000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 36000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-36",
      "group-type": "group-ff"
    },
    {
      "group-id": 37,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 37000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 37000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-37",
      "group-type": "group-ff"
    },
    {
      "group-id": 38,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 38000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 38000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-38",
      "group-type": "group-ff"
    },
    {
      "group-id": 39,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 39000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 39000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-39",
      "group-type": "group-ff"
    },
    {
      "group-id": 40,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 40000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 40000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-40",
      "group-type": "group-ff"
    },
    {
      "group-id": 41,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 41000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 41000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-41",
      "group-type": "group-ff"
    },
    {
      "group-id": 42,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 42000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 42000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-42",
      "group-type": "group-ff"
    },
    {
      "group-id": 43,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 43000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 43000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-43",
      "group-type": "group-ff"
    },
    {
      "group-id": 44,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 44000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 44000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-44",
      "group-type": "group-ff"
    },
    {
      "group-id": 45,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 45000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 45000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-45",
      "group-type": "group-ff"
    },
    {
      "group-id": 46,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 46000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 46000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-46",
      "group-type": "group-ff"
    },
    {
      "group-id": 47,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 47000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 47000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-47",
      "group-type": "group-ff"
    },
    {
      "group-id": 48,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 48000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 48000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-48",
      "group-type": "group-ff"
    },
    {
      "group-id": 49,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 49000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 49000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-49",
      "group-type": "group-ff"
    },
    {
      "group-id": 50,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 50000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 50000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-50",
      "group-type": "group-ff"
    },
    {
      "group-id": 51,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 51000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 51000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-51",
      "group-type": "group-ff"
    },
    {
      "group-id": 52,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 52000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 52000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-52",
      "group-type": "group-ff"
    },
    {
      "group-id": 53,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 53000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 53000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-53",
      "group-type": "group-ff"
    },
    {
      "group-id": 54,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 54000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 54000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-54",
      "group-type": "group-ff"
    },
    {
      "group-id": 55,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 55000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 55000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-55",
      "group-type": "group-ff"
    },
    {
      "group-id": 56,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 56000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 56000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-56",
      "group-type": "group-ff"
    },
    {
      "group-id": 57,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 57000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 57000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-57",
      "group-type": "group-ff"
    },
    {
      "group-id": 58,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 58000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 58000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-58",
      "group-type": "group-ff"
    },
    {
      "group-id": 59,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 59000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 59000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-59",
      "group-type": "group-ff"
    },
    {
      "group-id": 60,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 60000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 60000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-60",
      "group-type": "group-ff"
    },
    {
      "group-id": 61,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 61000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 61000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-61",
      "group-type": "group-ff"
    },
    {
      "group-id": 62,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 62000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 62000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-62",
      "group-type": "group-ff"
    },
    {
      "group-id": 63,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 63000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 63000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-63",
      "group-type": "group-ff"
    },
    {
      "group-id": 64,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 64000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 64000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-64",
      "group-type": "group-ff"
    },
    {
      "group-id": 65,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 65000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 65000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-65",
      "group-type": "group-ff"
    },
    {
      "group-id": 66,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 66000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 66000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-66",
      "group-type": "group-ff"
    },
    {
      "group-id": 67,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 67000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 67000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-67",
      "group-type": "group-ff"
    },
    {
      "group-id": 68,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 68000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 68000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-68",
      "group-type": "group-ff"
    },
    {
      "group-id": 69,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 69000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 69000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-69",
      "group-type": "group-ff"
    },
    {
      "group-id": 70,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 70000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 70000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-70",
      "group-type": "group-ff"
    },
    {
      "group-id": 71,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 71000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 71000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-71",
      "group-type": "group-ff"
    },
    {
      "group-id": 72,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 72000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 72000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-72",
      "group-type": "group-ff"
    },
    {
      "group-id": 73,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 73000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 73000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-73",
      "group-type": "group-ff"
    },
    {
      "group-id": 74,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 74000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 74000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-74",
      "group-type": "group-ff"
    },
    {
      "group-id": 75,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 75000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 75000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-75",
      "group-type": "group-ff"
    },
    {
      "group-id": 76,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 76000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 76000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-76",
      "group-type": "group-ff"
    },
    {
      "group-id": 77,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 77000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 77000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-77",
      "group-type": "group-ff"
    },
    {
      "group-id": 78,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 78000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 78000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-78",
      "group-type": "group-ff"
    },
    {
      "group-id": 79,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 79000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 79000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-79",
      "group-type": "group-ff"
    },
    {
      "group-id": 80,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 80000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 80000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-80",
      "group-type": "group-ff"
    },
    {
      "group-id": 81,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 81000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 81000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-81",
      "group-type": "group-ff"
    },
    {
      "group-id": 82,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 82000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 82000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-82",
      "group-type": "group-ff"
    },
    {
      "group-id": 83,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 83000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 83000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-83",
      "group-type": "group-ff"
    },
    {
      "group-id": 84,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 84000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 84000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-84",
      "group-type": "group-ff"
    },
    {
      "group-id": 85,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 85000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 85000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-85",
      "group-type": "group-ff"
    },
    {
      "group-id": 86,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 86000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 86000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-86",
      "group-type": "group-ff"
    },
    {
      "group-id": 87,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 87000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 87000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-87",
      "group-type": "group-ff"
    },
    {
      "group-id": 88,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 88000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 88000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-88",
      "group-type": "group-ff"
    },
    {
      "group-id": 89,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 89000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 89000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-89",
      "group-type": "group-ff"
    },
    {
      "group-id": 90,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 90000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 90000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-90",
      "group-type": "group-ff"
    },
    {
      "group-id": 91,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 91000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 91000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-91",
      "group-type": "group-ff"
    },
    {
      "group-id": 92,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 92000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 92000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-92",
      "group-type": "group-ff"
    },
    {
      "group-id": 93,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 93000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 93000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-93",
      "group-type": "group-ff"
    },
    {
      "group-id": 94,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 94000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 94000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-94",
      "group-type": "group-ff"
    },
    {
      "group-id": 95,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 95000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 95000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-95",
      "group-type": "group-ff"
    },
    {
      "group-id": 96,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 96000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 96000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-96",
      "group-type": "group-ff"
    },
    {
      "group-id": 97,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 97000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 97000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-97",
      "group-type": "group-ff"
    },
    {
      "group-id": 98,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 98000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 98000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-98",
      "group-type": "group-ff"
    },
    {
      "group-id": 99,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 99000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 99000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-99",
      "group-type": "group-ff"
    },
    {
      "group-id": 100,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 100000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 100000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-100",
      "group-type": "group-ff"
    }
  ]
}</msg>
<arg>${data}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:35.595078" elapsed="0.000656"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.596151" level="INFO">{'Content-Type': 'application/json'}</msg>
<arg>${content_type}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:35.595889" elapsed="0.000306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.596584" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:35.596345" elapsed="0.000287"/>
</kw>
<kw name="Join_Two_Headers" owner="TemplatedRequests">
<kw name="Copy Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:35.597448" level="INFO">${accumulator} = {'Content-Type': 'application/json'}</msg>
<var>${accumulator}</var>
<arg>${first}</arg>
<doc>Returns a copy of the given dictionary.</doc>
<status status="PASS" start="2026-05-25T01:55:35.597252" elapsed="0.000222"/>
</kw>
<kw name="Get Dictionary Items" owner="Collections">
<msg time="2026-05-25T01:55:35.597801" level="INFO">${items_to_add} = []</msg>
<var>${items_to_add}</var>
<arg>${second}</arg>
<doc>Returns items of the given ``dictionary`` as a list.</doc>
<status status="PASS" start="2026-05-25T01:55:35.597627" elapsed="0.000199"/>
</kw>
<kw name="Set To Dictionary" owner="Collections">
<arg>${accumulator}</arg>
<arg>@{items_to_add}</arg>
<doc>Adds the given ``key_value_pairs`` and/or ``items`` to the ``dictionary``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.597974" elapsed="0.000219"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.598622" level="INFO">{'Content-Type': 'application/json'}</msg>
<arg>${accumulator}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:35.598347" elapsed="0.000318"/>
</kw>
<return>
<value>${accumulator}</value>
<status status="PASS" start="2026-05-25T01:55:35.598707" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:35.598859" level="INFO">${headers} = {'Content-Type': 'application/json'}</msg>
<var>${headers}</var>
<arg>first=${content_type}</arg>
<arg>second=${accept}</arg>
<doc>Take two dicts, join them, return result. Second argument values take precedence.</doc>
<status status="PASS" start="2026-05-25T01:55:35.596834" elapsed="0.002049"/>
</kw>
<if>
<branch type="IF" condition="&quot;&quot;&quot;${http_timeout}&quot;&quot;&quot; == &quot;&quot;&quot;${EMPTY}&quot;&quot;&quot;">
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:35.632639" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Content-Length': '42507', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body={
  "flow-node-inventory:group": [
    {
      "group-id": 1,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 1000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 1000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-1",
      "group-type": "group-ff"
    },
    {
      "group-id": 2,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 2000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 2000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-2",
      "group-type": "group-ff"
    },
    {
      "group-id": 3,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 3000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 3000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-3",
      "group-type": "group-ff"
    },
    {
      "group-id": 4,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 4000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 4000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-4",
      "group-type": "group-ff"
    },
    {
      "group-id": 5,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 5000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 5000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-5",
      "group-type": "group-ff"
    },
    {
      "group-id": 6,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 6000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 6000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-6",
      "group-type": "group-ff"
    },
    {
      "group-id": 7,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 7000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 7000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-7",
      "group-type": "group-ff"
    },
    {
      "group-id": 8,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 8000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 8000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-8",
      "group-type": "group-ff"
    },
    {
      "group-id": 9,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 9000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 9000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-9",
      "group-type": "group-ff"
    },
    {
      "group-id": 10,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 10000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 10000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-10",
      "group-type": "group-ff"
    },
    {
      "group-id": 11,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 11000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 11000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-11",
      "group-type": "group-ff"
    },
    {
      "group-id": 12,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 12000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 12000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-12",
      "group-type": "group-ff"
    },
    {
      "group-id": 13,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 13000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 13000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-13",
      "group-type": "group-ff"
    },
    {
      "group-id": 14,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 14000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 14000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-14",
      "group-type": "group-ff"
    },
    {
      "group-id": 15,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 15000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 15000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-15",
      "group-type": "group-ff"
    },
    {
      "group-id": 16,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 16000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 16000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-16",
      "group-type": "group-ff"
    },
    {
      "group-id": 17,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 17000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 17000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-17",
      "group-type": "group-ff"
    },
    {
      "group-id": 18,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 18000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 18000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-18",
      "group-type": "group-ff"
    },
    {
      "group-id": 19,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 19000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 19000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-19",
      "group-type": "group-ff"
    },
    {
      "group-id": 20,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 20000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 20000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-20",
      "group-type": "group-ff"
    },
    {
      "group-id": 21,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 21000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 21000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-21",
      "group-type": "group-ff"
    },
    {
      "group-id": 22,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 22000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 22000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-22",
      "group-type": "group-ff"
    },
    {
      "group-id": 23,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 23000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 23000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-23",
      "group-type": "group-ff"
    },
    {
      "group-id": 24,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 24000,
            "action": [
              {
                "order": 1,
                "... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:55:35.633053" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:group=88', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:35.633309" level="INFO">${response} = &lt;Response [201]&gt;</msg>
<var>${response}</var>
<arg>${session}</arg>
<arg>${uri}</arg>
<arg>data=${data}</arg>
<arg>headers=${headers}</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:35.601342" elapsed="0.032026"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.599118" elapsed="0.034359"/>
</branch>
<branch type="ELSE">
<kw name="POST On Session" owner="RequestsLibrary">
<var>${response}</var>
<arg>${session}</arg>
<arg>${uri}</arg>
<arg>data=${data}</arg>
<arg>headers=${headers}</arg>
<arg>timeout=${http_timeout}</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.633908" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:35.633542" elapsed="0.000515"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.598935" elapsed="0.035201"/>
</if>
<kw name="Check_Status_Code" owner="TemplatedRequests">
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.640547" level="INFO"/>
<arg>${response.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:35.636566" elapsed="0.004041"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.636038" elapsed="0.004624"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.635993" elapsed="0.004703"/>
</if>
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.644140" level="INFO">201</msg>
<arg>${response.status_code}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:35.641096" elapsed="0.003108"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.640772" elapsed="0.003481"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.640749" elapsed="0.003537"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.645103" level="INFO">${status_codes_type} = list</msg>
<var>${status_codes_type}</var>
<arg>type($additional_allowed_status_codes).__name__</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.644546" elapsed="0.000596"/>
</kw>
<if>
<branch type="IF" condition="&quot;${status_codes_type}&quot;!=&quot;list&quot;">
<kw name="Create List" owner="BuiltIn">
<var>${allowed_status_codes_list}</var>
<arg>${additional_allowed_status_codes}</arg>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.645589" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:35.645240" elapsed="0.000429"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.646403" level="INFO">${allowed_status_codes_list} = []</msg>
<var>${allowed_status_codes_list}</var>
<arg>${additional_allowed_status_codes}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:35.645944" elapsed="0.000495"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.645701" elapsed="0.000788"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.645214" elapsed="0.001305"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.647295" level="INFO">${status_codes_type} = list</msg>
<var>${status_codes_type}</var>
<arg>type($explicit_status_codes).__name__</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.646756" elapsed="0.000576"/>
</kw>
<if>
<branch type="IF" condition="&quot;${status_codes_type}&quot;!=&quot;list&quot;">
<kw name="Create List" owner="BuiltIn">
<var>${explicit_status_codes_list}</var>
<arg>${explicit_status_codes}</arg>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.647773" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:35.647430" elapsed="0.000422"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.648588" level="INFO">${explicit_status_codes_list} = []</msg>
<var>${explicit_status_codes_list}</var>
<arg>${explicit_status_codes}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:35.648148" elapsed="0.000477"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.647885" elapsed="0.000790"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.647405" elapsed="0.001300"/>
</if>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>"""${explicit_status_codes_list}""" != """${NO_STATUS_CODES}"""</arg>
<arg>Collections.List_Should_Contain_Value</arg>
<arg>${explicit_status_codes_list}</arg>
<arg>${response.status_code}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:35.648916" elapsed="0.000514"/>
</kw>
<kw name="Combine Lists" owner="Collections">
<msg time="2026-05-25T01:55:35.650056" level="INFO">${final_allowd_list} = [200, 201, 204]</msg>
<var>${final_allowd_list}</var>
<arg>${ALLOWED_STATUS_CODES}</arg>
<arg>${allowed_status_codes_list}</arg>
<doc>Combines the given ``lists`` together and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.649661" elapsed="0.000451"/>
</kw>
<kw name="List Should Contain Value" owner="Collections">
<arg>${final_allowd_list}</arg>
<arg>${response.status_code}</arg>
<doc>Fails if the ``value`` is not found from ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.650366" elapsed="0.002295"/>
</kw>
<arg>${response}</arg>
<arg>additional_allowed_status_codes=${additional_allowed_status_codes}</arg>
<arg>explicit_status_codes=${explicit_status_codes}</arg>
<doc>Log response text, check status_code is one of allowed ones. In cases where this keyword is
called in a WUKS it could end up logging tons of data and it may be desired to skip the logging by passing
log_response=False, but by default it remains True.</doc>
<status status="PASS" start="2026-05-25T01:55:35.634982" elapsed="0.017743"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-05-25T01:55:35.652903" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:35.652796" elapsed="0.000152"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.652778" elapsed="0.000192"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<msg time="2026-05-25T01:55:35.655380" level="INFO">${text_normalized} = </msg>
<var>${text_normalized}</var>
<arg>${response.text}</arg>
<arg>jmes_path=${jmes_path}</arg>
<doc>Attempt to return sorted indented JSON string.</doc>
<status status="PASS" start="2026-05-25T01:55:35.653131" elapsed="0.002275"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="PASS" start="2026-05-25T01:55:35.655454" elapsed="0.000032"/>
</return>
<msg time="2026-05-25T01:55:35.655612" level="INFO">${response_text} = </msg>
<var>${response_text}</var>
<arg>uri=${uri}</arg>
<arg>data=${data}</arg>
<arg>content_type=${content_type}</arg>
<arg>accept=${accept}</arg>
<arg>session=${session}</arg>
<arg>jmes_path=${jmes_expression}</arg>
<arg>normalize_json=${normalize_json}</arg>
<arg>additional_allowed_status_codes=${additional_allowed_status_codes}</arg>
<arg>explicit_status_codes=${explicit_status_codes}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>POST data to given URI, check status code and return response text.
${content_type} and ${accept} are mandatory Python objects with headers to use.
If ${normalize_json}, normalize text before returning.</doc>
<status status="PASS" start="2026-05-25T01:55:35.593636" elapsed="0.062001"/>
</kw>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-05-25T01:55:35.655739" elapsed="0.000034"/>
</return>
<msg time="2026-05-25T01:55:35.655933" level="INFO">${response_text} = </msg>
<var>${response_text}</var>
<arg>folder=${folder}</arg>
<arg>base_name=data</arg>
<arg>extension=json</arg>
<arg>accept=${ACCEPT_EMPTY}</arg>
<arg>content_type=${HEADERS_YANG_JSON}</arg>
<arg>mapping=${mapping}</arg>
<arg>session=${session}</arg>
<arg>normalize_json=True</arg>
<arg>endline=${\n}</arg>
<arg>iterations=${iterations}</arg>
<arg>iter_start=${iter_start}</arg>
<arg>additional_allowed_status_codes=${additional_allowed_status_codes}</arg>
<arg>explicit_status_codes=${explicit_status_codes}</arg>
<arg>http_timeout=${http_timeout}</arg>
<arg>iter_j_offset=${iter_j_offset}</arg>
<doc>Resolve URI and data from folder, call Post_To_Uri, return response text.</doc>
<status status="PASS" start="2026-05-25T01:55:35.210142" elapsed="0.445823"/>
</kw>
<if>
<branch type="IF" condition="${verify}">
<kw name="Verify_Response_As_Json_Templated" owner="TemplatedRequests">
<arg>response=${response_text}</arg>
<arg>folder=${folder}</arg>
<arg>base_name=response</arg>
<arg>mapping=${mapping}</arg>
<arg>iter_j_offset=${iter_j_offset}</arg>
<doc>Resolve expected JSON data, should be equal to provided ${response}.
JSON normalization is used, endlines enabled for readability.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.656408" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:35.656116" elapsed="0.000377"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.656092" elapsed="0.000432"/>
</if>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-05-25T01:55:35.656567" elapsed="0.000033"/>
</return>
<arg>folder=${VAR_DIR}/add-group-2</arg>
<arg>mapping=${mapping}</arg>
<arg>session=session</arg>
<arg>iterations=${iter}</arg>
<doc>Add arguments sensible for JSON data, return Post_Templated response text.
Optionally, verification against response.json (no iteration) is called.
Only subset of JSON data is verified and returned if JMES path is specified in
file ${folder}/jmespath.expr.
Response status code must be one of values from ${explicit_status_codes} if specified or one of set
created from all positive HTTP status codes together with ${additional_allowed_status_codes}.</doc>
<status status="PASS" start="2026-05-25T01:55:35.207449" elapsed="0.449282"/>
</kw>
<var name="${switch}">1</var>
<status status="PASS" start="2026-05-25T01:55:35.196131" elapsed="0.460657"/>
</iter>
<iter>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.657636" level="INFO">&amp;{mapping} = { NODE=openflow:2 }</msg>
<var>&amp;{mapping}</var>
<arg>NODE=openflow:${switch}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.657126" elapsed="0.000545"/>
</kw>
<kw name="Post_As_Json_Templated" owner="TemplatedRequests">
<kw name="Post_Templated" owner="TemplatedRequests">
<kw name="Resolve_Text_From_Template_Folder" owner="TemplatedRequests">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.701200" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/location.uri</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:35.700810" elapsed="0.000419"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:35.701992" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2.titanium/location.uri' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:35.701733" elapsed="0.000353">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2.titanium/location.uri' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:35.702183" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:35.701396" elapsed="0.000812"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.702762" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/location.uri</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:35.702373" elapsed="0.000416"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:35.703102" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2/location.uri"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2/location.uri&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:35.703254" level="INFO">${template} = /rests/data/opendaylight-inventory:nodes/node=$NODE
</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:35.702951" elapsed="0.000329"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.703683" level="INFO">/rests/data/opendaylight-inventory:nodes/node=$NODE
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:35.703436" elapsed="0.000293"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.704681" level="INFO">mapping: {'NODE': 'openflow:2'}</msg>
<arg>mapping: ${mapping}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:35.704428" elapsed="0.000297"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.705160" level="INFO">${encoded_mapping} = {}</msg>
<var>${encoded_mapping}</var>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.704883" elapsed="0.000302"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Convert To String" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.705901" level="INFO">${value} = openflow:2</msg>
<var>${value}</var>
<arg>${value}</arg>
<doc>Converts the given item to a Unicode string.</doc>
<status status="PASS" start="2026-05-25T01:55:35.705546" elapsed="0.000392"/>
</kw>
<kw name="Percent_Encode_String" owner="TemplatedRequests">
<kw name="Replace String Using Regexp" owner="String">
<msg time="2026-05-25T01:55:35.706958" level="INFO">${encoded} = openflow%3A2</msg>
<var>${encoded}</var>
<arg>${value}</arg>
<arg>:</arg>
<arg>%3A</arg>
<doc>Replaces ``pattern`` in the given ``string`` with ``replace_with``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.706500" elapsed="0.000485"/>
</kw>
<return>
<value>${encoded}</value>
<status status="PASS" start="2026-05-25T01:55:35.707086" elapsed="0.000033"/>
</return>
<msg time="2026-05-25T01:55:35.707245" level="INFO">${encoded_value} = openflow%3A2</msg>
<var>${encoded_value}</var>
<arg>${value}</arg>
<doc>Percent encodes reserved characters in the given string so it can be used as part of url.</doc>
<status status="PASS" start="2026-05-25T01:55:35.706158" elapsed="0.001112"/>
</kw>
<kw name="Set To Dictionary" owner="Collections">
<arg>${encoded_mapping}</arg>
<arg>${key}</arg>
<arg>${encoded_value}</arg>
<doc>Adds the given ``key_value_pairs`` and/or ``items`` to the ``dictionary``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.707424" elapsed="0.000276"/>
</kw>
<var name="${key}">NODE</var>
<var name="${value}">openflow:2</var>
<status status="PASS" start="2026-05-25T01:55:35.705412" elapsed="0.002330"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="PASS" start="2026-05-25T01:55:35.705240" elapsed="0.002536"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-05-25T01:55:35.707820" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:55:35.707975" level="INFO">${mapping_to_use} = {'NODE': 'openflow%3A2'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-05-25T01:55:35.704104" elapsed="0.003896"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.703796" elapsed="0.004235"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.708220" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:35.708055" elapsed="0.000221"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.703777" elapsed="0.004519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.709013" level="INFO">${final_text} = /rests/data/opendaylight-inventory:nodes/node=openflow%3A2</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.708464" elapsed="0.000577"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:35.709107" elapsed="0.000029"/>
</return>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:35.700199" elapsed="0.009032"/>
</kw>
<msg time="2026-05-25T01:55:35.709285" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>not "${iterations}"</arg>
<arg>Resolve_Text_From_Template_File</arg>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:35.688091" elapsed="0.021240"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${prolog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.prolog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.721286" elapsed="0.000028"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${epilog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.epilog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.733017" elapsed="0.000027"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${item_template}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${base_name}.item.${extension}</arg>
<arg>mapping=${mapping}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.744777" elapsed="0.000027"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.744973" elapsed="0.000021"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<var>${separator}</var>
<arg>'${extension}' != 'json'</arg>
<arg>${endline}</arg>
<arg>,${endline}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.745161" elapsed="0.000021"/>
</kw>
<for flavor="IN RANGE">
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.745523" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:35.745379" elapsed="0.000199"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:35.745365" elapsed="0.000236"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.745764" elapsed="0.000021"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.745968" elapsed="0.000021"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.746151" elapsed="0.000021"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-05-25T01:55:35.745337" elapsed="0.000868"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-05-25T01:55:35.745237" elapsed="0.000994"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<var>${final_text}</var>
<arg>SEPARATOR=</arg>
<arg>${prolog}</arg>
<arg>${endline}</arg>
<arg>@{items}</arg>
<arg>${endline}</arg>
<arg>${epilog}</arg>
<doc>Catenates the given items together and returns the resulted string.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.746379" elapsed="0.000024"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-05-25T01:55:35.746458" elapsed="0.000015"/>
</return>
<msg time="2026-05-25T01:55:35.746578" level="INFO">${uri} = /rests/data/opendaylight-inventory:nodes/node=openflow%3A2</msg>
<var>${uri}</var>
<arg>folder=${folder}</arg>
<arg>base_name=location</arg>
<arg>extension=uri</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=True</arg>
<doc>Read a template from folder, strip endline, make changes according to mapping, return the result.
If ${iterations} value is present, put text together from "prolog", "item" and "epilog" parts,
where additional template variable ${i} goes from 1, by one 100 times.
Template variable ${j} is calculated as ${i} incremented by offset 0 ( j = i + iter_j_offset )
used to create non uniform data in order to be able to validate UPDATE operations.
POST (as opposed to PUT) needs slightly different data, ${name_prefix} may be used to distinguish.
(Actually, it is GET who formats data differently when URI is a top-level container.)</doc>
<status status="PASS" start="2026-05-25T01:55:35.683956" elapsed="0.062648"/>
</kw>
<kw name="Resolve_Text_From_Template_Folder" owner="TemplatedRequests">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>not "${iterations}"</arg>
<arg>Resolve_Text_From_Template_File</arg>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:35.757144" elapsed="0.000337"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.770409" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/post_data.prolog.json</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:35.770014" elapsed="0.000423"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:35.771164" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2.titanium/post_data.prolog.json' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:35.770934" elapsed="0.000302">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2.titanium/post_data.prolog.json' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:35.771332" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:35.770602" elapsed="0.000755"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.771925" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/post_data.prolog.json</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:35.771537" elapsed="0.000415"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:35.772269" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2/post_data.prolog.json"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2/post_data.prolog.json&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:35.772395" level="INFO">${template} = {
  "flow-node-inventory:group": [
</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:35.772131" elapsed="0.000289"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.772819" level="INFO">{
  "flow-node-inventory:group": [
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:35.772576" elapsed="0.000289"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:35.773235" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:35.772932" elapsed="0.000361"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.773775" level="INFO">${mapping_to_use} = {'NODE': 'openflow:2'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:35.773462" elapsed="0.000338"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.773317" elapsed="0.000519"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.772912" elapsed="0.000945"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.774471" level="INFO">${final_text} = {
  "flow-node-inventory:group": [</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.774000" elapsed="0.000499"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:35.774550" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:35.774699" level="INFO">${prolog} = {
  "flow-node-inventory:group": [</msg>
<var>${prolog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.prolog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:35.769372" elapsed="0.005351"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.787850" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/post_data.epilog.json</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:35.787480" elapsed="0.000399"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:35.788595" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2.titanium/post_data.epilog.json' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:35.788390" elapsed="0.000267">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2.titanium/post_data.epilog.json' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:35.788750" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:35.788041" elapsed="0.000734"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.789339" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/post_data.epilog.json</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:35.788938" elapsed="0.000429"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:35.789673" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2/post_data.epilog.json"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2/post_data.epilog.json&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:35.789796" level="INFO">${template} =   ]
}
</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:35.789527" elapsed="0.000293"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.790239" level="INFO">  ]
}
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:35.789974" elapsed="0.000308"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:35.790637" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:35.790350" elapsed="0.000345"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.791169" level="INFO">${mapping_to_use} = {'NODE': 'openflow:2'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:35.790862" elapsed="0.000333"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.790718" elapsed="0.000512"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.790331" elapsed="0.000921"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.791847" level="INFO">${final_text} =   ]
}</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.791396" elapsed="0.000478"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:35.791922" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:35.792089" level="INFO">${epilog} =   ]
}</msg>
<var>${epilog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.epilog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:35.786850" elapsed="0.005265"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.804866" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/data.item.json</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:35.804496" elapsed="0.000398"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:35.805616" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2.titanium/data.item.json' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:35.805401" elapsed="0.000277">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2.titanium/data.item.json' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:35.805771" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:35.805054" elapsed="0.000741"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.806354" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/data.item.json</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:35.805956" elapsed="0.000425"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:35.806673" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2/data.item.json"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2/data.item.json&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:35.806829" level="INFO">${template} =     {
      "group-id": ${i},
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": ${i}000,
            "action": [
              {
               ...</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:35.806540" elapsed="0.000316"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.807272" level="INFO">    {
      "group-id": ${i},
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": ${i}000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": ${i}000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-${i}",
      "group-type": "group-ff"
    }
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:35.807012" elapsed="0.000307"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:35.807673" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:35.807386" elapsed="0.000345"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.808222" level="INFO">${mapping_to_use} = {'NODE': 'openflow:2'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:35.807905" elapsed="0.000343"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.807755" elapsed="0.000529"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.807367" elapsed="0.000939"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.809017" level="INFO">${final_text} =     {
      "group-id": ${i},
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": ${i}000,
            "action": [
              {
               ...</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.808451" elapsed="0.000594"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:35.809110" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:55:35.809265" level="INFO">${item_template} =     {
      "group-id": ${i},
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": ${i}000,
            "action": [
              {
               ...</msg>
<var>${item_template}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${base_name}.item.${extension}</arg>
<arg>mapping=${mapping}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:35.803947" elapsed="0.005344"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.809718" level="INFO">${items} = []</msg>
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:55:35.809451" elapsed="0.000292"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.810288" level="INFO">${separator} = ,
</msg>
<var>${separator}</var>
<arg>'${extension}' != 'json'</arg>
<arg>${endline}</arg>
<arg>,${endline}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:35.809903" elapsed="0.000411"/>
</kw>
<for flavor="IN RANGE">
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:35.810930" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:35.810697" elapsed="0.000289"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.810683" elapsed="0.000327"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.811521" level="INFO">${j} = 1</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.811171" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.812449" level="INFO">${item} =     {
      "group-id": 1,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 1000,
            "action": [
              {
                "orde...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.811701" elapsed="0.000776"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.812633" elapsed="0.000192"/>
</kw>
<var name="${iteration}">1</var>
<status status="PASS" start="2026-05-25T01:55:35.810651" elapsed="0.002212"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.813295" elapsed="0.000197"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.813042" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.813027" elapsed="0.000528"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.814051" level="INFO">${j} = 2</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.813702" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.814873" level="INFO">${item} =     {
      "group-id": 2,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 2000,
            "action": [
              {
                "orde...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.814255" elapsed="0.000648"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.815061" elapsed="0.000209"/>
</kw>
<var name="${iteration}">2</var>
<status status="PASS" start="2026-05-25T01:55:35.812997" elapsed="0.002312"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.815767" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.815497" elapsed="0.000497"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.815482" elapsed="0.000536"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.816528" level="INFO">${j} = 3</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.816177" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.817294" level="INFO">${item} =     {
      "group-id": 3,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 3000,
            "action": [
              {
                "orde...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.816709" elapsed="0.000613"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.817488" elapsed="0.000183"/>
</kw>
<var name="${iteration}">3</var>
<status status="PASS" start="2026-05-25T01:55:35.815450" elapsed="0.002259"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.818133" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.817884" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.817869" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.818869" level="INFO">${j} = 4</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.818521" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.819636" level="INFO">${item} =     {
      "group-id": 4,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 4000,
            "action": [
              {
                "orde...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.819050" elapsed="0.000619"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.819823" elapsed="0.000180"/>
</kw>
<var name="${iteration}">4</var>
<status status="PASS" start="2026-05-25T01:55:35.817841" elapsed="0.002199"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.820474" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.820236" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.820221" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.821226" level="INFO">${j} = 5</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.820862" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.821998" level="INFO">${item} =     {
      "group-id": 5,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 5000,
            "action": [
              {
                "orde...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.821406" elapsed="0.000620"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.822198" elapsed="0.000182"/>
</kw>
<var name="${iteration}">5</var>
<status status="PASS" start="2026-05-25T01:55:35.820191" elapsed="0.002226"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.822827" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.822594" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.822580" elapsed="0.000504"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.823573" level="INFO">${j} = 6</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.823228" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.824338" level="INFO">${item} =     {
      "group-id": 6,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 6000,
            "action": [
              {
                "orde...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.823757" elapsed="0.000608"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.824518" elapsed="0.000179"/>
</kw>
<var name="${iteration}">6</var>
<status status="PASS" start="2026-05-25T01:55:35.822551" elapsed="0.002183"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.825159" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.824912" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.824897" elapsed="0.000520"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.825915" level="INFO">${j} = 7</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.825567" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.826683" level="INFO">${item} =     {
      "group-id": 7,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 7000,
            "action": [
              {
                "orde...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.826112" elapsed="0.000599"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.826905" elapsed="0.000203"/>
</kw>
<var name="${iteration}">7</var>
<status status="PASS" start="2026-05-25T01:55:35.824868" elapsed="0.002279"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.827563" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.827328" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.827313" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.828321" level="INFO">${j} = 8</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.827951" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.830045" level="INFO">${item} =     {
      "group-id": 8,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 8000,
            "action": [
              {
                "orde...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.828502" elapsed="0.001594"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.830255" elapsed="0.000184"/>
</kw>
<var name="${iteration}">8</var>
<status status="PASS" start="2026-05-25T01:55:35.827284" elapsed="0.003193"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.830887" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.830653" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.830638" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.831638" level="INFO">${j} = 9</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.831291" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.832399" level="INFO">${item} =     {
      "group-id": 9,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 9000,
            "action": [
              {
                "orde...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.831818" elapsed="0.000609"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.832587" elapsed="0.000180"/>
</kw>
<var name="${iteration}">9</var>
<status status="PASS" start="2026-05-25T01:55:35.830610" elapsed="0.002195"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.833229" elapsed="0.000205"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.832980" elapsed="0.000493"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.832965" elapsed="0.000532"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.833987" level="INFO">${j} = 10</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.833638" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.834756" level="INFO">${item} =     {
      "group-id": 10,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 10000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.834185" elapsed="0.000599"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.834939" elapsed="0.000197"/>
</kw>
<var name="${iteration}">10</var>
<status status="PASS" start="2026-05-25T01:55:35.832937" elapsed="0.002237"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.835584" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.835351" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.835336" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.836334" level="INFO">${j} = 11</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.835967" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.837098" level="INFO">${item} =     {
      "group-id": 11,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 11000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.836513" elapsed="0.000614"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.837282" elapsed="0.000191"/>
</kw>
<var name="${iteration}">11</var>
<status status="PASS" start="2026-05-25T01:55:35.835307" elapsed="0.002204"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.837922" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.837688" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.837673" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.838677" level="INFO">${j} = 12</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.838324" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.839478" level="INFO">${item} =     {
      "group-id": 12,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 12000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.838892" elapsed="0.000614"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.839660" elapsed="0.000181"/>
</kw>
<var name="${iteration}">12</var>
<status status="PASS" start="2026-05-25T01:55:35.837644" elapsed="0.002234"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.840305" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.840055" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.840040" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.841040" level="INFO">${j} = 13</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.840693" elapsed="0.000388"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.841820" level="INFO">${item} =     {
      "group-id": 13,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 13000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.841239" elapsed="0.000609"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.842003" elapsed="0.000199"/>
</kw>
<var name="${iteration}">13</var>
<status status="PASS" start="2026-05-25T01:55:35.840011" elapsed="0.002230"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.842657" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.842418" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.842403" elapsed="0.000501"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.843410" level="INFO">${j} = 14</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.843045" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.844195" level="INFO">${item} =     {
      "group-id": 14,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 14000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.843591" elapsed="0.000632"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.844379" elapsed="0.000182"/>
</kw>
<var name="${iteration}">14</var>
<status status="PASS" start="2026-05-25T01:55:35.842374" elapsed="0.002224"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.845011" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.844776" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.844761" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.845789" level="INFO">${j} = 15</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.845439" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.846685" level="INFO">${item} =     {
      "group-id": 15,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 15000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.845970" elapsed="0.000743"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.846870" elapsed="0.000184"/>
</kw>
<var name="${iteration}">15</var>
<status status="PASS" start="2026-05-25T01:55:35.844732" elapsed="0.002377"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.847524" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.847290" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.847275" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.848279" level="INFO">${j} = 16</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.847913" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.849029" level="INFO">${item} =     {
      "group-id": 16,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 16000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.848460" elapsed="0.000596"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.849227" elapsed="0.000197"/>
</kw>
<var name="${iteration}">16</var>
<status status="PASS" start="2026-05-25T01:55:35.847245" elapsed="0.002217"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.849872" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.849639" elapsed="0.000502"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.849624" elapsed="0.000544"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.850668" level="INFO">${j} = 17</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.850315" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.851472" level="INFO">${item} =     {
      "group-id": 17,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 17000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.850852" elapsed="0.000648"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.851660" elapsed="0.000184"/>
</kw>
<var name="${iteration}">17</var>
<status status="PASS" start="2026-05-25T01:55:35.849596" elapsed="0.002286"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.852316" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.852060" elapsed="0.000482"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.852045" elapsed="0.000521"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.853058" level="INFO">${j} = 18</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.852709" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.853836" level="INFO">${item} =     {
      "group-id": 18,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 18000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.853255" elapsed="0.000609"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.854019" elapsed="0.000199"/>
</kw>
<var name="${iteration}">18</var>
<status status="PASS" start="2026-05-25T01:55:35.852017" elapsed="0.002238"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.854672" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.854434" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.854419" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.855422" level="INFO">${j} = 19</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.855058" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.856187" level="INFO">${item} =     {
      "group-id": 19,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 19000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.855603" elapsed="0.000612"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.856371" elapsed="0.000182"/>
</kw>
<var name="${iteration}">19</var>
<status status="PASS" start="2026-05-25T01:55:35.854390" elapsed="0.002199"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.857000" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.856766" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.856751" elapsed="0.000531"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.857780" level="INFO">${j} = 20</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.857431" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.858551" level="INFO">${item} =     {
      "group-id": 20,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 20000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.857959" elapsed="0.000620"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.858732" elapsed="0.000181"/>
</kw>
<var name="${iteration}">20</var>
<status status="PASS" start="2026-05-25T01:55:35.856723" elapsed="0.002227"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.859378" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.859143" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.859128" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.860132" level="INFO">${j} = 21</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.859768" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.860883" level="INFO">${item} =     {
      "group-id": 21,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 21000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.860314" elapsed="0.000597"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.861084" elapsed="0.000195"/>
</kw>
<var name="${iteration}">21</var>
<status status="PASS" start="2026-05-25T01:55:35.859098" elapsed="0.002254"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.861767" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.861531" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.861516" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.862639" level="INFO">${j} = 22</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.862172" elapsed="0.000494"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.863417" level="INFO">${item} =     {
      "group-id": 22,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 22000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.862822" elapsed="0.000624"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.863604" elapsed="0.000183"/>
</kw>
<var name="${iteration}">22</var>
<status status="PASS" start="2026-05-25T01:55:35.861487" elapsed="0.002337"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.864252" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.864001" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.863986" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.864994" level="INFO">${j} = 23</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.864641" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.865788" level="INFO">${item} =     {
      "group-id": 23,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 23000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.865193" elapsed="0.000624"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.865972" elapsed="0.000200"/>
</kw>
<var name="${iteration}">23</var>
<status status="PASS" start="2026-05-25T01:55:35.863957" elapsed="0.002253"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.866622" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.866388" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.866374" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.867374" level="INFO">${j} = 24</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.867009" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.868143" level="INFO">${item} =     {
      "group-id": 24,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 24000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.867557" elapsed="0.000615"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.868327" elapsed="0.000182"/>
</kw>
<var name="${iteration}">24</var>
<status status="PASS" start="2026-05-25T01:55:35.866345" elapsed="0.002201"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.868957" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.868723" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.868708" elapsed="0.000543"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.869745" level="INFO">${j} = 25</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.869398" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.870515" level="INFO">${item} =     {
      "group-id": 25,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 25000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.869927" elapsed="0.000616"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.870698" elapsed="0.000181"/>
</kw>
<var name="${iteration}">25</var>
<status status="PASS" start="2026-05-25T01:55:35.868679" elapsed="0.002237"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.871343" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.871108" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.871092" elapsed="0.000503"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.872107" level="INFO">${j} = 26</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.871738" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.872858" level="INFO">${item} =     {
      "group-id": 26,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 26000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.872289" elapsed="0.000631"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.873095" elapsed="0.000198"/>
</kw>
<var name="${iteration}">26</var>
<status status="PASS" start="2026-05-25T01:55:35.871048" elapsed="0.002284"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.873744" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.873509" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.873494" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.874501" level="INFO">${j} = 27</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.874150" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.875266" level="INFO">${item} =     {
      "group-id": 27,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 27000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.874682" elapsed="0.000612"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.875450" elapsed="0.000183"/>
</kw>
<var name="${iteration}">27</var>
<status status="PASS" start="2026-05-25T01:55:35.873465" elapsed="0.002205"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.876094" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.875846" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.875832" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.876829" level="INFO">${j} = 28</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.876483" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.877605" level="INFO">${item} =     {
      "group-id": 28,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 28000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.877008" elapsed="0.000625"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.877787" elapsed="0.000180"/>
</kw>
<var name="${iteration}">28</var>
<status status="PASS" start="2026-05-25T01:55:35.875803" elapsed="0.002201"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.878436" elapsed="0.000302"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.878201" elapsed="0.000576"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.878185" elapsed="0.000617"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.879311" level="INFO">${j} = 29</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.878944" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.880091" level="INFO">${item} =     {
      "group-id": 29,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 29000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.879501" elapsed="0.000619"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.880275" elapsed="0.000183"/>
</kw>
<var name="${iteration}">29</var>
<status status="PASS" start="2026-05-25T01:55:35.878154" elapsed="0.002342"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.880906" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.880671" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.880657" elapsed="0.000534"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.881685" level="INFO">${j} = 30</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.881336" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.882456" level="INFO">${item} =     {
      "group-id": 30,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 30000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.881866" elapsed="0.000618"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.882639" elapsed="0.000182"/>
</kw>
<var name="${iteration}">30</var>
<status status="PASS" start="2026-05-25T01:55:35.880627" elapsed="0.002232"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.883285" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.883033" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.883019" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.884017" level="INFO">${j} = 31</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.883671" elapsed="0.000430"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.884839" level="INFO">${item} =     {
      "group-id": 31,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 31000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.884264" elapsed="0.000603"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.885024" elapsed="0.000209"/>
</kw>
<var name="${iteration}">31</var>
<status status="PASS" start="2026-05-25T01:55:35.882990" elapsed="0.002283"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.885685" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.885450" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.885435" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.886437" level="INFO">${j} = 32</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.886086" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.887212" level="INFO">${item} =     {
      "group-id": 32,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 32000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.886619" elapsed="0.000621"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.887396" elapsed="0.000183"/>
</kw>
<var name="${iteration}">32</var>
<status status="PASS" start="2026-05-25T01:55:35.885406" elapsed="0.002210"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.888027" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.887793" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.887779" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.888782" level="INFO">${j} = 33</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.888434" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.889555" level="INFO">${item} =     {
      "group-id": 33,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 33000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.888960" elapsed="0.000624"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.889737" elapsed="0.000180"/>
</kw>
<var name="${iteration}">33</var>
<status status="PASS" start="2026-05-25T01:55:35.887749" elapsed="0.002206"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.890381" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.890147" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.890132" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.891128" level="INFO">${j} = 34</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.890766" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.891876" level="INFO">${item} =     {
      "group-id": 34,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 34000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.891309" elapsed="0.000595"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.892056" elapsed="0.000199"/>
</kw>
<var name="${iteration}">34</var>
<status status="PASS" start="2026-05-25T01:55:35.890102" elapsed="0.002190"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.892709" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.892470" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.892454" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.893485" level="INFO">${j} = 35</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.893131" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.894247" level="INFO">${item} =     {
      "group-id": 35,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 35000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.893664" elapsed="0.000611"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.894429" elapsed="0.000181"/>
</kw>
<var name="${iteration}">35</var>
<status status="PASS" start="2026-05-25T01:55:35.892425" elapsed="0.002224"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.895222" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.894826" elapsed="0.000626"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.894811" elapsed="0.000667"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.895977" level="INFO">${j} = 36</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.895622" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.896753" level="INFO">${item} =     {
      "group-id": 36,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 36000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.896181" elapsed="0.000601"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.896938" elapsed="0.000208"/>
</kw>
<var name="${iteration}">36</var>
<status status="PASS" start="2026-05-25T01:55:35.894782" elapsed="0.002402"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.897597" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.897362" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.897347" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.898349" level="INFO">${j} = 37</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.897982" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.899120" level="INFO">${item} =     {
      "group-id": 37,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 37000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.898529" elapsed="0.000620"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.899303" elapsed="0.000183"/>
</kw>
<var name="${iteration}">37</var>
<status status="PASS" start="2026-05-25T01:55:35.897318" elapsed="0.002204"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.899930" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.899699" elapsed="0.000468"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.899685" elapsed="0.000507"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.900680" level="INFO">${j} = 38</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.900333" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.901454" level="INFO">${item} =     {
      "group-id": 38,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 38000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.900859" elapsed="0.000622"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.901637" elapsed="0.000188"/>
</kw>
<var name="${iteration}">38</var>
<status status="PASS" start="2026-05-25T01:55:35.899656" elapsed="0.002205"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.902287" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.902037" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.902023" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.903022" level="INFO">${j} = 39</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.902675" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.903792" level="INFO">${item} =     {
      "group-id": 39,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 39000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.903220" elapsed="0.000600"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.903973" elapsed="0.000199"/>
</kw>
<var name="${iteration}">39</var>
<status status="PASS" start="2026-05-25T01:55:35.901995" elapsed="0.002214"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.904617" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.904386" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.904371" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.905559" level="INFO">${j} = 40</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.905200" elapsed="0.000386"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.906331" level="INFO">${item} =     {
      "group-id": 40,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 40000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.905746" elapsed="0.000613"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.906552" elapsed="0.000184"/>
</kw>
<var name="${iteration}">40</var>
<status status="PASS" start="2026-05-25T01:55:35.904343" elapsed="0.002430"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.907201" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.906951" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.906936" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.907937" level="INFO">${j} = 41</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.907589" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.908712" level="INFO">${item} =     {
      "group-id": 41,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 41000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.908135" elapsed="0.000605"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.908894" elapsed="0.000213"/>
</kw>
<var name="${iteration}">41</var>
<status status="PASS" start="2026-05-25T01:55:35.906907" elapsed="0.002238"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.909557" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.909323" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.909309" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.910308" level="INFO">${j} = 42</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.909942" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.911057" level="INFO">${item} =     {
      "group-id": 42,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 42000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.910488" elapsed="0.000612"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.911253" elapsed="0.000181"/>
</kw>
<var name="${iteration}">42</var>
<status status="PASS" start="2026-05-25T01:55:35.909280" elapsed="0.002193"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.912006" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.911764" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.911641" elapsed="0.000629"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.912759" level="INFO">${j} = 43</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.912411" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.913541" level="INFO">${item} =     {
      "group-id": 43,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 43000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.912938" elapsed="0.000631"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.913724" elapsed="0.000182"/>
</kw>
<var name="${iteration}">43</var>
<status status="PASS" start="2026-05-25T01:55:35.911609" elapsed="0.002334"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.914373" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.914139" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.914124" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.915144" level="INFO">${j} = 44</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.914765" elapsed="0.000406"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.915898" level="INFO">${item} =     {
      "group-id": 44,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 44000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.915327" elapsed="0.000600"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.916097" elapsed="0.000183"/>
</kw>
<var name="${iteration}">44</var>
<status status="PASS" start="2026-05-25T01:55:35.914093" elapsed="0.002224"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.916727" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.916494" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.916480" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.917518" level="INFO">${j} = 45</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.917165" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.918323" level="INFO">${item} =     {
      "group-id": 45,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 45000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.917735" elapsed="0.000617"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.918508" elapsed="0.000182"/>
</kw>
<var name="${iteration}">45</var>
<status status="PASS" start="2026-05-25T01:55:35.916451" elapsed="0.002276"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.919155" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.918905" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.918891" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.919896" level="INFO">${j} = 46</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.919548" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.920666" level="INFO">${item} =     {
      "group-id": 46,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 46000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.920092" elapsed="0.000603"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.920849" elapsed="0.000195"/>
</kw>
<var name="${iteration}">46</var>
<status status="PASS" start="2026-05-25T01:55:35.918861" elapsed="0.002241"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.921514" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.921281" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.921266" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.922268" level="INFO">${j} = 47</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.921903" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.923018" level="INFO">${item} =     {
      "group-id": 47,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 47000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.922450" elapsed="0.000596"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.923217" elapsed="0.000182"/>
</kw>
<var name="${iteration}">47</var>
<status status="PASS" start="2026-05-25T01:55:35.921238" elapsed="0.002199"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.923848" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.923613" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.923598" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.924599" level="INFO">${j} = 48</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.924253" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.925380" level="INFO">${item} =     {
      "group-id": 48,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 48000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.924779" elapsed="0.000629"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.925561" elapsed="0.000180"/>
</kw>
<var name="${iteration}">48</var>
<status status="PASS" start="2026-05-25T01:55:35.923569" elapsed="0.002209"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.926202" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.925954" elapsed="0.000468"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.925939" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.926931" level="INFO">${j} = 49</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.926587" elapsed="0.000370"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.927712" level="INFO">${item} =     {
      "group-id": 49,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 49000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.927125" elapsed="0.000621"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.927910" elapsed="0.000196"/>
</kw>
<var name="${iteration}">49</var>
<status status="PASS" start="2026-05-25T01:55:35.925910" elapsed="0.002236"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.928678" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.928433" elapsed="0.000497"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.928309" elapsed="0.000673"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.929513" level="INFO">${j} = 50</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.929160" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.930280" level="INFO">${item} =     {
      "group-id": 50,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 50000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.929695" elapsed="0.000613"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.930463" elapsed="0.000186"/>
</kw>
<var name="${iteration}">50</var>
<status status="PASS" start="2026-05-25T01:55:35.928281" elapsed="0.002405"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.931111" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.930862" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.930847" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.931844" level="INFO">${j} = 51</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.931498" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.932615" level="INFO">${item} =     {
      "group-id": 51,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 51000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.932023" elapsed="0.000621"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.932797" elapsed="0.000196"/>
</kw>
<var name="${iteration}">51</var>
<status status="PASS" start="2026-05-25T01:55:35.930818" elapsed="0.002213"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.933467" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.933233" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.933219" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.934223" level="INFO">${j} = 52</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.933858" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.934968" level="INFO">${item} =     {
      "group-id": 52,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 52000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.934403" elapsed="0.000593"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.935165" elapsed="0.000182"/>
</kw>
<var name="${iteration}">52</var>
<status status="PASS" start="2026-05-25T01:55:35.933189" elapsed="0.002203"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.935807" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.935573" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.935558" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.936561" level="INFO">${j} = 53</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.936211" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.937346" level="INFO">${item} =     {
      "group-id": 53,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 53000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.936741" elapsed="0.000633"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.937528" elapsed="0.000180"/>
</kw>
<var name="${iteration}">53</var>
<status status="PASS" start="2026-05-25T01:55:35.935526" elapsed="0.002219"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.938177" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.937922" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.937907" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.938912" level="INFO">${j} = 54</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.938565" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.939682" level="INFO">${item} =     {
      "group-id": 54,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 54000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.939108" elapsed="0.000602"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.939863" elapsed="0.000180"/>
</kw>
<var name="${iteration}">54</var>
<status status="PASS" start="2026-05-25T01:55:35.937878" elapsed="0.002252"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.940547" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.940311" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.940297" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.941331" level="INFO">${j} = 55</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.940956" elapsed="0.000402"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.942096" level="INFO">${item} =     {
      "group-id": 55,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 55000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.941512" elapsed="0.000613"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.942281" elapsed="0.000182"/>
</kw>
<var name="${iteration}">55</var>
<status status="PASS" start="2026-05-25T01:55:35.940267" elapsed="0.002233"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.942916" elapsed="0.000197"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.942681" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.942667" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.943666" level="INFO">${j} = 56</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.943320" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.944436" level="INFO">${item} =     {
      "group-id": 56,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 56000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.943847" elapsed="0.000617"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.944616" elapsed="0.000182"/>
</kw>
<var name="${iteration}">56</var>
<status status="PASS" start="2026-05-25T01:55:35.942635" elapsed="0.002201"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.945397" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.945155" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.945011" elapsed="0.000632"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.946148" level="INFO">${j} = 57</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.945784" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.946904" level="INFO">${item} =     {
      "group-id": 57,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 57000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.946330" elapsed="0.000602"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.947103" elapsed="0.000184"/>
</kw>
<var name="${iteration}">57</var>
<status status="PASS" start="2026-05-25T01:55:35.944982" elapsed="0.002343"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.947740" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.947501" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.947486" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.948493" level="INFO">${j} = 58</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.948143" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.949276" level="INFO">${item} =     {
      "group-id": 58,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 58000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.948672" elapsed="0.000633"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.949459" elapsed="0.000185"/>
</kw>
<var name="${iteration}">58</var>
<status status="PASS" start="2026-05-25T01:55:35.947457" elapsed="0.002225"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.950105" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.949857" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.949842" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.950842" level="INFO">${j} = 59</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.950495" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.951605" level="INFO">${item} =     {
      "group-id": 59,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 59000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.951020" elapsed="0.000643"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.951820" elapsed="0.000182"/>
</kw>
<var name="${iteration}">59</var>
<status status="PASS" start="2026-05-25T01:55:35.949813" elapsed="0.002226"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.952465" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.952232" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.952218" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.953249" level="INFO">${j} = 60</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.952876" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.953998" level="INFO">${item} =     {
      "group-id": 60,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 60000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.953431" elapsed="0.000595"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.954196" elapsed="0.000182"/>
</kw>
<var name="${iteration}">60</var>
<status status="PASS" start="2026-05-25T01:55:35.952189" elapsed="0.002226"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.954823" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.954591" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.954577" elapsed="0.000502"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.955570" level="INFO">${j} = 61</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.955224" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.956338" level="INFO">${item} =     {
      "group-id": 61,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 61000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.955754" elapsed="0.000612"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.956519" elapsed="0.000180"/>
</kw>
<var name="${iteration}">61</var>
<status status="PASS" start="2026-05-25T01:55:35.954548" elapsed="0.002188"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.957181" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.956926" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.956910" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.957911" level="INFO">${j} = 62</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.957566" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.958690" level="INFO">${item} =     {
      "group-id": 62,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 62000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.958112" elapsed="0.000605"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.958870" elapsed="0.000180"/>
</kw>
<var name="${iteration}">62</var>
<status status="PASS" start="2026-05-25T01:55:35.956880" elapsed="0.002225"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.959513" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.959282" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.959267" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.960262" level="INFO">${j} = 63</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.959898" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.961023" level="INFO">${item} =     {
      "group-id": 63,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 63000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.960442" elapsed="0.000609"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.961225" elapsed="0.000183"/>
</kw>
<var name="${iteration}">63</var>
<status status="PASS" start="2026-05-25T01:55:35.959238" elapsed="0.002208"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.961969" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.961731" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.961608" elapsed="0.000625"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.962722" level="INFO">${j} = 64</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.962373" elapsed="0.000406"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.964319" level="INFO">${item} =     {
      "group-id": 64,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 64000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.962937" elapsed="0.001442"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.964589" elapsed="0.000201"/>
</kw>
<var name="${iteration}">64</var>
<status status="PASS" start="2026-05-25T01:55:35.961579" elapsed="0.003274"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.965302" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.965042" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.965028" elapsed="0.000521"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.966080" level="INFO">${j} = 65</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.965691" elapsed="0.000417"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.966833" level="INFO">${item} =     {
      "group-id": 65,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 65000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.966264" elapsed="0.000598"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.967016" elapsed="0.000200"/>
</kw>
<var name="${iteration}">65</var>
<status status="PASS" start="2026-05-25T01:55:35.964998" elapsed="0.002255"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.967664" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.967430" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.967416" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.968410" level="INFO">${j} = 66</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.968047" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.969195" level="INFO">${item} =     {
      "group-id": 66,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 66000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.968590" elapsed="0.000634"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.969379" elapsed="0.000181"/>
</kw>
<var name="${iteration}">66</var>
<status status="PASS" start="2026-05-25T01:55:35.967386" elapsed="0.002211"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.970010" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.969775" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.969761" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.970766" level="INFO">${j} = 67</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.970418" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.971548" level="INFO">${item} =     {
      "group-id": 67,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 67000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.970947" elapsed="0.000629"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.971736" elapsed="0.000180"/>
</kw>
<var name="${iteration}">67</var>
<status status="PASS" start="2026-05-25T01:55:35.969731" elapsed="0.002222"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.972382" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.972147" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.972132" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.973149" level="INFO">${j} = 68</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.972781" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.973905" level="INFO">${item} =     {
      "group-id": 68,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 68000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.973331" elapsed="0.000602"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.974108" elapsed="0.000189"/>
</kw>
<var name="${iteration}">68</var>
<status status="PASS" start="2026-05-25T01:55:35.972102" elapsed="0.002232"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.974811" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.974511" elapsed="0.000524"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.974496" elapsed="0.000563"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.975568" level="INFO">${j} = 69</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.975219" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.976341" level="INFO">${item} =     {
      "group-id": 69,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 69000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.975750" elapsed="0.000619"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.976524" elapsed="0.000187"/>
</kw>
<var name="${iteration}">69</var>
<status status="PASS" start="2026-05-25T01:55:35.974467" elapsed="0.002281"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.977204" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.976951" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.976937" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.977937" level="INFO">${j} = 70</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.977590" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.978701" level="INFO">${item} =     {
      "group-id": 70,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 70000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.978131" elapsed="0.000598"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.978883" elapsed="0.000178"/>
</kw>
<var name="${iteration}">70</var>
<status status="PASS" start="2026-05-25T01:55:35.976908" elapsed="0.002207"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.979647" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.979406" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.979285" elapsed="0.000610"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.980404" level="INFO">${j} = 71</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.980037" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.981192" level="INFO">${item} =     {
      "group-id": 71,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 71000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.980585" elapsed="0.000635"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.981375" elapsed="0.000181"/>
</kw>
<var name="${iteration}">71</var>
<status status="PASS" start="2026-05-25T01:55:35.979256" elapsed="0.002337"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.982004" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.981771" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.981756" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.982756" level="INFO">${j} = 72</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.982408" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.983521" level="INFO">${item} =     {
      "group-id": 72,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 72000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.982937" elapsed="0.000612"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.983708" elapsed="0.000180"/>
</kw>
<var name="${iteration}">72</var>
<status status="PASS" start="2026-05-25T01:55:35.981727" elapsed="0.002198"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.984354" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.984119" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.984104" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.985119" level="INFO">${j} = 73</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.984753" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.985884" level="INFO">${item} =     {
      "group-id": 73,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 73000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.985300" elapsed="0.000612"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.986116" elapsed="0.000185"/>
</kw>
<var name="${iteration}">73</var>
<status status="PASS" start="2026-05-25T01:55:35.984059" elapsed="0.002280"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.986751" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.986516" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.986502" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.987505" level="INFO">${j} = 74</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.987154" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.988279" level="INFO">${item} =     {
      "group-id": 74,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 74000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.987691" elapsed="0.000616"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.988462" elapsed="0.000181"/>
</kw>
<var name="${iteration}">74</var>
<status status="PASS" start="2026-05-25T01:55:35.986472" elapsed="0.002208"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.989138" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.988885" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.988871" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.989873" level="INFO">${j} = 75</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.989526" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.990640" level="INFO">${item} =     {
      "group-id": 75,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 75000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.990053" elapsed="0.000619"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.990827" elapsed="0.000180"/>
</kw>
<var name="${iteration}">75</var>
<status status="PASS" start="2026-05-25T01:55:35.988841" elapsed="0.002203"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.991470" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.991238" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.991222" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.992214" level="INFO">${j} = 76</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.991853" elapsed="0.000387"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.992968" level="INFO">${item} =     {
      "group-id": 76,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 76000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.992393" elapsed="0.000603"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.993167" elapsed="0.000183"/>
</kw>
<var name="${iteration}">76</var>
<status status="PASS" start="2026-05-25T01:55:35.991193" elapsed="0.002194"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.993800" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.993563" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.993548" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.994544" level="INFO">${j} = 77</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.994198" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.995307" level="INFO">${item} =     {
      "group-id": 77,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 77000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.994723" elapsed="0.000612"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.995488" elapsed="0.000179"/>
</kw>
<var name="${iteration}">77</var>
<status status="PASS" start="2026-05-25T01:55:35.993519" elapsed="0.002185"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.996245" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.995990" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.995867" elapsed="0.000624"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.996992" level="INFO">${j} = 78</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.996632" elapsed="0.000385"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.997793" level="INFO">${item} =     {
      "group-id": 78,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 78000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.997223" elapsed="0.000598"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.997975" elapsed="0.000197"/>
</kw>
<var name="${iteration}">78</var>
<status status="PASS" start="2026-05-25T01:55:35.995837" elapsed="0.002373"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:35.998621" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:35.998387" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:35.998373" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:35.999372" level="INFO">${j} = 79</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.999007" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.000137" level="INFO">${item} =     {
      "group-id": 79,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 79000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:35.999552" elapsed="0.000613"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.000318" elapsed="0.000183"/>
</kw>
<var name="${iteration}">79</var>
<status status="PASS" start="2026-05-25T01:55:35.998344" elapsed="0.002195"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.000972" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.000739" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.000724" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.001727" level="INFO">${j} = 80</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.001380" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.002495" level="INFO">${item} =     {
      "group-id": 80,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 80000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.001906" elapsed="0.000617"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.002676" elapsed="0.000181"/>
</kw>
<var name="${iteration}">80</var>
<status status="PASS" start="2026-05-25T01:55:36.000693" elapsed="0.002201"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.003324" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.003088" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.003056" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.004060" level="INFO">${j} = 81</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.003712" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.004866" level="INFO">${item} =     {
      "group-id": 81,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 81000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.004265" elapsed="0.000629"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.005048" elapsed="0.000202"/>
</kw>
<var name="${iteration}">81</var>
<status status="PASS" start="2026-05-25T01:55:36.003027" elapsed="0.002261"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.005702" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.005468" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.005451" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.006452" level="INFO">${j} = 82</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.006103" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.007215" level="INFO">${item} =     {
      "group-id": 82,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 82000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.006631" elapsed="0.000612"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.007395" elapsed="0.000181"/>
</kw>
<var name="${iteration}">82</var>
<status status="PASS" start="2026-05-25T01:55:36.005423" elapsed="0.002190"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.008021" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.007790" elapsed="0.000499"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.007775" elapsed="0.000542"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.008823" level="INFO">${j} = 83</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.008460" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.009595" level="INFO">${item} =     {
      "group-id": 83,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 83000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.009004" elapsed="0.000619"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.009775" elapsed="0.000181"/>
</kw>
<var name="${iteration}">83</var>
<status status="PASS" start="2026-05-25T01:55:36.007747" elapsed="0.002246"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.010420" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.010188" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.010173" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.011168" level="INFO">${j} = 84</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.010805" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.011916" level="INFO">${item} =     {
      "group-id": 84,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 84000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.011350" elapsed="0.000593"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.012114" elapsed="0.000181"/>
</kw>
<var name="${iteration}">84</var>
<status status="PASS" start="2026-05-25T01:55:36.010144" elapsed="0.002189"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.012888" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.012638" elapsed="0.000492"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.012496" elapsed="0.000658"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.013649" level="INFO">${j} = 85</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.013297" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.014417" level="INFO">${item} =     {
      "group-id": 85,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 85000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.013830" elapsed="0.000614"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.014600" elapsed="0.000181"/>
</kw>
<var name="${iteration}">85</var>
<status status="PASS" start="2026-05-25T01:55:36.012467" elapsed="0.002351"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.015245" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.014995" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.014980" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.015985" level="INFO">${j} = 86</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.015634" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.016762" level="INFO">${item} =     {
      "group-id": 86,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 86000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.016180" elapsed="0.000610"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.016944" elapsed="0.000198"/>
</kw>
<var name="${iteration}">86</var>
<status status="PASS" start="2026-05-25T01:55:36.014951" elapsed="0.002229"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.017591" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.017358" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.017343" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.018339" level="INFO">${j} = 87</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.017975" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.019103" level="INFO">${item} =     {
      "group-id": 87,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 87000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.018518" elapsed="0.000614"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.019285" elapsed="0.000180"/>
</kw>
<var name="${iteration}">87</var>
<status status="PASS" start="2026-05-25T01:55:36.017314" elapsed="0.002232"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.019960" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.019726" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.019711" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.020721" level="INFO">${j} = 88</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.020362" elapsed="0.000385"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.021494" level="INFO">${item} =     {
      "group-id": 88,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 88000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.020903" elapsed="0.000619"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.021682" elapsed="0.000181"/>
</kw>
<var name="${iteration}">88</var>
<status status="PASS" start="2026-05-25T01:55:36.019682" elapsed="0.002219"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.022329" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.022094" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.022063" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.023059" level="INFO">${j} = 89</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.022715" elapsed="0.000385"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.023818" level="INFO">${item} =     {
      "group-id": 89,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 89000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.023255" elapsed="0.000591"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.023997" elapsed="0.000197"/>
</kw>
<var name="${iteration}">89</var>
<status status="PASS" start="2026-05-25T01:55:36.022034" elapsed="0.002197"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.024662" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.024406" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.024390" elapsed="0.000522"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.025419" level="INFO">${j} = 90</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.025054" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.026187" level="INFO">${item} =     {
      "group-id": 90,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 90000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.025599" elapsed="0.000616"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.026369" elapsed="0.000181"/>
</kw>
<var name="${iteration}">90</var>
<status status="PASS" start="2026-05-25T01:55:36.024361" elapsed="0.002226"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.026995" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.026764" elapsed="0.000468"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.026748" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.027745" level="INFO">${j} = 91</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.027399" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.028505" level="INFO">${item} =     {
      "group-id": 91,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 91000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.027924" elapsed="0.000621"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.028729" elapsed="0.000222"/>
</kw>
<var name="${iteration}">91</var>
<status status="PASS" start="2026-05-25T01:55:36.026720" elapsed="0.002278"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.029963" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.029713" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.029189" elapsed="0.001037"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.030720" level="INFO">${j} = 92</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.030368" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.031501" level="INFO">${item} =     {
      "group-id": 92,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 92000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.030903" elapsed="0.000670"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.031760" elapsed="0.000184"/>
</kw>
<var name="${iteration}">92</var>
<status status="PASS" start="2026-05-25T01:55:36.029159" elapsed="0.002822"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.032416" elapsed="0.000196"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.032182" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.032166" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.033187" level="INFO">${j} = 93</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.032818" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.033942" level="INFO">${item} =     {
      "group-id": 93,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 93000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.033367" elapsed="0.000603"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.034141" elapsed="0.000182"/>
</kw>
<var name="${iteration}">93</var>
<status status="PASS" start="2026-05-25T01:55:36.032135" elapsed="0.002225"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.034806" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.034536" elapsed="0.000495"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.034520" elapsed="0.000535"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.035560" level="INFO">${j} = 94</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.035212" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.036322" level="INFO">${item} =     {
      "group-id": 94,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 94000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.035739" elapsed="0.000611"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.036526" elapsed="0.000184"/>
</kw>
<var name="${iteration}">94</var>
<status status="PASS" start="2026-05-25T01:55:36.034492" elapsed="0.002255"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.037182" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.036925" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.036910" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.037924" level="INFO">${j} = 95</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.037571" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.038693" level="INFO">${item} =     {
      "group-id": 95,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 95000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.038122" elapsed="0.000599"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.038876" elapsed="0.000182"/>
</kw>
<var name="${iteration}">95</var>
<status status="PASS" start="2026-05-25T01:55:36.036880" elapsed="0.002230"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.039522" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.039289" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.039275" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.040273" level="INFO">${j} = 96</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.039908" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.041035" level="INFO">${item} =     {
      "group-id": 96,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 96000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.040455" elapsed="0.000624"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.041237" elapsed="0.000184"/>
</kw>
<var name="${iteration}">96</var>
<status status="PASS" start="2026-05-25T01:55:36.039245" elapsed="0.002213"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.041871" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.041638" elapsed="0.000468"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.041623" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.042622" level="INFO">${j} = 97</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.042274" elapsed="0.000411"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.043443" level="INFO">${item} =     {
      "group-id": 97,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 97000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.042846" elapsed="0.000625"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.043627" elapsed="0.000181"/>
</kw>
<var name="${iteration}">97</var>
<status status="PASS" start="2026-05-25T01:55:36.041593" elapsed="0.002253"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.044282" elapsed="0.000192"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.044023" elapsed="0.000490"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.044008" elapsed="0.000529"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.045028" level="INFO">${j} = 98</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.044679" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.045798" level="INFO">${item} =     {
      "group-id": 98,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 98000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.045228" elapsed="0.000598"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.045979" elapsed="0.000198"/>
</kw>
<var name="${iteration}">98</var>
<status status="PASS" start="2026-05-25T01:55:36.043979" elapsed="0.002236"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.046743" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.046503" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.046380" elapsed="0.000609"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.047501" level="INFO">${j} = 99</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.047149" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.048272" level="INFO">${item} =     {
      "group-id": 99,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 99000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.047688" elapsed="0.000613"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.048481" elapsed="0.000186"/>
</kw>
<var name="${iteration}">99</var>
<status status="PASS" start="2026-05-25T01:55:36.046350" elapsed="0.002355"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.049135" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.048884" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.048869" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.049874" level="INFO">${j} = 100</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.049526" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.050645" level="INFO">${item} =     {
      "group-id": 100,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 100000,
            "action": [
              {
                "...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.050054" elapsed="0.000622"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.050831" elapsed="0.000181"/>
</kw>
<var name="${iteration}">100</var>
<status status="PASS" start="2026-05-25T01:55:36.048839" elapsed="0.002210"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="PASS" start="2026-05-25T01:55:35.810371" elapsed="0.240725"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.052391" level="INFO">${final_text} = {
  "flow-node-inventory:group": [
    {
      "group-id": 1,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 1000,
            "action": [
  ...</msg>
<var>${final_text}</var>
<arg>SEPARATOR=</arg>
<arg>${prolog}</arg>
<arg>${endline}</arg>
<arg>@{items}</arg>
<arg>${endline}</arg>
<arg>${epilog}</arg>
<doc>Catenates the given items together and returns the resulted string.</doc>
<status status="PASS" start="2026-05-25T01:55:36.051261" elapsed="0.001159"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:36.052498" elapsed="0.000044"/>
</return>
<msg time="2026-05-25T01:55:36.052678" level="INFO">${data} = {
  "flow-node-inventory:group": [
    {
      "group-id": 1,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 1000,
            "action": [
  ...</msg>
<var>${data}</var>
<arg>folder=${folder}</arg>
<arg>name_prefix=post_</arg>
<arg>base_name=${base_name}</arg>
<arg>extension=${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>endline=${endline}</arg>
<arg>iterations=${iterations}</arg>
<arg>iter_start=${iter_start}</arg>
<arg>iter_j_offset=${iter_j_offset}</arg>
<doc>Read a template from folder, strip endline, make changes according to mapping, return the result.
If ${iterations} value is present, put text together from "prolog", "item" and "epilog" parts,
where additional template variable ${i} goes from 1, by one 100 times.
Template variable ${j} is calculated as ${i} incremented by offset 0 ( j = i + iter_j_offset )
used to create non uniform data in order to be able to validate UPDATE operations.
POST (as opposed to PUT) needs slightly different data, ${name_prefix} may be used to distinguish.
(Actually, it is GET who formats data differently when URI is a top-level container.)</doc>
<status status="PASS" start="2026-05-25T01:55:35.756288" elapsed="0.296417"/>
</kw>
<kw name="Resolve_Jmes_Path" owner="TemplatedRequests">
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:36.054178" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2/jmespath.expr' does not exist.</msg>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:36.053867" elapsed="0.000390">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2/jmespath.expr' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:36.054354" level="INFO">${read_jmes_file} = False</msg>
<var>${read_jmes_file}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:36.053519" elapsed="0.000859"/>
</kw>
<if>
<branch type="IF" condition="${read_jmes_file} == ${true}">
<kw name="Get File" owner="OperatingSystem">
<var>${jmes_expression}</var>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.054696" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:36.054449" elapsed="0.000303"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.055299" level="INFO">${jmes_expression} = None</msg>
<var>${jmes_expression}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:36.054990" elapsed="0.000334"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.054777" elapsed="0.000584"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.054430" elapsed="0.000952"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.057733" level="INFO">${expression} = </msg>
<var>${expression}</var>
<arg>${read_jmes_file} == ${true}</arg>
<arg>${jmes_expression}</arg>
<arg>${EMPTY}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:36.055535" elapsed="0.002225"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-05-25T01:55:36.057811" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:36.057963" level="INFO">${jmes_expression} = </msg>
<var>${jmes_expression}</var>
<arg>${folder}</arg>
<doc>Reads JMES path from file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/jmespath.expr if the file exists and
returns the JMES path. Empty string is returned otherwise.</doc>
<status status="PASS" start="2026-05-25T01:55:36.053151" elapsed="0.004837"/>
</kw>
<kw name="Post_To_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.059524" level="INFO">/rests/data/opendaylight-inventory:nodes/node=openflow%3A2</msg>
<arg>${uri}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:36.059272" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.059966" level="INFO">{
  "flow-node-inventory:group": [
    {
      "group-id": 1,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 1000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 1000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-1",
      "group-type": "group-ff"
    },
    {
      "group-id": 2,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 2000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 2000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-2",
      "group-type": "group-ff"
    },
    {
      "group-id": 3,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 3000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 3000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-3",
      "group-type": "group-ff"
    },
    {
      "group-id": 4,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 4000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 4000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-4",
      "group-type": "group-ff"
    },
    {
      "group-id": 5,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 5000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 5000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-5",
      "group-type": "group-ff"
    },
    {
      "group-id": 6,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 6000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 6000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-6",
      "group-type": "group-ff"
    },
    {
      "group-id": 7,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 7000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 7000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-7",
      "group-type": "group-ff"
    },
    {
      "group-id": 8,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 8000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 8000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-8",
      "group-type": "group-ff"
    },
    {
      "group-id": 9,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 9000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 9000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-9",
      "group-type": "group-ff"
    },
    {
      "group-id": 10,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 10000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 10000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-10",
      "group-type": "group-ff"
    },
    {
      "group-id": 11,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 11000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 11000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-11",
      "group-type": "group-ff"
    },
    {
      "group-id": 12,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 12000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 12000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-12",
      "group-type": "group-ff"
    },
    {
      "group-id": 13,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 13000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 13000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-13",
      "group-type": "group-ff"
    },
    {
      "group-id": 14,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 14000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 14000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-14",
      "group-type": "group-ff"
    },
    {
      "group-id": 15,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 15000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 15000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-15",
      "group-type": "group-ff"
    },
    {
      "group-id": 16,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 16000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 16000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-16",
      "group-type": "group-ff"
    },
    {
      "group-id": 17,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 17000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 17000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-17",
      "group-type": "group-ff"
    },
    {
      "group-id": 18,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 18000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 18000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-18",
      "group-type": "group-ff"
    },
    {
      "group-id": 19,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 19000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 19000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-19",
      "group-type": "group-ff"
    },
    {
      "group-id": 20,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 20000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 20000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-20",
      "group-type": "group-ff"
    },
    {
      "group-id": 21,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 21000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 21000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-21",
      "group-type": "group-ff"
    },
    {
      "group-id": 22,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 22000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 22000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-22",
      "group-type": "group-ff"
    },
    {
      "group-id": 23,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 23000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 23000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-23",
      "group-type": "group-ff"
    },
    {
      "group-id": 24,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 24000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 24000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-24",
      "group-type": "group-ff"
    },
    {
      "group-id": 25,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 25000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 25000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-25",
      "group-type": "group-ff"
    },
    {
      "group-id": 26,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 26000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 26000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-26",
      "group-type": "group-ff"
    },
    {
      "group-id": 27,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 27000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 27000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-27",
      "group-type": "group-ff"
    },
    {
      "group-id": 28,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 28000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 28000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-28",
      "group-type": "group-ff"
    },
    {
      "group-id": 29,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 29000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 29000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-29",
      "group-type": "group-ff"
    },
    {
      "group-id": 30,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 30000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 30000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-30",
      "group-type": "group-ff"
    },
    {
      "group-id": 31,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 31000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 31000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-31",
      "group-type": "group-ff"
    },
    {
      "group-id": 32,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 32000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 32000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-32",
      "group-type": "group-ff"
    },
    {
      "group-id": 33,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 33000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 33000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-33",
      "group-type": "group-ff"
    },
    {
      "group-id": 34,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 34000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 34000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-34",
      "group-type": "group-ff"
    },
    {
      "group-id": 35,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 35000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 35000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-35",
      "group-type": "group-ff"
    },
    {
      "group-id": 36,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 36000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 36000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-36",
      "group-type": "group-ff"
    },
    {
      "group-id": 37,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 37000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 37000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-37",
      "group-type": "group-ff"
    },
    {
      "group-id": 38,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 38000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 38000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-38",
      "group-type": "group-ff"
    },
    {
      "group-id": 39,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 39000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 39000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-39",
      "group-type": "group-ff"
    },
    {
      "group-id": 40,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 40000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 40000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-40",
      "group-type": "group-ff"
    },
    {
      "group-id": 41,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 41000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 41000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-41",
      "group-type": "group-ff"
    },
    {
      "group-id": 42,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 42000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 42000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-42",
      "group-type": "group-ff"
    },
    {
      "group-id": 43,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 43000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 43000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-43",
      "group-type": "group-ff"
    },
    {
      "group-id": 44,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 44000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 44000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-44",
      "group-type": "group-ff"
    },
    {
      "group-id": 45,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 45000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 45000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-45",
      "group-type": "group-ff"
    },
    {
      "group-id": 46,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 46000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 46000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-46",
      "group-type": "group-ff"
    },
    {
      "group-id": 47,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 47000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 47000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-47",
      "group-type": "group-ff"
    },
    {
      "group-id": 48,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 48000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 48000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-48",
      "group-type": "group-ff"
    },
    {
      "group-id": 49,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 49000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 49000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-49",
      "group-type": "group-ff"
    },
    {
      "group-id": 50,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 50000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 50000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-50",
      "group-type": "group-ff"
    },
    {
      "group-id": 51,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 51000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 51000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-51",
      "group-type": "group-ff"
    },
    {
      "group-id": 52,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 52000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 52000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-52",
      "group-type": "group-ff"
    },
    {
      "group-id": 53,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 53000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 53000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-53",
      "group-type": "group-ff"
    },
    {
      "group-id": 54,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 54000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 54000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-54",
      "group-type": "group-ff"
    },
    {
      "group-id": 55,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 55000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 55000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-55",
      "group-type": "group-ff"
    },
    {
      "group-id": 56,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 56000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 56000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-56",
      "group-type": "group-ff"
    },
    {
      "group-id": 57,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 57000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 57000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-57",
      "group-type": "group-ff"
    },
    {
      "group-id": 58,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 58000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 58000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-58",
      "group-type": "group-ff"
    },
    {
      "group-id": 59,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 59000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 59000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-59",
      "group-type": "group-ff"
    },
    {
      "group-id": 60,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 60000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 60000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-60",
      "group-type": "group-ff"
    },
    {
      "group-id": 61,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 61000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 61000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-61",
      "group-type": "group-ff"
    },
    {
      "group-id": 62,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 62000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 62000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-62",
      "group-type": "group-ff"
    },
    {
      "group-id": 63,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 63000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 63000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-63",
      "group-type": "group-ff"
    },
    {
      "group-id": 64,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 64000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 64000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-64",
      "group-type": "group-ff"
    },
    {
      "group-id": 65,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 65000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 65000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-65",
      "group-type": "group-ff"
    },
    {
      "group-id": 66,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 66000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 66000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-66",
      "group-type": "group-ff"
    },
    {
      "group-id": 67,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 67000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 67000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-67",
      "group-type": "group-ff"
    },
    {
      "group-id": 68,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 68000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 68000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-68",
      "group-type": "group-ff"
    },
    {
      "group-id": 69,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 69000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 69000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-69",
      "group-type": "group-ff"
    },
    {
      "group-id": 70,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 70000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 70000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-70",
      "group-type": "group-ff"
    },
    {
      "group-id": 71,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 71000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 71000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-71",
      "group-type": "group-ff"
    },
    {
      "group-id": 72,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 72000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 72000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-72",
      "group-type": "group-ff"
    },
    {
      "group-id": 73,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 73000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 73000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-73",
      "group-type": "group-ff"
    },
    {
      "group-id": 74,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 74000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 74000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-74",
      "group-type": "group-ff"
    },
    {
      "group-id": 75,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 75000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 75000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-75",
      "group-type": "group-ff"
    },
    {
      "group-id": 76,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 76000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 76000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-76",
      "group-type": "group-ff"
    },
    {
      "group-id": 77,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 77000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 77000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-77",
      "group-type": "group-ff"
    },
    {
      "group-id": 78,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 78000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 78000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-78",
      "group-type": "group-ff"
    },
    {
      "group-id": 79,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 79000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 79000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-79",
      "group-type": "group-ff"
    },
    {
      "group-id": 80,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 80000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 80000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-80",
      "group-type": "group-ff"
    },
    {
      "group-id": 81,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 81000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 81000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-81",
      "group-type": "group-ff"
    },
    {
      "group-id": 82,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 82000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 82000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-82",
      "group-type": "group-ff"
    },
    {
      "group-id": 83,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 83000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 83000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-83",
      "group-type": "group-ff"
    },
    {
      "group-id": 84,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 84000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 84000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-84",
      "group-type": "group-ff"
    },
    {
      "group-id": 85,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 85000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 85000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-85",
      "group-type": "group-ff"
    },
    {
      "group-id": 86,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 86000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 86000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-86",
      "group-type": "group-ff"
    },
    {
      "group-id": 87,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 87000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 87000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-87",
      "group-type": "group-ff"
    },
    {
      "group-id": 88,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 88000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 88000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-88",
      "group-type": "group-ff"
    },
    {
      "group-id": 89,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 89000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 89000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-89",
      "group-type": "group-ff"
    },
    {
      "group-id": 90,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 90000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 90000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-90",
      "group-type": "group-ff"
    },
    {
      "group-id": 91,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 91000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 91000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-91",
      "group-type": "group-ff"
    },
    {
      "group-id": 92,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 92000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 92000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-92",
      "group-type": "group-ff"
    },
    {
      "group-id": 93,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 93000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 93000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-93",
      "group-type": "group-ff"
    },
    {
      "group-id": 94,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 94000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 94000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-94",
      "group-type": "group-ff"
    },
    {
      "group-id": 95,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 95000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 95000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-95",
      "group-type": "group-ff"
    },
    {
      "group-id": 96,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 96000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 96000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-96",
      "group-type": "group-ff"
    },
    {
      "group-id": 97,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 97000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 97000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-97",
      "group-type": "group-ff"
    },
    {
      "group-id": 98,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 98000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 98000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-98",
      "group-type": "group-ff"
    },
    {
      "group-id": 99,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 99000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 99000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-99",
      "group-type": "group-ff"
    },
    {
      "group-id": 100,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 100000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 100000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-100",
      "group-type": "group-ff"
    }
  ]
}</msg>
<arg>${data}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:36.059726" elapsed="0.000699"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.060834" level="INFO">{'Content-Type': 'application/json'}</msg>
<arg>${content_type}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:36.060585" elapsed="0.000292"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.061287" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:36.061029" elapsed="0.000301"/>
</kw>
<kw name="Join_Two_Headers" owner="TemplatedRequests">
<kw name="Copy Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:36.062155" level="INFO">${accumulator} = {'Content-Type': 'application/json'}</msg>
<var>${accumulator}</var>
<arg>${first}</arg>
<doc>Returns a copy of the given dictionary.</doc>
<status status="PASS" start="2026-05-25T01:55:36.061934" elapsed="0.000247"/>
</kw>
<kw name="Get Dictionary Items" owner="Collections">
<msg time="2026-05-25T01:55:36.062504" level="INFO">${items_to_add} = []</msg>
<var>${items_to_add}</var>
<arg>${second}</arg>
<doc>Returns items of the given ``dictionary`` as a list.</doc>
<status status="PASS" start="2026-05-25T01:55:36.062334" elapsed="0.000195"/>
</kw>
<kw name="Set To Dictionary" owner="Collections">
<arg>${accumulator}</arg>
<arg>@{items_to_add}</arg>
<doc>Adds the given ``key_value_pairs`` and/or ``items`` to the ``dictionary``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.062682" elapsed="0.000187"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.063283" level="INFO">{'Content-Type': 'application/json'}</msg>
<arg>${accumulator}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:36.063021" elapsed="0.000305"/>
</kw>
<return>
<value>${accumulator}</value>
<status status="PASS" start="2026-05-25T01:55:36.063369" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:55:36.063521" level="INFO">${headers} = {'Content-Type': 'application/json'}</msg>
<var>${headers}</var>
<arg>first=${content_type}</arg>
<arg>second=${accept}</arg>
<doc>Take two dicts, join them, return result. Second argument values take precedence.</doc>
<status status="PASS" start="2026-05-25T01:55:36.061534" elapsed="0.002011"/>
</kw>
<if>
<branch type="IF" condition="&quot;&quot;&quot;${http_timeout}&quot;&quot;&quot; == &quot;&quot;&quot;${EMPTY}&quot;&quot;&quot;">
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:36.089706" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Content-Length': '42507', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body={
  "flow-node-inventory:group": [
    {
      "group-id": 1,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 1000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 1000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-1",
      "group-type": "group-ff"
    },
    {
      "group-id": 2,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 2000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 2000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-2",
      "group-type": "group-ff"
    },
    {
      "group-id": 3,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 3000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 3000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-3",
      "group-type": "group-ff"
    },
    {
      "group-id": 4,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 4000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 4000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-4",
      "group-type": "group-ff"
    },
    {
      "group-id": 5,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 5000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 5000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-5",
      "group-type": "group-ff"
    },
    {
      "group-id": 6,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 6000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 6000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-6",
      "group-type": "group-ff"
    },
    {
      "group-id": 7,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 7000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 7000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-7",
      "group-type": "group-ff"
    },
    {
      "group-id": 8,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 8000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 8000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-8",
      "group-type": "group-ff"
    },
    {
      "group-id": 9,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 9000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 9000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-9",
      "group-type": "group-ff"
    },
    {
      "group-id": 10,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 10000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 10000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-10",
      "group-type": "group-ff"
    },
    {
      "group-id": 11,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 11000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 11000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-11",
      "group-type": "group-ff"
    },
    {
      "group-id": 12,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 12000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 12000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-12",
      "group-type": "group-ff"
    },
    {
      "group-id": 13,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 13000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 13000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-13",
      "group-type": "group-ff"
    },
    {
      "group-id": 14,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 14000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 14000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-14",
      "group-type": "group-ff"
    },
    {
      "group-id": 15,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 15000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 15000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-15",
      "group-type": "group-ff"
    },
    {
      "group-id": 16,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 16000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 16000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-16",
      "group-type": "group-ff"
    },
    {
      "group-id": 17,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 17000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 17000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-17",
      "group-type": "group-ff"
    },
    {
      "group-id": 18,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 18000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 18000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-18",
      "group-type": "group-ff"
    },
    {
      "group-id": 19,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 19000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 19000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-19",
      "group-type": "group-ff"
    },
    {
      "group-id": 20,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 20000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 20000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-20",
      "group-type": "group-ff"
    },
    {
      "group-id": 21,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 21000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 21000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-21",
      "group-type": "group-ff"
    },
    {
      "group-id": 22,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 22000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 22000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-22",
      "group-type": "group-ff"
    },
    {
      "group-id": 23,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 23000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 23000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-23",
      "group-type": "group-ff"
    },
    {
      "group-id": 24,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 24000,
            "action": [
              {
                "order": 1,
                "... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:55:36.089922" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/flow-node-inventory:group=88', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:36.090105" level="INFO">${response} = &lt;Response [201]&gt;</msg>
<var>${response}</var>
<arg>${session}</arg>
<arg>${uri}</arg>
<arg>data=${data}</arg>
<arg>headers=${headers}</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:36.065809" elapsed="0.024336"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.063769" elapsed="0.026442"/>
</branch>
<branch type="ELSE">
<kw name="POST On Session" owner="RequestsLibrary">
<var>${response}</var>
<arg>${session}</arg>
<arg>${uri}</arg>
<arg>data=${data}</arg>
<arg>headers=${headers}</arg>
<arg>timeout=${http_timeout}</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.090464" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:36.090248" elapsed="0.000309"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.063597" elapsed="0.026990"/>
</if>
<kw name="Check_Status_Code" owner="TemplatedRequests">
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.095174" level="INFO"/>
<arg>${response.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:36.092018" elapsed="0.003217"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.091712" elapsed="0.003573"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.091686" elapsed="0.003634"/>
</if>
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.098770" level="INFO">201</msg>
<arg>${response.status_code}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:36.095707" elapsed="0.003126"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.095396" elapsed="0.003485"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.095372" elapsed="0.003543"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.099714" level="INFO">${status_codes_type} = list</msg>
<var>${status_codes_type}</var>
<arg>type($additional_allowed_status_codes).__name__</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.099185" elapsed="0.000567"/>
</kw>
<if>
<branch type="IF" condition="&quot;${status_codes_type}&quot;!=&quot;list&quot;">
<kw name="Create List" owner="BuiltIn">
<var>${allowed_status_codes_list}</var>
<arg>${additional_allowed_status_codes}</arg>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.100247" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:36.099849" elapsed="0.000482"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.100977" level="INFO">${allowed_status_codes_list} = []</msg>
<var>${allowed_status_codes_list}</var>
<arg>${additional_allowed_status_codes}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:36.100613" elapsed="0.000390"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.100364" elapsed="0.000675"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.099824" elapsed="0.001236"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.101609" level="INFO">${status_codes_type} = list</msg>
<var>${status_codes_type}</var>
<arg>type($explicit_status_codes).__name__</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.101249" elapsed="0.000386"/>
</kw>
<if>
<branch type="IF" condition="&quot;${status_codes_type}&quot;!=&quot;list&quot;">
<kw name="Create List" owner="BuiltIn">
<var>${explicit_status_codes_list}</var>
<arg>${explicit_status_codes}</arg>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.101949" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:36.101704" elapsed="0.000301"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.102513" level="INFO">${explicit_status_codes_list} = []</msg>
<var>${explicit_status_codes_list}</var>
<arg>${explicit_status_codes}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:36.102219" elapsed="0.000319"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.102028" elapsed="0.000546"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.101686" elapsed="0.000909"/>
</if>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>"""${explicit_status_codes_list}""" != """${NO_STATUS_CODES}"""</arg>
<arg>Collections.List_Should_Contain_Value</arg>
<arg>${explicit_status_codes_list}</arg>
<arg>${response.status_code}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:36.102746" elapsed="0.000359"/>
</kw>
<kw name="Combine Lists" owner="Collections">
<msg time="2026-05-25T01:55:36.103547" level="INFO">${final_allowd_list} = [200, 201, 204]</msg>
<var>${final_allowd_list}</var>
<arg>${ALLOWED_STATUS_CODES}</arg>
<arg>${allowed_status_codes_list}</arg>
<doc>Combines the given ``lists`` together and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.103272" elapsed="0.000300"/>
</kw>
<kw name="List Should Contain Value" owner="Collections">
<arg>${final_allowd_list}</arg>
<arg>${response.status_code}</arg>
<doc>Fails if the ``value`` is not found from ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.103732" elapsed="0.002203"/>
</kw>
<arg>${response}</arg>
<arg>additional_allowed_status_codes=${additional_allowed_status_codes}</arg>
<arg>explicit_status_codes=${explicit_status_codes}</arg>
<doc>Log response text, check status_code is one of allowed ones. In cases where this keyword is
called in a WUKS it could end up logging tons of data and it may be desired to skip the logging by passing
log_response=False, but by default it remains True.</doc>
<status status="PASS" start="2026-05-25T01:55:36.091102" elapsed="0.014896"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-05-25T01:55:36.106190" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:36.106083" elapsed="0.000151"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.106050" elapsed="0.000205"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<msg time="2026-05-25T01:55:36.108675" level="INFO">${text_normalized} = </msg>
<var>${text_normalized}</var>
<arg>${response.text}</arg>
<arg>jmes_path=${jmes_path}</arg>
<doc>Attempt to return sorted indented JSON string.</doc>
<status status="PASS" start="2026-05-25T01:55:36.106401" elapsed="0.002300"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="PASS" start="2026-05-25T01:55:36.108748" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:36.108901" level="INFO">${response_text} = </msg>
<var>${response_text}</var>
<arg>uri=${uri}</arg>
<arg>data=${data}</arg>
<arg>content_type=${content_type}</arg>
<arg>accept=${accept}</arg>
<arg>session=${session}</arg>
<arg>jmes_path=${jmes_expression}</arg>
<arg>normalize_json=${normalize_json}</arg>
<arg>additional_allowed_status_codes=${additional_allowed_status_codes}</arg>
<arg>explicit_status_codes=${explicit_status_codes}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>POST data to given URI, check status code and return response text.
${content_type} and ${accept} are mandatory Python objects with headers to use.
If ${normalize_json}, normalize text before returning.</doc>
<status status="PASS" start="2026-05-25T01:55:36.058329" elapsed="0.050596"/>
</kw>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-05-25T01:55:36.109027" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:55:36.109199" level="INFO">${response_text} = </msg>
<var>${response_text}</var>
<arg>folder=${folder}</arg>
<arg>base_name=data</arg>
<arg>extension=json</arg>
<arg>accept=${ACCEPT_EMPTY}</arg>
<arg>content_type=${HEADERS_YANG_JSON}</arg>
<arg>mapping=${mapping}</arg>
<arg>session=${session}</arg>
<arg>normalize_json=True</arg>
<arg>endline=${\n}</arg>
<arg>iterations=${iterations}</arg>
<arg>iter_start=${iter_start}</arg>
<arg>additional_allowed_status_codes=${additional_allowed_status_codes}</arg>
<arg>explicit_status_codes=${explicit_status_codes}</arg>
<arg>http_timeout=${http_timeout}</arg>
<arg>iter_j_offset=${iter_j_offset}</arg>
<doc>Resolve URI and data from folder, call Post_To_Uri, return response text.</doc>
<status status="PASS" start="2026-05-25T01:55:35.673215" elapsed="0.436009"/>
</kw>
<if>
<branch type="IF" condition="${verify}">
<kw name="Verify_Response_As_Json_Templated" owner="TemplatedRequests">
<arg>response=${response_text}</arg>
<arg>folder=${folder}</arg>
<arg>base_name=response</arg>
<arg>mapping=${mapping}</arg>
<arg>iter_j_offset=${iter_j_offset}</arg>
<doc>Resolve expected JSON data, should be equal to provided ${response}.
JSON normalization is used, endlines enabled for readability.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.109565" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:36.109329" elapsed="0.000303"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.109311" elapsed="0.000344"/>
</if>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-05-25T01:55:36.109688" elapsed="0.000025"/>
</return>
<arg>folder=${VAR_DIR}/add-group-2</arg>
<arg>mapping=${mapping}</arg>
<arg>session=session</arg>
<arg>iterations=${iter}</arg>
<doc>Add arguments sensible for JSON data, return Post_Templated response text.
Optionally, verification against response.json (no iteration) is called.
Only subset of JSON data is verified and returned if JMES path is specified in
file ${folder}/jmespath.expr.
Response status code must be one of values from ${explicit_status_codes} if specified or one of set
created from all positive HTTP status codes together with ${additional_allowed_status_codes}.</doc>
<status status="PASS" start="2026-05-25T01:55:35.670480" elapsed="0.439331"/>
</kw>
<var name="${switch}">2</var>
<status status="PASS" start="2026-05-25T01:55:35.656917" elapsed="0.452939"/>
</iter>
<iter>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.110517" level="INFO">&amp;{mapping} = { NODE=openflow:3 }</msg>
<var>&amp;{mapping}</var>
<arg>NODE=openflow:${switch}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.110111" elapsed="0.000434"/>
</kw>
<kw name="Post_As_Json_Templated" owner="TemplatedRequests">
<kw name="Post_Templated" owner="TemplatedRequests">
<kw name="Resolve_Text_From_Template_Folder" owner="TemplatedRequests">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.151899" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/location.uri</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:36.151525" elapsed="0.000402"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:36.152678" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2.titanium/location.uri' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:36.152460" elapsed="0.000285">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2.titanium/location.uri' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:36.152838" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:36.152120" elapsed="0.000742"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.153430" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/location.uri</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:36.153026" elapsed="0.000431"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:36.153754" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2/location.uri"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2/location.uri&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:36.153914" level="INFO">${template} = /rests/data/opendaylight-inventory:nodes/node=$NODE
</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:36.153618" elapsed="0.000322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.154352" level="INFO">/rests/data/opendaylight-inventory:nodes/node=$NODE
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:36.154109" elapsed="0.000287"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.155347" level="INFO">mapping: {'NODE': 'openflow:3'}</msg>
<arg>mapping: ${mapping}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:36.155090" elapsed="0.000301"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.155809" level="INFO">${encoded_mapping} = {}</msg>
<var>${encoded_mapping}</var>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.155549" elapsed="0.000285"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Convert To String" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.156589" level="INFO">${value} = openflow:3</msg>
<var>${value}</var>
<arg>${value}</arg>
<doc>Converts the given item to a Unicode string.</doc>
<status status="PASS" start="2026-05-25T01:55:36.156230" elapsed="0.000385"/>
</kw>
<kw name="Percent_Encode_String" owner="TemplatedRequests">
<kw name="Replace String Using Regexp" owner="String">
<msg time="2026-05-25T01:55:36.157610" level="INFO">${encoded} = openflow%3A3</msg>
<var>${encoded}</var>
<arg>${value}</arg>
<arg>:</arg>
<arg>%3A</arg>
<doc>Replaces ``pattern`` in the given ``string`` with ``replace_with``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.157162" elapsed="0.000476"/>
</kw>
<return>
<value>${encoded}</value>
<status status="PASS" start="2026-05-25T01:55:36.157723" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:55:36.157878" level="INFO">${encoded_value} = openflow%3A3</msg>
<var>${encoded_value}</var>
<arg>${value}</arg>
<doc>Percent encodes reserved characters in the given string so it can be used as part of url.</doc>
<status status="PASS" start="2026-05-25T01:55:36.156800" elapsed="0.001103"/>
</kw>
<kw name="Set To Dictionary" owner="Collections">
<arg>${encoded_mapping}</arg>
<arg>${key}</arg>
<arg>${encoded_value}</arg>
<doc>Adds the given ``key_value_pairs`` and/or ``items`` to the ``dictionary``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.158055" elapsed="0.000292"/>
</kw>
<var name="${key}">NODE</var>
<var name="${value}">openflow:3</var>
<status status="PASS" start="2026-05-25T01:55:36.156092" elapsed="0.002296"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="PASS" start="2026-05-25T01:55:36.155892" elapsed="0.002531"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-05-25T01:55:36.158467" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:55:36.158631" level="INFO">${mapping_to_use} = {'NODE': 'openflow%3A3'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-05-25T01:55:36.154754" elapsed="0.003904"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.154464" elapsed="0.004227"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.158863" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:36.158715" elapsed="0.000204"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.154445" elapsed="0.004495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.159622" level="INFO">${final_text} = /rests/data/opendaylight-inventory:nodes/node=openflow%3A3</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.159096" elapsed="0.000554"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:36.159699" elapsed="0.000028"/>
</return>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:36.150903" elapsed="0.008919"/>
</kw>
<msg time="2026-05-25T01:55:36.159876" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>not "${iterations}"</arg>
<arg>Resolve_Text_From_Template_File</arg>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:36.138862" elapsed="0.021061"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${prolog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.prolog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.171979" elapsed="0.000028"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${epilog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.epilog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.183702" elapsed="0.000027"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${item_template}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${base_name}.item.${extension}</arg>
<arg>mapping=${mapping}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.195542" elapsed="0.000028"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.195740" elapsed="0.000021"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<var>${separator}</var>
<arg>'${extension}' != 'json'</arg>
<arg>${endline}</arg>
<arg>,${endline}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.195937" elapsed="0.000022"/>
</kw>
<for flavor="IN RANGE">
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.196318" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:36.196174" elapsed="0.000200"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:36.196159" elapsed="0.000239"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.196536" elapsed="0.000020"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.196747" elapsed="0.000021"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.196915" elapsed="0.000019"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-05-25T01:55:36.196130" elapsed="0.000837"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-05-25T01:55:36.196014" elapsed="0.000979"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<var>${final_text}</var>
<arg>SEPARATOR=</arg>
<arg>${prolog}</arg>
<arg>${endline}</arg>
<arg>@{items}</arg>
<arg>${endline}</arg>
<arg>${epilog}</arg>
<doc>Catenates the given items together and returns the resulted string.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.197154" elapsed="0.000022"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-05-25T01:55:36.197232" elapsed="0.000015"/>
</return>
<msg time="2026-05-25T01:55:36.197348" level="INFO">${uri} = /rests/data/opendaylight-inventory:nodes/node=openflow%3A3</msg>
<var>${uri}</var>
<arg>folder=${folder}</arg>
<arg>base_name=location</arg>
<arg>extension=uri</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=True</arg>
<doc>Read a template from folder, strip endline, make changes according to mapping, return the result.
If ${iterations} value is present, put text together from "prolog", "item" and "epilog" parts,
where additional template variable ${i} goes from 1, by one 100 times.
Template variable ${j} is calculated as ${i} incremented by offset 0 ( j = i + iter_j_offset )
used to create non uniform data in order to be able to validate UPDATE operations.
POST (as opposed to PUT) needs slightly different data, ${name_prefix} may be used to distinguish.
(Actually, it is GET who formats data differently when URI is a top-level container.)</doc>
<status status="PASS" start="2026-05-25T01:55:36.134715" elapsed="0.062659"/>
</kw>
<kw name="Resolve_Text_From_Template_Folder" owner="TemplatedRequests">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>not "${iterations}"</arg>
<arg>Resolve_Text_From_Template_File</arg>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:36.207824" elapsed="0.000355"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.220901" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/post_data.prolog.json</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:36.220531" elapsed="0.000398"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:36.221656" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2.titanium/post_data.prolog.json' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:36.221448" elapsed="0.000271">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2.titanium/post_data.prolog.json' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:36.221813" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:36.221109" elapsed="0.000728"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.222401" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/post_data.prolog.json</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:36.222000" elapsed="0.000428"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:36.222747" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2/post_data.prolog.json"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2/post_data.prolog.json&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:36.222879" level="INFO">${template} = {
  "flow-node-inventory:group": [
</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:36.222591" elapsed="0.000313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.223320" level="INFO">{
  "flow-node-inventory:group": [
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:36.223060" elapsed="0.000304"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:36.223727" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:36.223431" elapsed="0.000354"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.224267" level="INFO">${mapping_to_use} = {'NODE': 'openflow:3'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:36.223957" elapsed="0.000337"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.223809" elapsed="0.000520"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.223412" elapsed="0.000938"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.224914" level="INFO">${final_text} = {
  "flow-node-inventory:group": [</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.224496" elapsed="0.000445"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:36.224990" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:36.225157" level="INFO">${prolog} = {
  "flow-node-inventory:group": [</msg>
<var>${prolog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.prolog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:36.219904" elapsed="0.005278"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.238297" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/post_data.epilog.json</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:36.237889" elapsed="0.000437"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:36.239043" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2.titanium/post_data.epilog.json' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:36.238832" elapsed="0.000291">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2.titanium/post_data.epilog.json' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:36.239217" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:36.238493" elapsed="0.000749"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.239796" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/post_data.epilog.json</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:36.239404" elapsed="0.000420"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:36.240136" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2/post_data.epilog.json"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2/post_data.epilog.json&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:36.240263" level="INFO">${template} =   ]
}
</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:36.239985" elapsed="0.000303"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.240692" level="INFO">  ]
}
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:36.240444" elapsed="0.000291"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:36.241118" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:36.240806" elapsed="0.000371"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.241649" level="INFO">${mapping_to_use} = {'NODE': 'openflow:3'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:36.241357" elapsed="0.000319"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.241202" elapsed="0.000510"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.240785" elapsed="0.000948"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.242319" level="INFO">${final_text} =   ]
}</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.241878" elapsed="0.000467"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:36.242395" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:55:36.242546" level="INFO">${epilog} =   ]
}</msg>
<var>${epilog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.epilog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:36.237248" elapsed="0.005323"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.255343" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/data.item.json</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:36.254954" elapsed="0.000417"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:36.256114" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2.titanium/data.item.json' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:36.255891" elapsed="0.000286">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2.titanium/data.item.json' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:36.256270" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:36.255533" elapsed="0.000762"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.256839" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/data.item.json</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:36.256458" elapsed="0.000408"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:36.257178" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2/data.item.json"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2/data.item.json&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:36.257337" level="INFO">${template} =     {
      "group-id": ${i},
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": ${i}000,
            "action": [
              {
               ...</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:36.257027" elapsed="0.000337"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.257763" level="INFO">    {
      "group-id": ${i},
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": ${i}000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": ${i}000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-${i}",
      "group-type": "group-ff"
    }
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:36.257519" elapsed="0.000292"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:36.258182" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:36.257878" elapsed="0.000363"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.258703" level="INFO">${mapping_to_use} = {'NODE': 'openflow:3'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:36.258412" elapsed="0.000317"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.258265" elapsed="0.000499"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.257859" elapsed="0.000927"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.259522" level="INFO">${final_text} =     {
      "group-id": ${i},
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": ${i}000,
            "action": [
              {
               ...</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.258933" elapsed="0.000617"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:36.259614" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:55:36.259776" level="INFO">${item_template} =     {
      "group-id": ${i},
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": ${i}000,
            "action": [
              {
               ...</msg>
<var>${item_template}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${base_name}.item.${extension}</arg>
<arg>mapping=${mapping}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:36.254418" elapsed="0.005384"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.260234" level="INFO">${items} = []</msg>
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:55:36.259972" elapsed="0.000287"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.260780" level="INFO">${separator} = ,
</msg>
<var>${separator}</var>
<arg>'${extension}' != 'json'</arg>
<arg>${endline}</arg>
<arg>,${endline}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:36.260419" elapsed="0.000387"/>
</kw>
<for flavor="IN RANGE">
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.261444" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:36.261210" elapsed="0.000291"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.261196" elapsed="0.000329"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.262017" level="INFO">${j} = 1</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.261666" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.262946" level="INFO">${item} =     {
      "group-id": 1,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 1000,
            "action": [
              {
                "orde...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.262213" elapsed="0.000761"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.263148" elapsed="0.000195"/>
</kw>
<var name="${iteration}">1</var>
<status status="PASS" start="2026-05-25T01:55:36.261165" elapsed="0.002216"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.263814" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.263575" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.263547" elapsed="0.000536"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.264582" level="INFO">${j} = 2</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.264230" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.265359" level="INFO">${item} =     {
      "group-id": 2,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 2000,
            "action": [
              {
                "orde...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.264768" elapsed="0.000619"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.265542" elapsed="0.000183"/>
</kw>
<var name="${iteration}">2</var>
<status status="PASS" start="2026-05-25T01:55:36.263517" elapsed="0.002246"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.266235" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.265949" elapsed="0.000513"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.265933" elapsed="0.000554"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.266980" level="INFO">${j} = 3</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.266630" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.267783" level="INFO">${item} =     {
      "group-id": 3,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 3000,
            "action": [
              {
                "orde...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.267177" elapsed="0.000635"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.267967" elapsed="0.000202"/>
</kw>
<var name="${iteration}">3</var>
<status status="PASS" start="2026-05-25T01:55:36.265904" elapsed="0.002304"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.268622" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.268385" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.268370" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.269382" level="INFO">${j} = 4</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.269011" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.270148" level="INFO">${item} =     {
      "group-id": 4,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 4000,
            "action": [
              {
                "orde...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.269565" elapsed="0.000612"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.270334" elapsed="0.000181"/>
</kw>
<var name="${iteration}">4</var>
<status status="PASS" start="2026-05-25T01:55:36.268341" elapsed="0.002212"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.270972" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.270738" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.270724" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.271735" level="INFO">${j} = 5</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.271376" elapsed="0.000385"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.272556" level="INFO">${item} =     {
      "group-id": 5,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 5000,
            "action": [
              {
                "orde...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.271930" elapsed="0.000656"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.272746" elapsed="0.000183"/>
</kw>
<var name="${iteration}">5</var>
<status status="PASS" start="2026-05-25T01:55:36.270694" elapsed="0.002272"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.273396" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.273162" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.273147" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.274145" level="INFO">${j} = 6</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.273781" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.274899" level="INFO">${item} =     {
      "group-id": 6,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 6000,
            "action": [
              {
                "orde...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.274326" elapsed="0.000602"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.275095" elapsed="0.000184"/>
</kw>
<var name="${iteration}">6</var>
<status status="PASS" start="2026-05-25T01:55:36.273117" elapsed="0.002199"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.275742" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.275494" elapsed="0.000466"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.275479" elapsed="0.000506"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.276492" level="INFO">${j} = 7</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.276143" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.277250" level="INFO">${item} =     {
      "group-id": 7,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 7000,
            "action": [
              {
                "orde...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.276672" elapsed="0.000606"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.277466" elapsed="0.000182"/>
</kw>
<var name="${iteration}">7</var>
<status status="PASS" start="2026-05-25T01:55:36.275450" elapsed="0.002236"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.278114" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.277864" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.277849" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.278853" level="INFO">${j} = 8</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.278505" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.279797" level="INFO">${item} =     {
      "group-id": 8,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 8000,
            "action": [
              {
                "orde...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.279035" elapsed="0.000791"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.279983" elapsed="0.000218"/>
</kw>
<var name="${iteration}">8</var>
<status status="PASS" start="2026-05-25T01:55:36.277819" elapsed="0.002421"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.280655" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.280419" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.280404" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.281413" level="INFO">${j} = 9</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.281045" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.282187" level="INFO">${item} =     {
      "group-id": 9,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 9000,
            "action": [
              {
                "orde...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.281593" elapsed="0.000623"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.282372" elapsed="0.000182"/>
</kw>
<var name="${iteration}">9</var>
<status status="PASS" start="2026-05-25T01:55:36.280374" elapsed="0.002218"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.283005" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.282772" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.282757" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.283777" level="INFO">${j} = 10</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.283408" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.284546" level="INFO">${item} =     {
      "group-id": 10,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 10000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.283958" elapsed="0.000617"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.284730" elapsed="0.000183"/>
</kw>
<var name="${iteration}">10</var>
<status status="PASS" start="2026-05-25T01:55:36.282727" elapsed="0.002223"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.285384" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.285150" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.285135" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.286132" level="INFO">${j} = 11</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.285769" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.286881" level="INFO">${item} =     {
      "group-id": 11,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 11000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.286313" elapsed="0.000596"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.287062" elapsed="0.000198"/>
</kw>
<var name="${iteration}">11</var>
<status status="PASS" start="2026-05-25T01:55:36.285104" elapsed="0.002193"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.287729" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.287486" elapsed="0.000463"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.287471" elapsed="0.000503"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.288484" level="INFO">${j} = 12</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.288133" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.289294" level="INFO">${item} =     {
      "group-id": 12,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 12000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.288705" elapsed="0.000618"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.289479" elapsed="0.000185"/>
</kw>
<var name="${iteration}">12</var>
<status status="PASS" start="2026-05-25T01:55:36.287429" elapsed="0.002274"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.290133" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.289883" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.289868" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.290873" level="INFO">${j} = 13</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.290523" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.291664" level="INFO">${item} =     {
      "group-id": 13,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 13000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.291053" elapsed="0.000639"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.291847" elapsed="0.000181"/>
</kw>
<var name="${iteration}">13</var>
<status status="PASS" start="2026-05-25T01:55:36.289839" elapsed="0.002242"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.292498" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.292264" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.292249" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.293257" level="INFO">${j} = 14</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.292891" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.294012" level="INFO">${item} =     {
      "group-id": 14,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 14000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.293437" elapsed="0.000602"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.294210" elapsed="0.000182"/>
</kw>
<var name="${iteration}">14</var>
<status status="PASS" start="2026-05-25T01:55:36.292220" elapsed="0.002209"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.294843" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.294609" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.294592" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.295727" level="INFO">${j} = 15</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.295246" elapsed="0.000507"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.296498" level="INFO">${item} =     {
      "group-id": 15,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 15000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.295909" elapsed="0.000617"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.296680" elapsed="0.000180"/>
</kw>
<var name="${iteration}">15</var>
<status status="PASS" start="2026-05-25T01:55:36.294562" elapsed="0.002335"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.297328" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.297090" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.297060" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.298062" level="INFO">${j} = 16</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.297714" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.298832" level="INFO">${item} =     {
      "group-id": 16,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 16000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.298259" elapsed="0.000601"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.299015" elapsed="0.000220"/>
</kw>
<var name="${iteration}">16</var>
<status status="PASS" start="2026-05-25T01:55:36.297031" elapsed="0.002242"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.299704" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.299463" elapsed="0.000496"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.299448" elapsed="0.000538"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.300501" level="INFO">${j} = 17</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.300145" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.301269" level="INFO">${item} =     {
      "group-id": 17,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 17000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.300682" elapsed="0.000615"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.301451" elapsed="0.000182"/>
</kw>
<var name="${iteration}">17</var>
<status status="PASS" start="2026-05-25T01:55:36.299418" elapsed="0.002252"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.302095" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.301848" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.301833" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.302831" level="INFO">${j} = 18</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.302483" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.303632" level="INFO">${item} =     {
      "group-id": 18,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 18000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.303011" elapsed="0.000650"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.303815" elapsed="0.000181"/>
</kw>
<var name="${iteration}">18</var>
<status status="PASS" start="2026-05-25T01:55:36.301804" elapsed="0.002230"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.304465" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.304231" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.304217" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.305216" level="INFO">${j} = 19</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.304852" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.305969" level="INFO">${item} =     {
      "group-id": 19,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 19000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.305395" elapsed="0.000601"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.306165" elapsed="0.000182"/>
</kw>
<var name="${iteration}">19</var>
<status status="PASS" start="2026-05-25T01:55:36.304187" elapsed="0.002197"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.306795" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.306561" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.306546" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.307566" level="INFO">${j} = 20</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.307199" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.308331" level="INFO">${item} =     {
      "group-id": 20,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 20000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.307744" elapsed="0.000615"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.308518" elapsed="0.000186"/>
</kw>
<var name="${iteration}">20</var>
<status status="PASS" start="2026-05-25T01:55:36.306517" elapsed="0.002224"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.309165" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.308916" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.308902" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.309905" level="INFO">${j} = 21</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.309553" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.310676" level="INFO">${item} =     {
      "group-id": 21,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 21000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.310099" elapsed="0.000605"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.310857" elapsed="0.000182"/>
</kw>
<var name="${iteration}">21</var>
<status status="PASS" start="2026-05-25T01:55:36.308873" elapsed="0.002253"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.311554" elapsed="0.000306"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.311308" elapsed="0.000591"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.311293" elapsed="0.000631"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.312431" level="INFO">${j} = 22</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.312081" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.313196" level="INFO">${item} =     {
      "group-id": 22,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 22000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.312612" elapsed="0.000613"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.313380" elapsed="0.000181"/>
</kw>
<var name="${iteration}">22</var>
<status status="PASS" start="2026-05-25T01:55:36.311264" elapsed="0.002334"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.314010" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.313777" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.313762" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.314761" level="INFO">${j} = 23</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.314413" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.315564" level="INFO">${item} =     {
      "group-id": 23,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 23000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.314940" elapsed="0.000653"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.315748" elapsed="0.000184"/>
</kw>
<var name="${iteration}">23</var>
<status status="PASS" start="2026-05-25T01:55:36.313733" elapsed="0.002237"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.316401" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.316166" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.316151" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.317154" level="INFO">${j} = 24</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.316786" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.317906" level="INFO">${item} =     {
      "group-id": 24,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 24000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.317334" elapsed="0.000600"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.318104" elapsed="0.000183"/>
</kw>
<var name="${iteration}">24</var>
<status status="PASS" start="2026-05-25T01:55:36.316120" elapsed="0.002204"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.318743" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.318499" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.318485" elapsed="0.000502"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.319502" level="INFO">${j} = 25</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.319144" elapsed="0.000384"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.320266" level="INFO">${item} =     {
      "group-id": 25,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 25000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.319682" elapsed="0.000612"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.320449" elapsed="0.000189"/>
</kw>
<var name="${iteration}">25</var>
<status status="PASS" start="2026-05-25T01:55:36.318456" elapsed="0.002219"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.321099" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.320851" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.320837" elapsed="0.000507"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.321835" level="INFO">${j} = 26</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.321484" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.322598" level="INFO">${item} =     {
      "group-id": 26,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 26000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.322014" elapsed="0.000644"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.322817" elapsed="0.000183"/>
</kw>
<var name="${iteration}">26</var>
<status status="PASS" start="2026-05-25T01:55:36.320808" elapsed="0.002230"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.323476" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.323233" elapsed="0.000468"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.323218" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.324240" level="INFO">${j} = 27</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.323872" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.324984" level="INFO">${item} =     {
      "group-id": 27,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 27000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.324421" elapsed="0.000591"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.325183" elapsed="0.000182"/>
</kw>
<var name="${iteration}">27</var>
<status status="PASS" start="2026-05-25T01:55:36.323188" elapsed="0.002214"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.325814" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.325580" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.325565" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.326560" level="INFO">${j} = 28</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.326214" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.327348" level="INFO">${item} =     {
      "group-id": 28,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 28000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.326740" elapsed="0.000637"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.327534" elapsed="0.000185"/>
</kw>
<var name="${iteration}">28</var>
<status status="PASS" start="2026-05-25T01:55:36.325536" elapsed="0.002220"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.328293" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.327932" elapsed="0.000591"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.327917" elapsed="0.000631"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.329036" level="INFO">${j} = 29</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.328689" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.329802" level="INFO">${item} =     {
      "group-id": 29,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 29000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.329236" elapsed="0.000594"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.329984" elapsed="0.000200"/>
</kw>
<var name="${iteration}">29</var>
<status status="PASS" start="2026-05-25T01:55:36.327888" elapsed="0.002334"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.330633" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.330399" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.330383" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.331417" level="INFO">${j} = 30</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.331023" elapsed="0.000420"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.332183" level="INFO">${item} =     {
      "group-id": 30,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 30000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.331599" elapsed="0.000612"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.332366" elapsed="0.000180"/>
</kw>
<var name="${iteration}">30</var>
<status status="PASS" start="2026-05-25T01:55:36.330354" elapsed="0.002229"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.332992" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.332760" elapsed="0.000468"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.332745" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.333751" level="INFO">${j} = 31</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.333392" elapsed="0.000417"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.334561" level="INFO">${item} =     {
      "group-id": 31,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 31000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.333968" elapsed="0.000621"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.334750" elapsed="0.000183"/>
</kw>
<var name="${iteration}">31</var>
<status status="PASS" start="2026-05-25T01:55:36.332716" elapsed="0.002255"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.335408" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.335165" elapsed="0.000465"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.335150" elapsed="0.000504"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.336167" level="INFO">${j} = 32</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.335801" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.336917" level="INFO">${item} =     {
      "group-id": 32,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 32000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.336347" elapsed="0.000598"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.337116" elapsed="0.000183"/>
</kw>
<var name="${iteration}">32</var>
<status status="PASS" start="2026-05-25T01:55:36.335120" elapsed="0.002216"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.337749" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.337515" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.337500" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.338500" level="INFO">${j} = 33</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.338150" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.339283" level="INFO">${item} =     {
      "group-id": 33,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 33000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.338681" elapsed="0.000638"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.339474" elapsed="0.000182"/>
</kw>
<var name="${iteration}">33</var>
<status status="PASS" start="2026-05-25T01:55:36.337470" elapsed="0.002223"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.340122" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.339871" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.339856" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.340869" level="INFO">${j} = 34</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.340509" elapsed="0.000386"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.341627" level="INFO">${item} =     {
      "group-id": 34,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 34000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.341047" elapsed="0.000608"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.341811" elapsed="0.000181"/>
</kw>
<var name="${iteration}">34</var>
<status status="PASS" start="2026-05-25T01:55:36.339827" elapsed="0.002202"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.342457" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.342225" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.342209" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.343202" level="INFO">${j} = 35</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.342842" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.343958" level="INFO">${item} =     {
      "group-id": 35,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 35000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.343392" elapsed="0.000594"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.344156" elapsed="0.000183"/>
</kw>
<var name="${iteration}">35</var>
<status status="PASS" start="2026-05-25T01:55:36.342179" elapsed="0.002197"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.344934" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.344660" elapsed="0.000515"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.344539" elapsed="0.000661"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.345690" level="INFO">${j} = 36</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.345342" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.346452" level="INFO">${item} =     {
      "group-id": 36,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 36000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.345869" elapsed="0.000611"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.346633" elapsed="0.000186"/>
</kw>
<var name="${iteration}">36</var>
<status status="PASS" start="2026-05-25T01:55:36.344510" elapsed="0.002346"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.347291" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.347033" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.347018" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.348051" level="INFO">${j} = 37</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.347694" elapsed="0.000405"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.348833" level="INFO">${item} =     {
      "group-id": 37,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 37000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.348254" elapsed="0.000607"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.349014" elapsed="0.000202"/>
</kw>
<var name="${iteration}">37</var>
<status status="PASS" start="2026-05-25T01:55:36.346989" elapsed="0.002265"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.349672" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.349433" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.349418" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.350425" level="INFO">${j} = 38</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.350057" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.351184" level="INFO">${item} =     {
      "group-id": 38,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 38000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.350603" elapsed="0.000635"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.351397" elapsed="0.000182"/>
</kw>
<var name="${iteration}">38</var>
<status status="PASS" start="2026-05-25T01:55:36.349389" elapsed="0.002227"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.352032" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.351797" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.351782" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.352786" level="INFO">${j} = 39</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.352438" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.353554" level="INFO">${item} =     {
      "group-id": 39,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 39000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.352966" elapsed="0.000616"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.353741" elapsed="0.000183"/>
</kw>
<var name="${iteration}">39</var>
<status status="PASS" start="2026-05-25T01:55:36.351754" elapsed="0.002206"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.354390" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.354156" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.354141" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.355136" level="INFO">${j} = 40</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.354773" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.355905" level="INFO">${item} =     {
      "group-id": 40,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 40000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.355333" elapsed="0.000599"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.356134" elapsed="0.000186"/>
</kw>
<var name="${iteration}">40</var>
<status status="PASS" start="2026-05-25T01:55:36.354111" elapsed="0.002246"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.356773" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.356535" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.356521" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.357520" level="INFO">${j} = 41</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.357171" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.358284" level="INFO">${item} =     {
      "group-id": 41,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 41000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.357700" elapsed="0.000612"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.358466" elapsed="0.000181"/>
</kw>
<var name="${iteration}">41</var>
<status status="PASS" start="2026-05-25T01:55:36.356492" elapsed="0.002192"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.359112" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.358861" elapsed="0.000486"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.358846" elapsed="0.000525"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.359863" level="INFO">${j} = 42</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.359513" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.360627" level="INFO">${item} =     {
      "group-id": 42,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 42000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.360042" elapsed="0.000613"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.360808" elapsed="0.000355"/>
</kw>
<var name="${iteration}">42</var>
<status status="PASS" start="2026-05-25T01:55:36.358817" elapsed="0.002389"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.362390" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.362140" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.361386" elapsed="0.001258"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.363189" level="INFO">${j} = 43</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.362788" elapsed="0.000429"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.363957" level="INFO">${item} =     {
      "group-id": 43,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 43000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.363379" elapsed="0.000607"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.364158" elapsed="0.000191"/>
</kw>
<var name="${iteration}">43</var>
<status status="PASS" start="2026-05-25T01:55:36.361349" elapsed="0.003037"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.364796" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.364561" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.364546" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.365548" level="INFO">${j} = 44</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.365200" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.366319" level="INFO">${item} =     {
      "group-id": 44,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 44000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.365732" elapsed="0.000616"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.366501" elapsed="0.000180"/>
</kw>
<var name="${iteration}">44</var>
<status status="PASS" start="2026-05-25T01:55:36.364517" elapsed="0.002201"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.367155" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.366895" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.366880" elapsed="0.000528"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.367897" level="INFO">${j} = 45</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.367549" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.368720" level="INFO">${item} =     {
      "group-id": 45,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 45000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.368142" elapsed="0.000615"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.368911" elapsed="0.000197"/>
</kw>
<var name="${iteration}">45</var>
<status status="PASS" start="2026-05-25T01:55:36.366851" elapsed="0.002295"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.369555" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.369323" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.369308" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.370303" level="INFO">${j} = 46</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.369939" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.371050" level="INFO">${item} =     {
      "group-id": 46,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 46000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.370482" elapsed="0.000611"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.371263" elapsed="0.000183"/>
</kw>
<var name="${iteration}">46</var>
<status status="PASS" start="2026-05-25T01:55:36.369279" elapsed="0.002204"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.371899" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.371661" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.371646" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.372652" level="INFO">${j} = 47</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.372301" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.373417" level="INFO">${item} =     {
      "group-id": 47,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 47000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.372833" elapsed="0.000611"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.373599" elapsed="0.000182"/>
</kw>
<var name="${iteration}">47</var>
<status status="PASS" start="2026-05-25T01:55:36.371617" elapsed="0.002201"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.374249" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.373996" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.373981" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.374991" level="INFO">${j} = 48</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.374638" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.375790" level="INFO">${item} =     {
      "group-id": 48,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 48000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.375218" elapsed="0.000601"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.375974" elapsed="0.000198"/>
</kw>
<var name="${iteration}">48</var>
<status status="PASS" start="2026-05-25T01:55:36.373952" elapsed="0.002259"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.376685" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.376389" elapsed="0.000522"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.376375" elapsed="0.000561"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.377444" level="INFO">${j} = 49</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.377093" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.378218" level="INFO">${item} =     {
      "group-id": 49,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 49000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.377626" elapsed="0.000620"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.378401" elapsed="0.000181"/>
</kw>
<var name="${iteration}">49</var>
<status status="PASS" start="2026-05-25T01:55:36.376345" elapsed="0.002275"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.426288" elapsed="0.000264"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.425862" elapsed="0.000818"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.378789" elapsed="0.047921"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.427310" level="INFO">${j} = 50</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.426862" elapsed="0.000477"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.428131" level="INFO">${item} =     {
      "group-id": 50,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 50000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.427499" elapsed="0.000661"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.428320" elapsed="0.000186"/>
</kw>
<var name="${iteration}">50</var>
<status status="PASS" start="2026-05-25T01:55:36.378760" elapsed="0.049784"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.428993" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.428757" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.428741" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.429757" level="INFO">${j} = 51</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.429404" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.430525" level="INFO">${item} =     {
      "group-id": 51,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 51000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.429938" elapsed="0.000615"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.430709" elapsed="0.000197"/>
</kw>
<var name="${iteration}">51</var>
<status status="PASS" start="2026-05-25T01:55:36.428709" elapsed="0.002235"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.431376" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.431142" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.431127" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.432131" level="INFO">${j} = 52</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.431768" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.432876" level="INFO">${item} =     {
      "group-id": 52,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 52000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.432312" elapsed="0.000592"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.433059" elapsed="0.000197"/>
</kw>
<var name="${iteration}">52</var>
<status status="PASS" start="2026-05-25T01:55:36.431097" elapsed="0.002196"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.433704" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.433470" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.433455" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.434457" level="INFO">${j} = 53</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.434107" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.435255" level="INFO">${item} =     {
      "group-id": 53,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 53000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.434638" elapsed="0.000646"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.435440" elapsed="0.000181"/>
</kw>
<var name="${iteration}">53</var>
<status status="PASS" start="2026-05-25T01:55:36.433426" elapsed="0.002233"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.436088" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.435839" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.435824" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.436825" level="INFO">${j} = 54</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.436476" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.437592" level="INFO">${item} =     {
      "group-id": 54,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 54000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.437008" elapsed="0.000613"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.437775" elapsed="0.000180"/>
</kw>
<var name="${iteration}">54</var>
<status status="PASS" start="2026-05-25T01:55:36.435795" elapsed="0.002237"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.438465" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.438229" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.438214" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.439235" level="INFO">${j} = 55</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.438865" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.440096" level="INFO">${item} =     {
      "group-id": 55,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 55000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.439416" elapsed="0.000710"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.440285" elapsed="0.000182"/>
</kw>
<var name="${iteration}">55</var>
<status status="PASS" start="2026-05-25T01:55:36.438184" elapsed="0.002321"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.440918" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.440683" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.440668" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.441672" level="INFO">${j} = 56</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.441323" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.442438" level="INFO">${item} =     {
      "group-id": 56,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 56000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.441853" elapsed="0.000613"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.442621" elapsed="0.000182"/>
</kw>
<var name="${iteration}">56</var>
<status status="PASS" start="2026-05-25T01:55:36.440638" elapsed="0.002217"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.443291" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.443035" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.443020" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.444028" level="INFO">${j} = 57</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.443679" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.444805" level="INFO">${item} =     {
      "group-id": 57,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 57000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.444239" elapsed="0.000594"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.444988" elapsed="0.000199"/>
</kw>
<var name="${iteration}">57</var>
<status status="PASS" start="2026-05-25T01:55:36.442990" elapsed="0.002235"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.445635" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.445403" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.445389" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.446389" level="INFO">${j} = 58</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.446021" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.447200" level="INFO">${item} =     {
      "group-id": 58,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 58000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.446569" elapsed="0.000659"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.447384" elapsed="0.000181"/>
</kw>
<var name="${iteration}">58</var>
<status status="PASS" start="2026-05-25T01:55:36.445359" elapsed="0.002243"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.448018" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.447783" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.447767" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.448775" level="INFO">${j} = 59</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.448426" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.449546" level="INFO">${item} =     {
      "group-id": 59,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 59000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.448956" elapsed="0.000656"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.449777" elapsed="0.000183"/>
</kw>
<var name="${iteration}">59</var>
<status status="PASS" start="2026-05-25T01:55:36.447738" elapsed="0.002259"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.450430" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.450193" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.450178" elapsed="0.000504"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.451210" level="INFO">${j} = 60</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.450838" elapsed="0.000398"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.451955" level="INFO">${item} =     {
      "group-id": 60,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 60000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.451392" elapsed="0.000591"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.452154" elapsed="0.000190"/>
</kw>
<var name="${iteration}">60</var>
<status status="PASS" start="2026-05-25T01:55:36.450149" elapsed="0.002232"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.452796" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.452560" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.452545" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.453557" level="INFO">${j} = 61</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.453206" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.454334" level="INFO">${item} =     {
      "group-id": 61,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 61000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.453744" elapsed="0.000619"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.454518" elapsed="0.000182"/>
</kw>
<var name="${iteration}">61</var>
<status status="PASS" start="2026-05-25T01:55:36.452516" elapsed="0.002222"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.455190" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.454936" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.454921" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.456081" level="INFO">${j} = 62</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.455581" elapsed="0.000529"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.456845" level="INFO">${item} =     {
      "group-id": 62,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 62000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.456268" elapsed="0.000605"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.457029" elapsed="0.000203"/>
</kw>
<var name="${iteration}">62</var>
<status status="PASS" start="2026-05-25T01:55:36.454891" elapsed="0.002380"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.457686" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.457451" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.457435" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.458437" level="INFO">${j} = 63</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.458085" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.459226" level="INFO">${item} =     {
      "group-id": 63,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 63000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.458617" elapsed="0.000637"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.459409" elapsed="0.000182"/>
</kw>
<var name="${iteration}">63</var>
<status status="PASS" start="2026-05-25T01:55:36.457406" elapsed="0.002222"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.460047" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.459806" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.459791" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.460803" level="INFO">${j} = 64</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.460451" elapsed="0.000411"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.461611" level="INFO">${item} =     {
      "group-id": 64,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 64000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.461022" elapsed="0.000617"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.461797" elapsed="0.000182"/>
</kw>
<var name="${iteration}">64</var>
<status status="PASS" start="2026-05-25T01:55:36.459762" elapsed="0.002254"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.462452" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.462214" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.462198" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.463227" level="INFO">${j} = 65</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.462856" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.463980" level="INFO">${item} =     {
      "group-id": 65,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 65000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.463409" elapsed="0.000600"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.464180" elapsed="0.000184"/>
</kw>
<var name="${iteration}">65</var>
<status status="PASS" start="2026-05-25T01:55:36.462168" elapsed="0.002233"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.464814" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.464580" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.464565" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.465570" level="INFO">${j} = 66</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.465220" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.466335" level="INFO">${item} =     {
      "group-id": 66,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 66000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.465751" elapsed="0.000613"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.466519" elapsed="0.000185"/>
</kw>
<var name="${iteration}">66</var>
<status status="PASS" start="2026-05-25T01:55:36.464536" elapsed="0.002222"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.467188" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.466936" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.466921" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.467929" level="INFO">${j} = 67</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.467576" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.468693" level="INFO">${item} =     {
      "group-id": 67,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 67000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.468123" elapsed="0.000599"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.468876" elapsed="0.000180"/>
</kw>
<var name="${iteration}">67</var>
<status status="PASS" start="2026-05-25T01:55:36.466892" elapsed="0.002217"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.469520" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.469287" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.469273" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.470271" level="INFO">${j} = 68</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.469909" elapsed="0.000388"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.471052" level="INFO">${item} =     {
      "group-id": 68,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 68000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.470451" elapsed="0.000648"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.471255" elapsed="0.000183"/>
</kw>
<var name="${iteration}">68</var>
<status status="PASS" start="2026-05-25T01:55:36.469244" elapsed="0.002231"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.471924" elapsed="0.000324"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.471654" elapsed="0.000634"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.471639" elapsed="0.000674"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.472810" level="INFO">${j} = 69</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.472459" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.473577" level="INFO">${item} =     {
      "group-id": 69,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 69000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.472993" elapsed="0.000612"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.473767" elapsed="0.000181"/>
</kw>
<var name="${iteration}">69</var>
<status status="PASS" start="2026-05-25T01:55:36.471610" elapsed="0.002376"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.474421" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.474184" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.474169" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.475194" level="INFO">${j} = 70</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.474823" elapsed="0.000398"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.475946" level="INFO">${item} =     {
      "group-id": 70,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 70000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.475379" elapsed="0.000596"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.476147" elapsed="0.000183"/>
</kw>
<var name="${iteration}">70</var>
<status status="PASS" start="2026-05-25T01:55:36.474139" elapsed="0.002228"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.476781" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.476547" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.476533" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.477532" level="INFO">${j} = 71</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.477184" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.478292" level="INFO">${item} =     {
      "group-id": 71,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 71000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.477713" elapsed="0.000607"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.478476" elapsed="0.000200"/>
</kw>
<var name="${iteration}">71</var>
<status status="PASS" start="2026-05-25T01:55:36.476503" elapsed="0.002211"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.479151" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.478900" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.478885" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.479883" level="INFO">${j} = 72</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.479537" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.480649" level="INFO">${item} =     {
      "group-id": 72,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 72000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.480062" elapsed="0.000615"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.480830" elapsed="0.000182"/>
</kw>
<var name="${iteration}">72</var>
<status status="PASS" start="2026-05-25T01:55:36.478856" elapsed="0.002193"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.481478" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.481246" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.481231" elapsed="0.000489"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.482228" level="INFO">${j} = 73</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.481860" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.482999" level="INFO">${item} =     {
      "group-id": 73,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 73000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.482407" elapsed="0.000621"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.483236" elapsed="0.000185"/>
</kw>
<var name="${iteration}">73</var>
<status status="PASS" start="2026-05-25T01:55:36.481202" elapsed="0.002257"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.483870" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.483636" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.483622" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.484623" level="INFO">${j} = 74</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.484274" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.485381" level="INFO">${item} =     {
      "group-id": 74,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 74000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.484803" elapsed="0.000606"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.485564" elapsed="0.000185"/>
</kw>
<var name="${iteration}">74</var>
<status status="PASS" start="2026-05-25T01:55:36.483592" elapsed="0.002194"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.486215" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.485965" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.485951" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.486969" level="INFO">${j} = 75</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.486604" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.487740" level="INFO">${item} =     {
      "group-id": 75,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 75000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.487170" elapsed="0.000598"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.487924" elapsed="0.000199"/>
</kw>
<var name="${iteration}">75</var>
<status status="PASS" start="2026-05-25T01:55:36.485922" elapsed="0.002240"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.488686" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.488338" elapsed="0.000572"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.488323" elapsed="0.000612"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.489443" level="INFO">${j} = 76</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.489093" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.490288" level="INFO">${item} =     {
      "group-id": 76,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 76000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.489623" elapsed="0.000693"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.490471" elapsed="0.000199"/>
</kw>
<var name="${iteration}">76</var>
<status status="PASS" start="2026-05-25T01:55:36.488294" elapsed="0.002414"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.491141" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.490889" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.490873" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.491881" level="INFO">${j} = 77</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.491529" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.492645" level="INFO">${item} =     {
      "group-id": 77,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 77000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.492063" elapsed="0.000610"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.492827" elapsed="0.000181"/>
</kw>
<var name="${iteration}">77</var>
<status status="PASS" start="2026-05-25T01:55:36.490844" elapsed="0.002200"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.493472" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.493239" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.493224" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.494217" level="INFO">${j} = 78</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.493856" elapsed="0.000387"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.495030" level="INFO">${item} =     {
      "group-id": 78,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 78000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.494431" elapsed="0.000627"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.495234" elapsed="0.000181"/>
</kw>
<var name="${iteration}">78</var>
<status status="PASS" start="2026-05-25T01:55:36.493194" elapsed="0.002259"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.495863" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.495629" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.495615" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.496616" level="INFO">${j} = 79</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.496267" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.497377" level="INFO">${item} =     {
      "group-id": 79,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 79000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.496796" elapsed="0.000609"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.497560" elapsed="0.000186"/>
</kw>
<var name="${iteration}">79</var>
<status status="PASS" start="2026-05-25T01:55:36.495586" elapsed="0.002198"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.498211" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.497960" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.497946" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.498961" level="INFO">${j} = 80</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.498613" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.499726" level="INFO">${item} =     {
      "group-id": 80,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 80000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.499160" elapsed="0.000594"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.499909" elapsed="0.000199"/>
</kw>
<var name="${iteration}">80</var>
<status status="PASS" start="2026-05-25T01:55:36.497917" elapsed="0.002228"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.500565" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.500324" elapsed="0.000465"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.500309" elapsed="0.000505"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.501320" level="INFO">${j} = 81</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.500954" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.502086" level="INFO">${item} =     {
      "group-id": 81,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 81000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.501504" elapsed="0.000611"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.502269" elapsed="0.000180"/>
</kw>
<var name="${iteration}">81</var>
<status status="PASS" start="2026-05-25T01:55:36.500279" elapsed="0.002208"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.502913" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.502679" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.502665" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.503665" level="INFO">${j} = 82</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.503318" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.504441" level="INFO">${item} =     {
      "group-id": 82,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 82000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.503854" elapsed="0.000615"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.504623" elapsed="0.000187"/>
</kw>
<var name="${iteration}">82</var>
<status status="PASS" start="2026-05-25T01:55:36.502635" elapsed="0.002213"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.505394" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.505154" elapsed="0.000493"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.505012" elapsed="0.000666"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.506190" level="INFO">${j} = 83</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.505823" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.506976" level="INFO">${item} =     {
      "group-id": 83,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 83000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.506371" elapsed="0.000633"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.507176" elapsed="0.000184"/>
</kw>
<var name="${iteration}">83</var>
<status status="PASS" start="2026-05-25T01:55:36.504983" elapsed="0.002414"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.507816" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.507574" elapsed="0.000463"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.507559" elapsed="0.000502"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.508566" level="INFO">${j} = 84</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.508219" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.509330" level="INFO">${item} =     {
      "group-id": 84,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 84000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.508745" elapsed="0.000613"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.509513" elapsed="0.000181"/>
</kw>
<var name="${iteration}">84</var>
<status status="PASS" start="2026-05-25T01:55:36.507530" elapsed="0.002202"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.510156" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.509908" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.509894" elapsed="0.000507"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.510915" level="INFO">${j} = 85</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.510553" elapsed="0.000387"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.511676" level="INFO">${item} =     {
      "group-id": 85,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 85000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.511111" elapsed="0.000592"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.511857" elapsed="0.000183"/>
</kw>
<var name="${iteration}">85</var>
<status status="PASS" start="2026-05-25T01:55:36.509865" elapsed="0.002226"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.512505" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.512271" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.512256" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.513257" level="INFO">${j} = 86</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.512890" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.514008" level="INFO">${item} =     {
      "group-id": 86,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 86000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.513437" elapsed="0.000599"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.514207" elapsed="0.000182"/>
</kw>
<var name="${iteration}">86</var>
<status status="PASS" start="2026-05-25T01:55:36.512226" elapsed="0.002199"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.514852" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.514618" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.514604" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.515608" level="INFO">${j} = 87</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.515260" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.516378" level="INFO">${item} =     {
      "group-id": 87,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 87000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.515793" elapsed="0.000613"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.516559" elapsed="0.000181"/>
</kw>
<var name="${iteration}">87</var>
<status status="PASS" start="2026-05-25T01:55:36.514574" elapsed="0.002234"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.517238" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.516987" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.516973" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.517970" level="INFO">${j} = 88</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.517623" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.518758" level="INFO">${item} =     {
      "group-id": 88,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 88000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.518165" elapsed="0.000622"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.518941" elapsed="0.000199"/>
</kw>
<var name="${iteration}">88</var>
<status status="PASS" start="2026-05-25T01:55:36.516944" elapsed="0.002234"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.519592" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.519357" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.519343" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.520352" level="INFO">${j} = 89</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.519984" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.521123" level="INFO">${item} =     {
      "group-id": 89,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 89000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.520534" elapsed="0.000618"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.521308" elapsed="0.000181"/>
</kw>
<var name="${iteration}">89</var>
<status status="PASS" start="2026-05-25T01:55:36.519314" elapsed="0.002213"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.522053" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.521812" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.521689" elapsed="0.000629"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.522827" level="INFO">${j} = 90</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.522460" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.523602" level="INFO">${item} =     {
      "group-id": 90,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 90000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.523011" elapsed="0.000619"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.523790" elapsed="0.000180"/>
</kw>
<var name="${iteration}">90</var>
<status status="PASS" start="2026-05-25T01:55:36.521661" elapsed="0.002347"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.524438" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.524204" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.524190" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.525186" level="INFO">${j} = 91</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.524823" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.525932" level="INFO">${item} =     {
      "group-id": 91,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 91000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.525367" elapsed="0.000593"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.526130" elapsed="0.000183"/>
</kw>
<var name="${iteration}">91</var>
<status status="PASS" start="2026-05-25T01:55:36.524159" elapsed="0.002191"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.526777" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.526540" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.526525" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.527528" level="INFO">${j} = 92</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.527181" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.528295" level="INFO">${item} =     {
      "group-id": 92,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 92000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.527708" elapsed="0.000649"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.528517" elapsed="0.000182"/>
</kw>
<var name="${iteration}">92</var>
<status status="PASS" start="2026-05-25T01:55:36.526494" elapsed="0.002243"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.529162" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.528913" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.528899" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.529902" level="INFO">${j} = 93</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.529550" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.530699" level="INFO">${item} =     {
      "group-id": 93,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 93000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.530096" elapsed="0.000632"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.530883" elapsed="0.000198"/>
</kw>
<var name="${iteration}">93</var>
<status status="PASS" start="2026-05-25T01:55:36.528870" elapsed="0.002250"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.531531" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.531297" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.531283" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.532275" level="INFO">${j} = 94</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.531914" elapsed="0.000387"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.533017" level="INFO">${item} =     {
      "group-id": 94,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 94000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.532455" elapsed="0.000590"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.533216" elapsed="0.000181"/>
</kw>
<var name="${iteration}">94</var>
<status status="PASS" start="2026-05-25T01:55:36.531254" elapsed="0.002179"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.533841" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.533609" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.533594" elapsed="0.000505"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.534605" level="INFO">${j} = 95</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.534246" elapsed="0.000385"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.535369" level="INFO">${item} =     {
      "group-id": 95,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 95000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.534786" elapsed="0.000611"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.535548" elapsed="0.000180"/>
</kw>
<var name="${iteration}">95</var>
<status status="PASS" start="2026-05-25T01:55:36.533566" elapsed="0.002198"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.536185" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.535939" elapsed="0.000466"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.535925" elapsed="0.000504"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.536916" level="INFO">${j} = 96</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.536570" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.537680" level="INFO">${item} =     {
      "group-id": 96,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 96000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.537111" elapsed="0.000597"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.537862" elapsed="0.000182"/>
</kw>
<var name="${iteration}">96</var>
<status status="PASS" start="2026-05-25T01:55:36.535896" elapsed="0.002203"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.538647" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.538387" elapsed="0.000487"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.538264" elapsed="0.000635"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.539407" level="INFO">${j} = 97</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.539041" elapsed="0.000424"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.540215" level="INFO">${item} =     {
      "group-id": 97,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 97000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.539625" elapsed="0.000618"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.540397" elapsed="0.000181"/>
</kw>
<var name="${iteration}">97</var>
<status status="PASS" start="2026-05-25T01:55:36.538234" elapsed="0.002381"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.541025" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.540790" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.540775" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.541772" level="INFO">${j} = 98</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.541427" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.542559" level="INFO">${item} =     {
      "group-id": 98,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 98000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.541952" elapsed="0.000635"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.542746" elapsed="0.000181"/>
</kw>
<var name="${iteration}">98</var>
<status status="PASS" start="2026-05-25T01:55:36.540746" elapsed="0.002218"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.543392" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.543159" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.543144" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.544141" level="INFO">${j} = 99</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.543777" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.544887" level="INFO">${item} =     {
      "group-id": 99,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 99000,
            "action": [
              {
                "or...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.544322" elapsed="0.000594"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.545085" elapsed="0.000183"/>
</kw>
<var name="${iteration}">99</var>
<status status="PASS" start="2026-05-25T01:55:36.543114" elapsed="0.002192"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.545721" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.545482" elapsed="0.000465"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.545467" elapsed="0.000505"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.546490" level="INFO">${j} = 100</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.546128" elapsed="0.000388"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.547266" level="INFO">${item} =     {
      "group-id": 100,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 100000,
            "action": [
              {
                "...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.546674" elapsed="0.000621"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.547451" elapsed="0.000181"/>
</kw>
<var name="${iteration}">100</var>
<status status="PASS" start="2026-05-25T01:55:36.545439" elapsed="0.002230"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="PASS" start="2026-05-25T01:55:36.260865" elapsed="0.286835"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.548983" level="INFO">${final_text} = {
  "flow-node-inventory:group": [
    {
      "group-id": 1,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 1000,
            "action": [
  ...</msg>
<var>${final_text}</var>
<arg>SEPARATOR=</arg>
<arg>${prolog}</arg>
<arg>${endline}</arg>
<arg>@{items}</arg>
<arg>${endline}</arg>
<arg>${epilog}</arg>
<doc>Catenates the given items together and returns the resulted string.</doc>
<status status="PASS" start="2026-05-25T01:55:36.547861" elapsed="0.001150"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:36.549089" elapsed="0.000042"/>
</return>
<msg time="2026-05-25T01:55:36.549263" level="INFO">${data} = {
  "flow-node-inventory:group": [
    {
      "group-id": 1,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 1000,
            "action": [
  ...</msg>
<var>${data}</var>
<arg>folder=${folder}</arg>
<arg>name_prefix=post_</arg>
<arg>base_name=${base_name}</arg>
<arg>extension=${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>endline=${endline}</arg>
<arg>iterations=${iterations}</arg>
<arg>iter_start=${iter_start}</arg>
<arg>iter_j_offset=${iter_j_offset}</arg>
<doc>Read a template from folder, strip endline, make changes according to mapping, return the result.
If ${iterations} value is present, put text together from "prolog", "item" and "epilog" parts,
where additional template variable ${i} goes from 1, by one 100 times.
Template variable ${j} is calculated as ${i} incremented by offset 0 ( j = i + iter_j_offset )
used to create non uniform data in order to be able to validate UPDATE operations.
POST (as opposed to PUT) needs slightly different data, ${name_prefix} may be used to distinguish.
(Actually, it is GET who formats data differently when URI is a top-level container.)</doc>
<status status="PASS" start="2026-05-25T01:55:36.206944" elapsed="0.342346"/>
</kw>
<kw name="Resolve_Jmes_Path" owner="TemplatedRequests">
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:36.550708" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2/jmespath.expr' does not exist.</msg>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:36.550429" elapsed="0.000356">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-group-2/jmespath.expr' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:36.550878" level="INFO">${read_jmes_file} = False</msg>
<var>${read_jmes_file}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:36.550051" elapsed="0.000851"/>
</kw>
<if>
<branch type="IF" condition="${read_jmes_file} == ${true}">
<kw name="Get File" owner="OperatingSystem">
<var>${jmes_expression}</var>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.551233" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:36.550971" elapsed="0.000319"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.551811" level="INFO">${jmes_expression} = None</msg>
<var>${jmes_expression}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:36.551510" elapsed="0.000327"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.551314" elapsed="0.000558"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.550953" elapsed="0.000941"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.554387" level="INFO">${expression} = </msg>
<var>${expression}</var>
<arg>${read_jmes_file} == ${true}</arg>
<arg>${jmes_expression}</arg>
<arg>${EMPTY}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:36.552046" elapsed="0.002369"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-05-25T01:55:36.554470" elapsed="0.000033"/>
</return>
<msg time="2026-05-25T01:55:36.554628" level="INFO">${jmes_expression} = </msg>
<var>${jmes_expression}</var>
<arg>${folder}</arg>
<doc>Reads JMES path from file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-group-2/jmespath.expr if the file exists and
returns the JMES path. Empty string is returned otherwise.</doc>
<status status="PASS" start="2026-05-25T01:55:36.549696" elapsed="0.004959"/>
</kw>
<kw name="Post_To_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.556223" level="INFO">/rests/data/opendaylight-inventory:nodes/node=openflow%3A3</msg>
<arg>${uri}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:36.555948" elapsed="0.000321"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.556663" level="INFO">{
  "flow-node-inventory:group": [
    {
      "group-id": 1,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 1000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 1000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-1",
      "group-type": "group-ff"
    },
    {
      "group-id": 2,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 2000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 2000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-2",
      "group-type": "group-ff"
    },
    {
      "group-id": 3,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 3000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 3000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-3",
      "group-type": "group-ff"
    },
    {
      "group-id": 4,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 4000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 4000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-4",
      "group-type": "group-ff"
    },
    {
      "group-id": 5,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 5000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 5000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-5",
      "group-type": "group-ff"
    },
    {
      "group-id": 6,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 6000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 6000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-6",
      "group-type": "group-ff"
    },
    {
      "group-id": 7,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 7000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 7000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-7",
      "group-type": "group-ff"
    },
    {
      "group-id": 8,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 8000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 8000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-8",
      "group-type": "group-ff"
    },
    {
      "group-id": 9,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 9000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 9000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-9",
      "group-type": "group-ff"
    },
    {
      "group-id": 10,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 10000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 10000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-10",
      "group-type": "group-ff"
    },
    {
      "group-id": 11,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 11000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 11000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-11",
      "group-type": "group-ff"
    },
    {
      "group-id": 12,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 12000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 12000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-12",
      "group-type": "group-ff"
    },
    {
      "group-id": 13,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 13000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 13000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-13",
      "group-type": "group-ff"
    },
    {
      "group-id": 14,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 14000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 14000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-14",
      "group-type": "group-ff"
    },
    {
      "group-id": 15,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 15000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 15000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-15",
      "group-type": "group-ff"
    },
    {
      "group-id": 16,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 16000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 16000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-16",
      "group-type": "group-ff"
    },
    {
      "group-id": 17,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 17000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 17000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-17",
      "group-type": "group-ff"
    },
    {
      "group-id": 18,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 18000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 18000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-18",
      "group-type": "group-ff"
    },
    {
      "group-id": 19,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 19000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 19000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-19",
      "group-type": "group-ff"
    },
    {
      "group-id": 20,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 20000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 20000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-20",
      "group-type": "group-ff"
    },
    {
      "group-id": 21,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 21000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 21000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-21",
      "group-type": "group-ff"
    },
    {
      "group-id": 22,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 22000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 22000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-22",
      "group-type": "group-ff"
    },
    {
      "group-id": 23,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 23000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 23000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-23",
      "group-type": "group-ff"
    },
    {
      "group-id": 24,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 24000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 24000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-24",
      "group-type": "group-ff"
    },
    {
      "group-id": 25,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 25000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 25000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-25",
      "group-type": "group-ff"
    },
    {
      "group-id": 26,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 26000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 26000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-26",
      "group-type": "group-ff"
    },
    {
      "group-id": 27,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 27000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 27000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-27",
      "group-type": "group-ff"
    },
    {
      "group-id": 28,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 28000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 28000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-28",
      "group-type": "group-ff"
    },
    {
      "group-id": 29,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 29000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 29000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-29",
      "group-type": "group-ff"
    },
    {
      "group-id": 30,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 30000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 30000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-30",
      "group-type": "group-ff"
    },
    {
      "group-id": 31,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 31000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 31000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-31",
      "group-type": "group-ff"
    },
    {
      "group-id": 32,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 32000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 32000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-32",
      "group-type": "group-ff"
    },
    {
      "group-id": 33,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 33000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 33000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-33",
      "group-type": "group-ff"
    },
    {
      "group-id": 34,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 34000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 34000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-34",
      "group-type": "group-ff"
    },
    {
      "group-id": 35,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 35000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 35000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-35",
      "group-type": "group-ff"
    },
    {
      "group-id": 36,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 36000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 36000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-36",
      "group-type": "group-ff"
    },
    {
      "group-id": 37,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 37000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 37000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-37",
      "group-type": "group-ff"
    },
    {
      "group-id": 38,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 38000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 38000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-38",
      "group-type": "group-ff"
    },
    {
      "group-id": 39,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 39000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 39000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-39",
      "group-type": "group-ff"
    },
    {
      "group-id": 40,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 40000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 40000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-40",
      "group-type": "group-ff"
    },
    {
      "group-id": 41,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 41000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 41000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-41",
      "group-type": "group-ff"
    },
    {
      "group-id": 42,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 42000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 42000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-42",
      "group-type": "group-ff"
    },
    {
      "group-id": 43,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 43000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 43000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-43",
      "group-type": "group-ff"
    },
    {
      "group-id": 44,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 44000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 44000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-44",
      "group-type": "group-ff"
    },
    {
      "group-id": 45,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 45000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 45000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-45",
      "group-type": "group-ff"
    },
    {
      "group-id": 46,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 46000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 46000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-46",
      "group-type": "group-ff"
    },
    {
      "group-id": 47,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 47000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 47000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-47",
      "group-type": "group-ff"
    },
    {
      "group-id": 48,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 48000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 48000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-48",
      "group-type": "group-ff"
    },
    {
      "group-id": 49,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 49000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 49000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-49",
      "group-type": "group-ff"
    },
    {
      "group-id": 50,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 50000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 50000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-50",
      "group-type": "group-ff"
    },
    {
      "group-id": 51,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 51000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 51000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-51",
      "group-type": "group-ff"
    },
    {
      "group-id": 52,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 52000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 52000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-52",
      "group-type": "group-ff"
    },
    {
      "group-id": 53,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 53000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 53000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-53",
      "group-type": "group-ff"
    },
    {
      "group-id": 54,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 54000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 54000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-54",
      "group-type": "group-ff"
    },
    {
      "group-id": 55,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 55000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 55000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-55",
      "group-type": "group-ff"
    },
    {
      "group-id": 56,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 56000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 56000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-56",
      "group-type": "group-ff"
    },
    {
      "group-id": 57,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 57000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 57000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-57",
      "group-type": "group-ff"
    },
    {
      "group-id": 58,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 58000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 58000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-58",
      "group-type": "group-ff"
    },
    {
      "group-id": 59,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 59000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 59000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-59",
      "group-type": "group-ff"
    },
    {
      "group-id": 60,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 60000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 60000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-60",
      "group-type": "group-ff"
    },
    {
      "group-id": 61,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 61000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 61000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-61",
      "group-type": "group-ff"
    },
    {
      "group-id": 62,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 62000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 62000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-62",
      "group-type": "group-ff"
    },
    {
      "group-id": 63,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 63000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 63000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-63",
      "group-type": "group-ff"
    },
    {
      "group-id": 64,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 64000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 64000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-64",
      "group-type": "group-ff"
    },
    {
      "group-id": 65,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 65000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 65000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-65",
      "group-type": "group-ff"
    },
    {
      "group-id": 66,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 66000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 66000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-66",
      "group-type": "group-ff"
    },
    {
      "group-id": 67,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 67000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 67000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-67",
      "group-type": "group-ff"
    },
    {
      "group-id": 68,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 68000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 68000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-68",
      "group-type": "group-ff"
    },
    {
      "group-id": 69,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 69000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 69000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-69",
      "group-type": "group-ff"
    },
    {
      "group-id": 70,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 70000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 70000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-70",
      "group-type": "group-ff"
    },
    {
      "group-id": 71,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 71000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 71000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-71",
      "group-type": "group-ff"
    },
    {
      "group-id": 72,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 72000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 72000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-72",
      "group-type": "group-ff"
    },
    {
      "group-id": 73,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 73000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 73000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-73",
      "group-type": "group-ff"
    },
    {
      "group-id": 74,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 74000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 74000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-74",
      "group-type": "group-ff"
    },
    {
      "group-id": 75,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 75000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 75000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-75",
      "group-type": "group-ff"
    },
    {
      "group-id": 76,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 76000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 76000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-76",
      "group-type": "group-ff"
    },
    {
      "group-id": 77,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 77000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 77000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-77",
      "group-type": "group-ff"
    },
    {
      "group-id": 78,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 78000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 78000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-78",
      "group-type": "group-ff"
    },
    {
      "group-id": 79,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 79000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 79000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-79",
      "group-type": "group-ff"
    },
    {
      "group-id": 80,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 80000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 80000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-80",
      "group-type": "group-ff"
    },
    {
      "group-id": 81,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 81000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 81000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-81",
      "group-type": "group-ff"
    },
    {
      "group-id": 82,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 82000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 82000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-82",
      "group-type": "group-ff"
    },
    {
      "group-id": 83,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 83000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 83000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-83",
      "group-type": "group-ff"
    },
    {
      "group-id": 84,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 84000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 84000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-84",
      "group-type": "group-ff"
    },
    {
      "group-id": 85,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 85000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 85000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-85",
      "group-type": "group-ff"
    },
    {
      "group-id": 86,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 86000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 86000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-86",
      "group-type": "group-ff"
    },
    {
      "group-id": 87,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 87000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 87000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-87",
      "group-type": "group-ff"
    },
    {
      "group-id": 88,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 88000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 88000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-88",
      "group-type": "group-ff"
    },
    {
      "group-id": 89,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 89000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 89000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-89",
      "group-type": "group-ff"
    },
    {
      "group-id": 90,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 90000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 90000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-90",
      "group-type": "group-ff"
    },
    {
      "group-id": 91,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 91000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 91000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-91",
      "group-type": "group-ff"
    },
    {
      "group-id": 92,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 92000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 92000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-92",
      "group-type": "group-ff"
    },
    {
      "group-id": 93,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 93000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 93000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-93",
      "group-type": "group-ff"
    },
    {
      "group-id": 94,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 94000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 94000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-94",
      "group-type": "group-ff"
    },
    {
      "group-id": 95,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 95000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 95000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-95",
      "group-type": "group-ff"
    },
    {
      "group-id": 96,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 96000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 96000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-96",
      "group-type": "group-ff"
    },
    {
      "group-id": 97,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 97000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 97000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-97",
      "group-type": "group-ff"
    },
    {
      "group-id": 98,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 98000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 98000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-98",
      "group-type": "group-ff"
    },
    {
      "group-id": 99,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 99000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 99000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-99",
      "group-type": "group-ff"
    },
    {
      "group-id": 100,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 100000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 100000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-100",
      "group-type": "group-ff"
    }
  ]
}</msg>
<arg>${data}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:36.556423" elapsed="0.000667"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.557494" level="INFO">{'Content-Type': 'application/json'}</msg>
<arg>${content_type}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:36.557248" elapsed="0.000290"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.557934" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:36.557695" elapsed="0.000282"/>
</kw>
<kw name="Join_Two_Headers" owner="TemplatedRequests">
<kw name="Copy Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:36.558813" level="INFO">${accumulator} = {'Content-Type': 'application/json'}</msg>
<var>${accumulator}</var>
<arg>${first}</arg>
<doc>Returns a copy of the given dictionary.</doc>
<status status="PASS" start="2026-05-25T01:55:36.558618" elapsed="0.000221"/>
</kw>
<kw name="Get Dictionary Items" owner="Collections">
<msg time="2026-05-25T01:55:36.559184" level="INFO">${items_to_add} = []</msg>
<var>${items_to_add}</var>
<arg>${second}</arg>
<doc>Returns items of the given ``dictionary`` as a list.</doc>
<status status="PASS" start="2026-05-25T01:55:36.558996" elapsed="0.000213"/>
</kw>
<kw name="Set To Dictionary" owner="Collections">
<arg>${accumulator}</arg>
<arg>@{items_to_add}</arg>
<doc>Adds the given ``key_value_pairs`` and/or ``items`` to the ``dictionary``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.559360" elapsed="0.000190"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.559953" level="INFO">{'Content-Type': 'application/json'}</msg>
<arg>${accumulator}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:36.559708" elapsed="0.000288"/>
</kw>
<return>
<value>${accumulator}</value>
<status status="PASS" start="2026-05-25T01:55:36.560039" elapsed="0.000043"/>
</return>
<msg time="2026-05-25T01:55:36.560210" level="INFO">${headers} = {'Content-Type': 'application/json'}</msg>
<var>${headers}</var>
<arg>first=${content_type}</arg>
<arg>second=${accept}</arg>
<doc>Take two dicts, join them, return result. Second argument values take precedence.</doc>
<status status="PASS" start="2026-05-25T01:55:36.558195" elapsed="0.002040"/>
</kw>
<if>
<branch type="IF" condition="&quot;&quot;&quot;${http_timeout}&quot;&quot;&quot; == &quot;&quot;&quot;${EMPTY}&quot;&quot;&quot;">
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:36.590138" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A3 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Content-Length': '42507', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body={
  "flow-node-inventory:group": [
    {
      "group-id": 1,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 1000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 1000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-1",
      "group-type": "group-ff"
    },
    {
      "group-id": 2,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 2000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 2000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-2",
      "group-type": "group-ff"
    },
    {
      "group-id": 3,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 3000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 3000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-3",
      "group-type": "group-ff"
    },
    {
      "group-id": 4,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 4000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 4000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-4",
      "group-type": "group-ff"
    },
    {
      "group-id": 5,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 5000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 5000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-5",
      "group-type": "group-ff"
    },
    {
      "group-id": 6,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 6000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 6000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-6",
      "group-type": "group-ff"
    },
    {
      "group-id": 7,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 7000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 7000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-7",
      "group-type": "group-ff"
    },
    {
      "group-id": 8,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 8000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 8000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-8",
      "group-type": "group-ff"
    },
    {
      "group-id": 9,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 9000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 9000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-9",
      "group-type": "group-ff"
    },
    {
      "group-id": 10,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 10000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 10000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-10",
      "group-type": "group-ff"
    },
    {
      "group-id": 11,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 11000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 11000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-11",
      "group-type": "group-ff"
    },
    {
      "group-id": 12,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 12000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 12000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-12",
      "group-type": "group-ff"
    },
    {
      "group-id": 13,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 13000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 13000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-13",
      "group-type": "group-ff"
    },
    {
      "group-id": 14,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 14000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 14000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-14",
      "group-type": "group-ff"
    },
    {
      "group-id": 15,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 15000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 15000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-15",
      "group-type": "group-ff"
    },
    {
      "group-id": 16,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 16000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 16000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-16",
      "group-type": "group-ff"
    },
    {
      "group-id": 17,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 17000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 17000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-17",
      "group-type": "group-ff"
    },
    {
      "group-id": 18,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 18000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 18000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-18",
      "group-type": "group-ff"
    },
    {
      "group-id": 19,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 19000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 19000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-19",
      "group-type": "group-ff"
    },
    {
      "group-id": 20,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 20000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 20000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-20",
      "group-type": "group-ff"
    },
    {
      "group-id": 21,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 21000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 21000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-21",
      "group-type": "group-ff"
    },
    {
      "group-id": 22,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 22000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 22000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-22",
      "group-type": "group-ff"
    },
    {
      "group-id": 23,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 23000,
            "action": [
              {
                "order": 1,
                "group-action": {
                  "group-id": 23000
                }
              }
            ]
          }
        ]
      },
      "group-name": "FF-23",
      "group-type": "group-ff"
    },
    {
      "group-id": 24,
      "buckets": {
        "bucket": [
          {
            "bucket-id": 1,
            "watch_group": 24000,
            "action": [
              {
                "order": 1,
                "... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:55:36.590507" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3/flow-node-inventory:group=88', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:36.590741" level="INFO">${response} = &lt;Response [201]&gt;</msg>
<var>${response}</var>
<arg>${session}</arg>
<arg>${uri}</arg>
<arg>data=${data}</arg>
<arg>headers=${headers}</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:36.562312" elapsed="0.028488"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.560306" elapsed="0.030597"/>
</branch>
<branch type="ELSE">
<kw name="POST On Session" owner="RequestsLibrary">
<var>${response}</var>
<arg>${session}</arg>
<arg>${uri}</arg>
<arg>data=${data}</arg>
<arg>headers=${headers}</arg>
<arg>timeout=${http_timeout}</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.591339" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:36.590962" elapsed="0.000533"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.560288" elapsed="0.031255"/>
</if>
<kw name="Check_Status_Code" owner="TemplatedRequests">
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.598850" level="INFO"/>
<arg>${response.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:36.593855" elapsed="0.005040"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.593367" elapsed="0.005563"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.593326" elapsed="0.005630"/>
</if>
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.601543" level="INFO">201</msg>
<arg>${response.status_code}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:36.599247" elapsed="0.002342"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.599011" elapsed="0.002614"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.598994" elapsed="0.002655"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.602235" level="INFO">${status_codes_type} = list</msg>
<var>${status_codes_type}</var>
<arg>type($additional_allowed_status_codes).__name__</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.601834" elapsed="0.000436"/>
</kw>
<if>
<branch type="IF" condition="&quot;${status_codes_type}&quot;!=&quot;list&quot;">
<kw name="Create List" owner="BuiltIn">
<var>${allowed_status_codes_list}</var>
<arg>${additional_allowed_status_codes}</arg>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.602590" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:36.602340" elapsed="0.000307"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.603155" level="INFO">${allowed_status_codes_list} = []</msg>
<var>${allowed_status_codes_list}</var>
<arg>${additional_allowed_status_codes}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:36.602843" elapsed="0.000339"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.602671" elapsed="0.000546"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.602322" elapsed="0.000917"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.603766" level="INFO">${status_codes_type} = list</msg>
<var>${status_codes_type}</var>
<arg>type($explicit_status_codes).__name__</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.603409" elapsed="0.000384"/>
</kw>
<if>
<branch type="IF" condition="&quot;${status_codes_type}&quot;!=&quot;list&quot;">
<kw name="Create List" owner="BuiltIn">
<var>${explicit_status_codes_list}</var>
<arg>${explicit_status_codes}</arg>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.604119" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:36.603861" elapsed="0.000316"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.604663" level="INFO">${explicit_status_codes_list} = []</msg>
<var>${explicit_status_codes_list}</var>
<arg>${explicit_status_codes}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:36.604372" elapsed="0.000316"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.604201" elapsed="0.000523"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.603844" elapsed="0.000902"/>
</if>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>"""${explicit_status_codes_list}""" != """${NO_STATUS_CODES}"""</arg>
<arg>Collections.List_Should_Contain_Value</arg>
<arg>${explicit_status_codes_list}</arg>
<arg>${response.status_code}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:36.604894" elapsed="0.000360"/>
</kw>
<kw name="Combine Lists" owner="Collections">
<msg time="2026-05-25T01:55:36.605692" level="INFO">${final_allowd_list} = [200, 201, 204]</msg>
<var>${final_allowd_list}</var>
<arg>${ALLOWED_STATUS_CODES}</arg>
<arg>${allowed_status_codes_list}</arg>
<doc>Combines the given ``lists`` together and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.605418" elapsed="0.000300"/>
</kw>
<kw name="List Should Contain Value" owner="Collections">
<arg>${final_allowd_list}</arg>
<arg>${response.status_code}</arg>
<doc>Fails if the ``value`` is not found from ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.605875" elapsed="0.002183"/>
</kw>
<arg>${response}</arg>
<arg>additional_allowed_status_codes=${additional_allowed_status_codes}</arg>
<arg>explicit_status_codes=${explicit_status_codes}</arg>
<doc>Log response text, check status_code is one of allowed ones. In cases where this keyword is
called in a WUKS it could end up logging tons of data and it may be desired to skip the logging by passing
log_response=False, but by default it remains True.</doc>
<status status="PASS" start="2026-05-25T01:55:36.592361" elapsed="0.015775"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-05-25T01:55:36.608311" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:36.608206" elapsed="0.000149"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.608188" elapsed="0.000189"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<msg time="2026-05-25T01:55:36.610790" level="INFO">${text_normalized} = </msg>
<var>${text_normalized}</var>
<arg>${response.text}</arg>
<arg>jmes_path=${jmes_path}</arg>
<doc>Attempt to return sorted indented JSON string.</doc>
<status status="PASS" start="2026-05-25T01:55:36.608521" elapsed="0.002295"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="PASS" start="2026-05-25T01:55:36.610864" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:36.611019" level="INFO">${response_text} = </msg>
<var>${response_text}</var>
<arg>uri=${uri}</arg>
<arg>data=${data}</arg>
<arg>content_type=${content_type}</arg>
<arg>accept=${accept}</arg>
<arg>session=${session}</arg>
<arg>jmes_path=${jmes_expression}</arg>
<arg>normalize_json=${normalize_json}</arg>
<arg>additional_allowed_status_codes=${additional_allowed_status_codes}</arg>
<arg>explicit_status_codes=${explicit_status_codes}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>POST data to given URI, check status code and return response text.
${content_type} and ${accept} are mandatory Python objects with headers to use.
If ${normalize_json}, normalize text before returning.</doc>
<status status="PASS" start="2026-05-25T01:55:36.554981" elapsed="0.056063"/>
</kw>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-05-25T01:55:36.611163" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:55:36.611318" level="INFO">${response_text} = </msg>
<var>${response_text}</var>
<arg>folder=${folder}</arg>
<arg>base_name=data</arg>
<arg>extension=json</arg>
<arg>accept=${ACCEPT_EMPTY}</arg>
<arg>content_type=${HEADERS_YANG_JSON}</arg>
<arg>mapping=${mapping}</arg>
<arg>session=${session}</arg>
<arg>normalize_json=True</arg>
<arg>endline=${\n}</arg>
<arg>iterations=${iterations}</arg>
<arg>iter_start=${iter_start}</arg>
<arg>additional_allowed_status_codes=${additional_allowed_status_codes}</arg>
<arg>explicit_status_codes=${explicit_status_codes}</arg>
<arg>http_timeout=${http_timeout}</arg>
<arg>iter_j_offset=${iter_j_offset}</arg>
<doc>Resolve URI and data from folder, call Post_To_Uri, return response text.</doc>
<status status="PASS" start="2026-05-25T01:55:36.123894" elapsed="0.487449"/>
</kw>
<if>
<branch type="IF" condition="${verify}">
<kw name="Verify_Response_As_Json_Templated" owner="TemplatedRequests">
<arg>response=${response_text}</arg>
<arg>folder=${folder}</arg>
<arg>base_name=response</arg>
<arg>mapping=${mapping}</arg>
<arg>iter_j_offset=${iter_j_offset}</arg>
<doc>Resolve expected JSON data, should be equal to provided ${response}.
JSON normalization is used, endlines enabled for readability.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.611682" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:36.611447" elapsed="0.000309"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.611429" elapsed="0.000350"/>
</if>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-05-25T01:55:36.611812" elapsed="0.000025"/>
</return>
<arg>folder=${VAR_DIR}/add-group-2</arg>
<arg>mapping=${mapping}</arg>
<arg>session=session</arg>
<arg>iterations=${iter}</arg>
<doc>Add arguments sensible for JSON data, return Post_Templated response text.
Optionally, verification against response.json (no iteration) is called.
Only subset of JSON data is verified and returned if JMES path is specified in
file ${folder}/jmespath.expr.
Response status code must be one of values from ${explicit_status_codes} if specified or one of set
created from all positive HTTP status codes together with ${additional_allowed_status_codes}.</doc>
<status status="PASS" start="2026-05-25T01:55:36.121387" elapsed="0.490546"/>
</kw>
<var name="${switch}">3</var>
<status status="PASS" start="2026-05-25T01:55:36.109951" elapsed="0.502027"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-05-25T01:55:35.193964" elapsed="1.418046"/>
</for>
<doc>Add 100 groups of type 2 in every switch.</doc>
<status status="PASS" start="2026-05-25T01:55:35.193596" elapsed="1.418552"/>
</test>
<test id="s1-s5-s1-t3" name="Add Flow to Group 2 In Every Switch" line="46">
<for flavor="IN RANGE">
<iter>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.615676" level="INFO">&amp;{mapping} = { NODE=openflow:1 }</msg>
<var>&amp;{mapping}</var>
<arg>NODE=openflow:${switch}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.615274" elapsed="0.000431"/>
</kw>
<kw name="Post_As_Json_Templated" owner="TemplatedRequests">
<kw name="Post_Templated" owner="TemplatedRequests">
<kw name="Resolve_Text_From_Template_Folder" owner="TemplatedRequests">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.656811" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/location.uri</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:36.656434" elapsed="0.000406"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:36.657602" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow.titanium/location.uri' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:36.657356" elapsed="0.000319">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow.titanium/location.uri' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:36.657769" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:36.657004" elapsed="0.000789"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.658391" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/location.uri</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:36.657981" elapsed="0.000437"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:36.658715" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow/location.uri"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow/location.uri&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:36.658872" level="INFO">${template} = /rests/data/opendaylight-inventory:nodes/node=$NODE/flow-node-inventory:table=0
</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:36.658579" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.659316" level="INFO">/rests/data/opendaylight-inventory:nodes/node=$NODE/flow-node-inventory:table=0
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:36.659056" elapsed="0.000304"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.660329" level="INFO">mapping: {'NODE': 'openflow:1'}</msg>
<arg>mapping: ${mapping}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:36.660055" elapsed="0.000318"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.660795" level="INFO">${encoded_mapping} = {}</msg>
<var>${encoded_mapping}</var>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.660534" elapsed="0.000286"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Convert To String" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.661530" level="INFO">${value} = openflow:1</msg>
<var>${value}</var>
<arg>${value}</arg>
<doc>Converts the given item to a Unicode string.</doc>
<status status="PASS" start="2026-05-25T01:55:36.661181" elapsed="0.000375"/>
</kw>
<kw name="Percent_Encode_String" owner="TemplatedRequests">
<kw name="Replace String Using Regexp" owner="String">
<msg time="2026-05-25T01:55:36.662616" level="INFO">${encoded} = openflow%3A1</msg>
<var>${encoded}</var>
<arg>${value}</arg>
<arg>:</arg>
<arg>%3A</arg>
<doc>Replaces ``pattern`` in the given ``string`` with ``replace_with``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.662160" elapsed="0.000483"/>
</kw>
<return>
<value>${encoded}</value>
<status status="PASS" start="2026-05-25T01:55:36.662698" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:55:36.662850" level="INFO">${encoded_value} = openflow%3A1</msg>
<var>${encoded_value}</var>
<arg>${value}</arg>
<doc>Percent encodes reserved characters in the given string so it can be used as part of url.</doc>
<status status="PASS" start="2026-05-25T01:55:36.661779" elapsed="0.001096"/>
</kw>
<kw name="Set To Dictionary" owner="Collections">
<arg>${encoded_mapping}</arg>
<arg>${key}</arg>
<arg>${encoded_value}</arg>
<doc>Adds the given ``key_value_pairs`` and/or ``items`` to the ``dictionary``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.663026" elapsed="0.000288"/>
</kw>
<var name="${key}">NODE</var>
<var name="${value}">openflow:1</var>
<status status="PASS" start="2026-05-25T01:55:36.661032" elapsed="0.002324"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="PASS" start="2026-05-25T01:55:36.660869" elapsed="0.002521"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-05-25T01:55:36.663435" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:55:36.663589" level="INFO">${mapping_to_use} = {'NODE': 'openflow%3A1'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-05-25T01:55:36.659730" elapsed="0.003885"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.659429" elapsed="0.004217"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.663822" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:36.663670" elapsed="0.000208"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.659409" elapsed="0.004490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.664584" level="INFO">${final_text} = /rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.664041" elapsed="0.000571"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:36.664661" elapsed="0.000028"/>
</return>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:36.655799" elapsed="0.008984"/>
</kw>
<msg time="2026-05-25T01:55:36.664838" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>not "${iterations}"</arg>
<arg>Resolve_Text_From_Template_File</arg>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:36.643563" elapsed="0.021323"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${prolog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.prolog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.676913" elapsed="0.000027"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${epilog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.epilog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.688725" elapsed="0.000028"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${item_template}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${base_name}.item.${extension}</arg>
<arg>mapping=${mapping}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.700482" elapsed="0.000028"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.700677" elapsed="0.000022"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<var>${separator}</var>
<arg>'${extension}' != 'json'</arg>
<arg>${endline}</arg>
<arg>,${endline}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.700853" elapsed="0.000021"/>
</kw>
<for flavor="IN RANGE">
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.701232" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:36.701085" elapsed="0.000239"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:36.701056" elapsed="0.000294"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.701495" elapsed="0.000021"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.701664" elapsed="0.000020"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.701841" elapsed="0.000020"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-05-25T01:55:36.701028" elapsed="0.000870"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-05-25T01:55:36.700928" elapsed="0.000996"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<var>${final_text}</var>
<arg>SEPARATOR=</arg>
<arg>${prolog}</arg>
<arg>${endline}</arg>
<arg>@{items}</arg>
<arg>${endline}</arg>
<arg>${epilog}</arg>
<doc>Catenates the given items together and returns the resulted string.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.702084" elapsed="0.000022"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-05-25T01:55:36.702162" elapsed="0.000015"/>
</return>
<msg time="2026-05-25T01:55:36.702280" level="INFO">${uri} = /rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0</msg>
<var>${uri}</var>
<arg>folder=${folder}</arg>
<arg>base_name=location</arg>
<arg>extension=uri</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=True</arg>
<doc>Read a template from folder, strip endline, make changes according to mapping, return the result.
If ${iterations} value is present, put text together from "prolog", "item" and "epilog" parts,
where additional template variable ${i} goes from 1, by one 100 times.
Template variable ${j} is calculated as ${i} incremented by offset 0 ( j = i + iter_j_offset )
used to create non uniform data in order to be able to validate UPDATE operations.
POST (as opposed to PUT) needs slightly different data, ${name_prefix} may be used to distinguish.
(Actually, it is GET who formats data differently when URI is a top-level container.)</doc>
<status status="PASS" start="2026-05-25T01:55:36.639488" elapsed="0.062817"/>
</kw>
<kw name="Resolve_Text_From_Template_Folder" owner="TemplatedRequests">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>not "${iterations}"</arg>
<arg>Resolve_Text_From_Template_File</arg>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:36.712741" elapsed="0.000348"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.725826" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/post_data.prolog.json</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:36.725438" elapsed="0.000417"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:36.726581" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow.titanium/post_data.prolog.json' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:36.726374" elapsed="0.000269">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow.titanium/post_data.prolog.json' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:36.726735" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:36.726019" elapsed="0.000740"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.727321" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/post_data.prolog.json</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:36.726923" elapsed="0.000425"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:36.727643" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow/post_data.prolog.json"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow/post_data.prolog.json&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:36.727771" level="INFO">${template} = {
  "flow": [
</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:36.727509" elapsed="0.000287"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.728214" level="INFO">{
  "flow": [
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:36.727954" elapsed="0.000305"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:36.728616" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:36.728327" elapsed="0.000347"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.729150" level="INFO">${mapping_to_use} = {'NODE': 'openflow:1'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:36.728844" elapsed="0.000332"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.728698" elapsed="0.000514"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.728309" elapsed="0.000925"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.729823" level="INFO">${final_text} = {
  "flow": [</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.729377" elapsed="0.000473"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:36.729899" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:36.730047" level="INFO">${prolog} = {
  "flow": [</msg>
<var>${prolog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.prolog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:36.724815" elapsed="0.005274"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.743700" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/post_data.epilog.json</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:36.743327" elapsed="0.000401"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:36.744442" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow.titanium/post_data.epilog.json' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:36.744240" elapsed="0.000264">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow.titanium/post_data.epilog.json' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:36.744596" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:36.743891" elapsed="0.000729"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.745181" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/post_data.epilog.json</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:36.744782" elapsed="0.000426"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:36.745502" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow/post_data.epilog.json"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow/post_data.epilog.json&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:36.745639" level="INFO">${template} =   ]
}
</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:36.745369" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.746077" level="INFO">  ]
}
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:36.745822" elapsed="0.000301"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:36.746475" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:36.746190" elapsed="0.000342"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.746995" level="INFO">${mapping_to_use} = {'NODE': 'openflow:1'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:36.746705" elapsed="0.000316"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.746556" elapsed="0.000500"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.746172" elapsed="0.000923"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.747656" level="INFO">${final_text} =   ]
}</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.747241" elapsed="0.000442"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:36.747731" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:55:36.747881" level="INFO">${epilog} =   ]
}</msg>
<var>${epilog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.epilog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:36.742692" elapsed="0.005214"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.760718" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/data.item.json</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:36.760348" elapsed="0.000398"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:36.761462" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow.titanium/data.item.json' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:36.761258" elapsed="0.000277">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow.titanium/data.item.json' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:36.761627" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:36.760910" elapsed="0.000741"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.762252" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/data.item.json</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:36.761848" elapsed="0.000431"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:36.762575" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow/data.item.json"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow/data.item.json&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:36.762710" level="INFO">${template} =         {
          "id": "${i}",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048...</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:36.762441" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.763148" level="INFO">        {
          "id": "${i}",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.${i}/32"
          },
          "flow-name": "Flow-${i}",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": ${i}
                      }
                    }
                  ]
                }
              }
            ]
          }
        }
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:36.762892" elapsed="0.000306"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:36.763548" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:36.763265" elapsed="0.000340"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.764084" level="INFO">${mapping_to_use} = {'NODE': 'openflow:1'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:36.763779" elapsed="0.000333"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.763630" elapsed="0.000518"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.763246" elapsed="0.000924"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.764903" level="INFO">${final_text} =         {
          "id": "${i}",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048...</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.764315" elapsed="0.000616"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:36.764981" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:55:36.765150" level="INFO">${item_template} =         {
          "id": "${i}",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048...</msg>
<var>${item_template}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${base_name}.item.${extension}</arg>
<arg>mapping=${mapping}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:36.759796" elapsed="0.005381"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.765607" level="INFO">${items} = []</msg>
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:55:36.765338" elapsed="0.000296"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.766181" level="INFO">${separator} = ,
</msg>
<var>${separator}</var>
<arg>'${extension}' != 'json'</arg>
<arg>${endline}</arg>
<arg>,${endline}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:36.765800" elapsed="0.000407"/>
</kw>
<for flavor="IN RANGE">
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:36.766812" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:36.766582" elapsed="0.000288"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.766567" elapsed="0.000326"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.767400" level="INFO">${j} = 1</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.767033" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.768354" level="INFO">${item} =         {
          "id": "1",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
  ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.767580" elapsed="0.000803"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.768543" elapsed="0.000197"/>
</kw>
<var name="${iteration}">1</var>
<status status="PASS" start="2026-05-25T01:55:36.766537" elapsed="0.002241"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.769211" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.768959" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.768944" elapsed="0.000528"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.769971" level="INFO">${j} = 2</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.769616" elapsed="0.000412"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.770804" level="INFO">${item} =         {
          "id": "2",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
  ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.770203" elapsed="0.000629"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.770987" elapsed="0.000201"/>
</kw>
<var name="${iteration}">2</var>
<status status="PASS" start="2026-05-25T01:55:36.768913" elapsed="0.002313"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.771640" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.771405" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.771391" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.772390" level="INFO">${j} = 3</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.772024" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.773191" level="INFO">${item} =         {
          "id": "3",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
  ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.772572" elapsed="0.000649"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.773378" elapsed="0.000193"/>
</kw>
<var name="${iteration}">3</var>
<status status="PASS" start="2026-05-25T01:55:36.771362" elapsed="0.002246"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.774021" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.773788" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.773773" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.774772" level="INFO">${j} = 4</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.774425" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.775560" level="INFO">${item} =         {
          "id": "4",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
  ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.774951" elapsed="0.000637"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.775742" elapsed="0.000181"/>
</kw>
<var name="${iteration}">4</var>
<status status="PASS" start="2026-05-25T01:55:36.773744" elapsed="0.002217"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.776390" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.776156" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.776141" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.777139" level="INFO">${j} = 5</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.776776" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.777939" level="INFO">${item} =         {
          "id": "5",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
  ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.777321" elapsed="0.000646"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.778141" elapsed="0.000183"/>
</kw>
<var name="${iteration}">5</var>
<status status="PASS" start="2026-05-25T01:55:36.776110" elapsed="0.002251"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.778791" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.778552" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.778530" elapsed="0.000505"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.779546" level="INFO">${j} = 6</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.779195" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.780339" level="INFO">${item} =         {
          "id": "6",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
  ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.779731" elapsed="0.000637"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.780523" elapsed="0.000181"/>
</kw>
<var name="${iteration}">6</var>
<status status="PASS" start="2026-05-25T01:55:36.778501" elapsed="0.002240"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.781205" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.780920" elapsed="0.000523"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.780906" elapsed="0.000562"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.781961" level="INFO">${j} = 7</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.781612" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.782752" level="INFO">${item} =         {
          "id": "7",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
  ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.782160" elapsed="0.000621"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.782937" elapsed="0.000198"/>
</kw>
<var name="${iteration}">7</var>
<status status="PASS" start="2026-05-25T01:55:36.780876" elapsed="0.002299"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.783590" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.783355" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.783340" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.784347" level="INFO">${j} = 8</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.783979" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.785276" level="INFO">${item} =         {
          "id": "8",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
  ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.784529" elapsed="0.000776"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.785478" elapsed="0.000182"/>
</kw>
<var name="${iteration}">8</var>
<status status="PASS" start="2026-05-25T01:55:36.783311" elapsed="0.002387"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.786139" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.785884" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.785869" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.786877" level="INFO">${j} = 9</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.786528" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.787668" level="INFO">${item} =         {
          "id": "9",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
  ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.787058" elapsed="0.000640"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.787854" elapsed="0.000181"/>
</kw>
<var name="${iteration}">9</var>
<status status="PASS" start="2026-05-25T01:55:36.785839" elapsed="0.002248"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.788504" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.788268" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.788253" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.789259" level="INFO">${j} = 10</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.788892" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.790082" level="INFO">${item} =         {
          "id": "10",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.789461" elapsed="0.000651"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.790268" elapsed="0.000182"/>
</kw>
<var name="${iteration}">10</var>
<status status="PASS" start="2026-05-25T01:55:36.788224" elapsed="0.002264"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.790901" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.790667" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.790652" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.791651" level="INFO">${j} = 11</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.791304" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.792449" level="INFO">${item} =         {
          "id": "11",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.791837" elapsed="0.000640"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.792669" elapsed="0.000184"/>
</kw>
<var name="${iteration}">11</var>
<status status="PASS" start="2026-05-25T01:55:36.790623" elapsed="0.002268"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.793325" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.793085" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.793055" elapsed="0.000533"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.794096" level="INFO">${j} = 12</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.793730" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.794878" level="INFO">${item} =         {
          "id": "12",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.794279" elapsed="0.000627"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.795079" elapsed="0.000185"/>
</kw>
<var name="${iteration}">12</var>
<status status="PASS" start="2026-05-25T01:55:36.793026" elapsed="0.002276"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.795717" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.795481" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.795466" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.796490" level="INFO">${j} = 13</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.796141" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.797299" level="INFO">${item} =         {
          "id": "13",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.796672" elapsed="0.000655"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.797499" elapsed="0.000181"/>
</kw>
<var name="${iteration}">13</var>
<status status="PASS" start="2026-05-25T01:55:36.795437" elapsed="0.002280"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.798146" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.797895" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.797881" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.798882" level="INFO">${j} = 14</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.798534" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.799672" level="INFO">${item} =         {
          "id": "14",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.799062" elapsed="0.000638"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.799856" elapsed="0.000179"/>
</kw>
<var name="${iteration}">14</var>
<status status="PASS" start="2026-05-25T01:55:36.797851" elapsed="0.002237"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.800502" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.800269" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.800253" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.801401" level="INFO">${j} = 15</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.800885" elapsed="0.000545"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.802212" level="INFO">${item} =         {
          "id": "15",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.801589" elapsed="0.000652"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.802398" elapsed="0.000182"/>
</kw>
<var name="${iteration}">15</var>
<status status="PASS" start="2026-05-25T01:55:36.800224" elapsed="0.002394"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.803038" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.802803" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.802788" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.803802" level="INFO">${j} = 16</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.803446" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.804636" level="INFO">${item} =         {
          "id": "16",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.804018" elapsed="0.000647"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.804822" elapsed="0.000183"/>
</kw>
<var name="${iteration}">16</var>
<status status="PASS" start="2026-05-25T01:55:36.802758" elapsed="0.002285"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.805490" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.805240" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.805225" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.806248" level="INFO">${j} = 17</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.805879" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.807031" level="INFO">${item} =         {
          "id": "17",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.806430" elapsed="0.000628"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.807231" elapsed="0.000181"/>
</kw>
<var name="${iteration}">17</var>
<status status="PASS" start="2026-05-25T01:55:36.805195" elapsed="0.002255"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.807863" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.807629" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.807614" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.808622" level="INFO">${j} = 18</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.808265" elapsed="0.000383"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.809429" level="INFO">${item} =         {
          "id": "18",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.808803" elapsed="0.000657"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.809616" elapsed="0.000181"/>
</kw>
<var name="${iteration}">18</var>
<status status="PASS" start="2026-05-25T01:55:36.807585" elapsed="0.002249"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.810266" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.810013" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.809998" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.810997" level="INFO">${j} = 19</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.810651" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.811788" level="INFO">${item} =         {
          "id": "19",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.811194" elapsed="0.000622"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.811968" elapsed="0.000197"/>
</kw>
<var name="${iteration}">19</var>
<status status="PASS" start="2026-05-25T01:55:36.809969" elapsed="0.002234"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.812613" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.812380" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.812366" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.813392" level="INFO">${j} = 20</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.812999" elapsed="0.000419"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.814184" level="INFO">${item} =         {
          "id": "20",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.813572" elapsed="0.000640"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.814365" elapsed="0.000182"/>
</kw>
<var name="${iteration}">20</var>
<status status="PASS" start="2026-05-25T01:55:36.812337" elapsed="0.002248"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.814998" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.814765" elapsed="0.000508"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.814748" elapsed="0.000552"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.815797" level="INFO">${j} = 21</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.815446" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.816596" level="INFO">${item} =         {
          "id": "21",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.815978" elapsed="0.000646"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.816780" elapsed="0.000181"/>
</kw>
<var name="${iteration}">21</var>
<status status="PASS" start="2026-05-25T01:55:36.814718" elapsed="0.002281"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.817447" elapsed="0.000303"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.817197" elapsed="0.000594"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.817182" elapsed="0.000633"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.818330" level="INFO">${j} = 22</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.817960" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.819135" level="INFO">${item} =         {
          "id": "22",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.818516" elapsed="0.000648"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.819320" elapsed="0.000181"/>
</kw>
<var name="${iteration}">22</var>
<status status="PASS" start="2026-05-25T01:55:36.817152" elapsed="0.002387"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.819958" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.819724" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.819709" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.820713" level="INFO">${j} = 23</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.820364" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.821517" level="INFO">${item} =         {
          "id": "23",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.820895" elapsed="0.000651"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.821702" elapsed="0.000182"/>
</kw>
<var name="${iteration}">23</var>
<status status="PASS" start="2026-05-25T01:55:36.819675" elapsed="0.002246"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.822353" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.822118" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.822103" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.823106" level="INFO">${j} = 24</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.822746" elapsed="0.000387"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.823879" level="INFO">${item} =         {
          "id": "24",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.823287" elapsed="0.000620"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.824060" elapsed="0.000197"/>
</kw>
<var name="${iteration}">24</var>
<status status="PASS" start="2026-05-25T01:55:36.822056" elapsed="0.002239"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.824706" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.824474" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.824459" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.825492" level="INFO">${j} = 25</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.825109" elapsed="0.000410"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.826301" level="INFO">${item} =         {
          "id": "25",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.825678" elapsed="0.000651"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.826484" elapsed="0.000182"/>
</kw>
<var name="${iteration}">25</var>
<status status="PASS" start="2026-05-25T01:55:36.824430" elapsed="0.002307"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.827174" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.826919" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.826904" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.827913" level="INFO">${j} = 26</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.827565" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.828708" level="INFO">${item} =         {
          "id": "26",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.828111" elapsed="0.000625"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.828893" elapsed="0.000202"/>
</kw>
<var name="${iteration}">26</var>
<status status="PASS" start="2026-05-25T01:55:36.826874" elapsed="0.002260"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.829574" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.829338" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.829323" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.830333" level="INFO">${j} = 27</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.829959" elapsed="0.000400"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.831129" level="INFO">${item} =         {
          "id": "27",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.830517" elapsed="0.000640"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.831312" elapsed="0.000182"/>
</kw>
<var name="${iteration}">27</var>
<status status="PASS" start="2026-05-25T01:55:36.829288" elapsed="0.002243"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.831943" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.831710" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.831694" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.832699" level="INFO">${j} = 28</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.832348" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.833502" level="INFO">${item} =         {
          "id": "28",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.832881" elapsed="0.000650"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.833685" elapsed="0.000179"/>
</kw>
<var name="${iteration}">28</var>
<status status="PASS" start="2026-05-25T01:55:36.831665" elapsed="0.002236"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.834450" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.834098" elapsed="0.000574"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.834081" elapsed="0.000616"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.835207" level="INFO">${j} = 29</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.834841" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.835988" level="INFO">${item} =         {
          "id": "29",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.835390" elapsed="0.000626"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.836189" elapsed="0.000182"/>
</kw>
<var name="${iteration}">29</var>
<status status="PASS" start="2026-05-25T01:55:36.834036" elapsed="0.002372"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.836819" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.836586" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.836571" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.837602" level="INFO">${j} = 30</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.837245" elapsed="0.000384"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.838392" level="INFO">${item} =         {
          "id": "30",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.837784" elapsed="0.000668"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.838619" elapsed="0.000188"/>
</kw>
<var name="${iteration}">30</var>
<status status="PASS" start="2026-05-25T01:55:36.836542" elapsed="0.002303"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.839278" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.839023" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.839008" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.840019" level="INFO">${j} = 31</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.839667" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.840815" level="INFO">${item} =         {
          "id": "31",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.840218" elapsed="0.000625"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.840999" elapsed="0.000209"/>
</kw>
<var name="${iteration}">31</var>
<status status="PASS" start="2026-05-25T01:55:36.838979" elapsed="0.002268"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.841663" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.841427" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.841412" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.842419" level="INFO">${j} = 32</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.842054" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.843213" level="INFO">${item} =         {
          "id": "32",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.842602" elapsed="0.000639"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.843395" elapsed="0.000182"/>
</kw>
<var name="${iteration}">32</var>
<status status="PASS" start="2026-05-25T01:55:36.841383" elapsed="0.002230"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.844023" elapsed="0.000207"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.843791" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.843776" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.844787" level="INFO">${j} = 33</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.844436" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.845592" level="INFO">${item} =         {
          "id": "33",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.844968" elapsed="0.000653"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.845775" elapsed="0.000181"/>
</kw>
<var name="${iteration}">33</var>
<status status="PASS" start="2026-05-25T01:55:36.843746" elapsed="0.002247"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.846424" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.846190" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.846174" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.847183" level="INFO">${j} = 34</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.846810" elapsed="0.000401"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.847962" level="INFO">${item} =         {
          "id": "34",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.847364" elapsed="0.000626"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.848159" elapsed="0.000184"/>
</kw>
<var name="${iteration}">34</var>
<status status="PASS" start="2026-05-25T01:55:36.846144" elapsed="0.002237"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.848803" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.848570" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.848554" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.849576" level="INFO">${j} = 35</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.849226" elapsed="0.000411"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.850415" level="INFO">${item} =         {
          "id": "35",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.849797" elapsed="0.000646"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.850599" elapsed="0.000181"/>
</kw>
<var name="${iteration}">35</var>
<status status="PASS" start="2026-05-25T01:55:36.848516" elapsed="0.002302"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.851370" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.851124" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.850984" elapsed="0.000637"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.852137" level="INFO">${j} = 36</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.851770" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.852922" level="INFO">${item} =         {
          "id": "36",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.852321" elapsed="0.000629"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.853131" elapsed="0.000184"/>
</kw>
<var name="${iteration}">36</var>
<status status="PASS" start="2026-05-25T01:55:36.850954" elapsed="0.002399"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.853767" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.853533" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.853518" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.854516" level="INFO">${j} = 37</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.854167" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.855307" level="INFO">${item} =         {
          "id": "37",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.854695" elapsed="0.000640"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.855489" elapsed="0.000180"/>
</kw>
<var name="${iteration}">37</var>
<status status="PASS" start="2026-05-25T01:55:36.853489" elapsed="0.002218"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.856133" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.855885" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.855870" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.856866" level="INFO">${j} = 38</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.856520" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.857668" level="INFO">${item} =         {
          "id": "38",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.857045" elapsed="0.000651"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.857850" elapsed="0.000180"/>
</kw>
<var name="${iteration}">38</var>
<status status="PASS" start="2026-05-25T01:55:36.855841" elapsed="0.002241"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.858496" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.858264" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.858249" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.859249" level="INFO">${j} = 39</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.858885" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.860029" level="INFO">${item} =         {
          "id": "39",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.859430" elapsed="0.000627"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.860229" elapsed="0.000181"/>
</kw>
<var name="${iteration}">39</var>
<status status="PASS" start="2026-05-25T01:55:36.858220" elapsed="0.002228"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.860901" elapsed="0.000220"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.860630" elapsed="0.000531"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.860613" elapsed="0.000573"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.861685" level="INFO">${j} = 40</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.861334" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.862489" level="INFO">${item} =         {
          "id": "40",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.861866" elapsed="0.000651"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.862671" elapsed="0.000182"/>
</kw>
<var name="${iteration}">40</var>
<status status="PASS" start="2026-05-25T01:55:36.860584" elapsed="0.002306"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.863323" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.863087" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.863055" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.864056" level="INFO">${j} = 41</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.863709" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.864852" level="INFO">${item} =         {
          "id": "41",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.864254" elapsed="0.000626"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.865034" elapsed="0.000208"/>
</kw>
<var name="${iteration}">41</var>
<status status="PASS" start="2026-05-25T01:55:36.863026" elapsed="0.002253"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.865693" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.865460" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.865444" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.866443" level="INFO">${j} = 42</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.866094" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.867243" level="INFO">${item} =         {
          "id": "42",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.866624" elapsed="0.000647"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.867425" elapsed="0.000179"/>
</kw>
<var name="${iteration}">42</var>
<status status="PASS" start="2026-05-25T01:55:36.865415" elapsed="0.002226"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.868187" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.867931" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.867806" elapsed="0.000630"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.868933" level="INFO">${j} = 43</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.868586" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.869750" level="INFO">${item} =         {
          "id": "43",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.869144" elapsed="0.000634"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.869933" elapsed="0.000197"/>
</kw>
<var name="${iteration}">43</var>
<status status="PASS" start="2026-05-25T01:55:36.867777" elapsed="0.002391"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.870582" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.870348" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.870333" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.871335" level="INFO">${j} = 44</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.870967" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.872133" level="INFO">${item} =         {
          "id": "44",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.871517" elapsed="0.000645"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.872351" elapsed="0.000182"/>
</kw>
<var name="${iteration}">44</var>
<status status="PASS" start="2026-05-25T01:55:36.870304" elapsed="0.002267"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.872987" elapsed="0.000233"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.872752" elapsed="0.000506"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.872737" elapsed="0.000546"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.873780" level="INFO">${j} = 45</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.873425" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.874577" level="INFO">${item} =         {
          "id": "45",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.873961" elapsed="0.000644"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.874760" elapsed="0.000182"/>
</kw>
<var name="${iteration}">45</var>
<status status="PASS" start="2026-05-25T01:55:36.872708" elapsed="0.002272"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.875428" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.875193" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.875178" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.876176" level="INFO">${j} = 46</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.875814" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.876955" level="INFO">${item} =         {
          "id": "46",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.876357" elapsed="0.000626"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.877171" elapsed="0.000182"/>
</kw>
<var name="${iteration}">46</var>
<status status="PASS" start="2026-05-25T01:55:36.875147" elapsed="0.002245"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.877813" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.877573" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.877556" elapsed="0.000503"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.878575" level="INFO">${j} = 47</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.878219" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.879368" level="INFO">${item} =         {
          "id": "47",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.878756" elapsed="0.000640"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.879549" elapsed="0.000182"/>
</kw>
<var name="${iteration}">47</var>
<status status="PASS" start="2026-05-25T01:55:36.877527" elapsed="0.002241"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.880199" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.879948" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.879933" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.880930" level="INFO">${j} = 48</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.880583" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.881741" level="INFO">${item} =         {
          "id": "48",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.881139" elapsed="0.000631"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.881922" elapsed="0.000204"/>
</kw>
<var name="${iteration}">48</var>
<status status="PASS" start="2026-05-25T01:55:36.879904" elapsed="0.002259"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.882576" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.882342" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.882326" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.883342" level="INFO">${j} = 49</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.882963" elapsed="0.000406"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.884182" level="INFO">${item} =         {
          "id": "49",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.883560" elapsed="0.000651"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.884367" elapsed="0.000182"/>
</kw>
<var name="${iteration}">49</var>
<status status="PASS" start="2026-05-25T01:55:36.882297" elapsed="0.002291"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.885168" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.884877" elapsed="0.000519"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.884755" elapsed="0.000666"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.885917" level="INFO">${j} = 50</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.885563" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.886717" level="INFO">${item} =         {
          "id": "50",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.886115" elapsed="0.000630"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.886900" elapsed="0.000197"/>
</kw>
<var name="${iteration}">50</var>
<status status="PASS" start="2026-05-25T01:55:36.884725" elapsed="0.002410"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.887555" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.887318" elapsed="0.000465"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.887303" elapsed="0.000505"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.888316" level="INFO">${j} = 51</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.887949" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.889155" level="INFO">${item} =         {
          "id": "51",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.888497" elapsed="0.000686"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.889338" elapsed="0.000181"/>
</kw>
<var name="${iteration}">51</var>
<status status="PASS" start="2026-05-25T01:55:36.887273" elapsed="0.002284"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.889974" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.889741" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.889726" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.890722" level="INFO">${j} = 52</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.890377" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.891512" level="INFO">${item} =         {
          "id": "52",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.890901" elapsed="0.000639"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.891698" elapsed="0.000179"/>
</kw>
<var name="${iteration}">52</var>
<status status="PASS" start="2026-05-25T01:55:36.889696" elapsed="0.002219"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.892344" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.892110" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.892093" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.893116" level="INFO">${j} = 53</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.892730" elapsed="0.000414"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.893901" level="INFO">${item} =         {
          "id": "53",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.893300" elapsed="0.000630"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.894099" elapsed="0.000185"/>
</kw>
<var name="${iteration}">53</var>
<status status="PASS" start="2026-05-25T01:55:36.892049" elapsed="0.002272"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.894735" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.894501" elapsed="0.000488"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.894486" elapsed="0.000531"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.895533" level="INFO">${j} = 54</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.895181" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.896340" level="INFO">${item} =         {
          "id": "54",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.895720" elapsed="0.000648"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.896525" elapsed="0.000182"/>
</kw>
<var name="${iteration}">54</var>
<status status="PASS" start="2026-05-25T01:55:36.894456" elapsed="0.002289"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.897206" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.896924" elapsed="0.000505"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.896909" elapsed="0.000544"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.897944" level="INFO">${j} = 55</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.897596" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.898755" level="INFO">${item} =         {
          "id": "55",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.898145" elapsed="0.000638"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.898938" elapsed="0.000197"/>
</kw>
<var name="${iteration}">55</var>
<status status="PASS" start="2026-05-25T01:55:36.896880" elapsed="0.002293"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.899592" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.899352" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.899337" elapsed="0.000503"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.900346" level="INFO">${j} = 56</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.899981" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.901150" level="INFO">${item} =         {
          "id": "56",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.900526" elapsed="0.000653"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.901333" elapsed="0.000178"/>
</kw>
<var name="${iteration}">56</var>
<status status="PASS" start="2026-05-25T01:55:36.899307" elapsed="0.002241"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.902093" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.901837" elapsed="0.000482"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.901712" elapsed="0.000632"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.902836" level="INFO">${j} = 57</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.902486" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.903634" level="INFO">${item} =         {
          "id": "57",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.903018" elapsed="0.000645"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.903819" elapsed="0.000182"/>
</kw>
<var name="${iteration}">57</var>
<status status="PASS" start="2026-05-25T01:55:36.901683" elapsed="0.002355"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.904466" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.904233" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.904219" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.905242" level="INFO">${j} = 58</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.904860" elapsed="0.000408"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.906019" level="INFO">${item} =         {
          "id": "58",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.905424" elapsed="0.000623"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.906220" elapsed="0.000183"/>
</kw>
<var name="${iteration}">58</var>
<status status="PASS" start="2026-05-25T01:55:36.904189" elapsed="0.002283"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.906889" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.906654" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.906639" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.907641" level="INFO">${j} = 59</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.907293" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.908436" level="INFO">${item} =         {
          "id": "59",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.907821" elapsed="0.000643"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.908628" elapsed="0.000182"/>
</kw>
<var name="${iteration}">59</var>
<status status="PASS" start="2026-05-25T01:55:36.906609" elapsed="0.002238"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.909305" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.909048" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.909033" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.910035" level="INFO">${j} = 60</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.909689" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.910834" level="INFO">${item} =         {
          "id": "60",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.910235" elapsed="0.000626"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.911015" elapsed="0.000204"/>
</kw>
<var name="${iteration}">60</var>
<status status="PASS" start="2026-05-25T01:55:36.909003" elapsed="0.002254"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.911669" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.911436" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.911421" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.912422" level="INFO">${j} = 61</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.912053" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.913248" level="INFO">${item} =         {
          "id": "61",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.912602" elapsed="0.000674"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.913431" elapsed="0.000181"/>
</kw>
<var name="${iteration}">61</var>
<status status="PASS" start="2026-05-25T01:55:36.911392" elapsed="0.002258"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.914077" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.913830" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.913814" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.914819" level="INFO">${j} = 62</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.914468" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.915612" level="INFO">${item} =         {
          "id": "62",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.914999" elapsed="0.000641"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.915794" elapsed="0.000181"/>
</kw>
<var name="${iteration}">62</var>
<status status="PASS" start="2026-05-25T01:55:36.913785" elapsed="0.002226"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.916442" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.916207" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.916192" elapsed="0.000501"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.917229" level="INFO">${j} = 63</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.916834" elapsed="0.000421"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.918003" level="INFO">${item} =         {
          "id": "63",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.917409" elapsed="0.000653"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.918236" elapsed="0.000184"/>
</kw>
<var name="${iteration}">63</var>
<status status="PASS" start="2026-05-25T01:55:36.916162" elapsed="0.002296"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.918991" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.918750" elapsed="0.000482"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.918627" elapsed="0.000630"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.919752" level="INFO">${j} = 64</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.919400" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.920549" level="INFO">${item} =         {
          "id": "64",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.919934" elapsed="0.000643"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.920739" elapsed="0.000204"/>
</kw>
<var name="${iteration}">64</var>
<status status="PASS" start="2026-05-25T01:55:36.918597" elapsed="0.002388"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.921425" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.921188" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.921173" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.922178" level="INFO">${j} = 65</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.921813" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.922954" level="INFO">${item} =         {
          "id": "65",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.922361" elapsed="0.000621"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.923153" elapsed="0.000184"/>
</kw>
<var name="${iteration}">65</var>
<status status="PASS" start="2026-05-25T01:55:36.921142" elapsed="0.002232"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.923790" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.923553" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.923538" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.924541" level="INFO">${j} = 66</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.924192" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.925349" level="INFO">${item} =         {
          "id": "66",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.924722" elapsed="0.000656"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.925532" elapsed="0.000181"/>
</kw>
<var name="${iteration}">66</var>
<status status="PASS" start="2026-05-25T01:55:36.923509" elapsed="0.002242"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.926181" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.925930" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.925915" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.926916" level="INFO">${j} = 67</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.926569" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.927713" level="INFO">${item} =         {
          "id": "67",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.927115" elapsed="0.000626"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.927897" elapsed="0.000203"/>
</kw>
<var name="${iteration}">67</var>
<status status="PASS" start="2026-05-25T01:55:36.925885" elapsed="0.002254"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.928553" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.928319" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.928304" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.929329" level="INFO">${j} = 68</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.928949" elapsed="0.000437"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.930172" level="INFO">${item} =         {
          "id": "68",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.929546" elapsed="0.000655"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.930360" elapsed="0.000182"/>
</kw>
<var name="${iteration}">68</var>
<status status="PASS" start="2026-05-25T01:55:36.928274" elapsed="0.002305"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.930993" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.930759" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.930744" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.931744" level="INFO">${j} = 69</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.931397" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.932537" level="INFO">${item} =         {
          "id": "69",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.931924" elapsed="0.000641"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.932725" elapsed="0.000210"/>
</kw>
<var name="${iteration}">69</var>
<status status="PASS" start="2026-05-25T01:55:36.930715" elapsed="0.002257"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.933406" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.933170" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.933155" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.934155" level="INFO">${j} = 70</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.933790" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.934933" level="INFO">${item} =         {
          "id": "70",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.934335" elapsed="0.000627"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.935132" elapsed="0.000183"/>
</kw>
<var name="${iteration}">70</var>
<status status="PASS" start="2026-05-25T01:55:36.933125" elapsed="0.002228"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.935883" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.935642" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.935518" elapsed="0.000628"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.936635" level="INFO">${j} = 71</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.936288" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.937453" level="INFO">${item} =         {
          "id": "71",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.936834" elapsed="0.000647"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.937636" elapsed="0.000181"/>
</kw>
<var name="${iteration}">71</var>
<status status="PASS" start="2026-05-25T01:55:36.935489" elapsed="0.002365"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.938283" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.938032" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.938018" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.939017" level="INFO">${j} = 72</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.938670" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.939811" level="INFO">${item} =         {
          "id": "72",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.939218" elapsed="0.000624"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.940003" elapsed="0.000196"/>
</kw>
<var name="${iteration}">72</var>
<status status="PASS" start="2026-05-25T01:55:36.937989" elapsed="0.002248"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.940685" elapsed="0.000205"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.940417" elapsed="0.000512"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.940402" elapsed="0.000552"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.941476" level="INFO">${j} = 73</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.941118" elapsed="0.000384"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.942280" level="INFO">${item} =         {
          "id": "73",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.941663" elapsed="0.000646"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.942463" elapsed="0.000181"/>
</kw>
<var name="${iteration}">73</var>
<status status="PASS" start="2026-05-25T01:55:36.940373" elapsed="0.002308"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.943109" elapsed="0.000191"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.942860" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.942845" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.943853" level="INFO">${j} = 74</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.943506" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.944648" level="INFO">${item} =         {
          "id": "74",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.944033" elapsed="0.000643"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.944858" elapsed="0.000190"/>
</kw>
<var name="${iteration}">74</var>
<status status="PASS" start="2026-05-25T01:55:36.942816" elapsed="0.002287"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.945524" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.945289" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.945274" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.946272" level="INFO">${j} = 75</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.945908" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.947047" level="INFO">${item} =         {
          "id": "75",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.946452" elapsed="0.000640"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.947248" elapsed="0.000183"/>
</kw>
<var name="${iteration}">75</var>
<status status="PASS" start="2026-05-25T01:55:36.945244" elapsed="0.002223"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.947877" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.947646" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.947631" elapsed="0.000504"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.948624" level="INFO">${j} = 76</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.948277" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.949434" level="INFO">${item} =         {
          "id": "76",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.948821" elapsed="0.000641"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.949614" elapsed="0.000181"/>
</kw>
<var name="${iteration}">76</var>
<status status="PASS" start="2026-05-25T01:55:36.947602" elapsed="0.002230"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.950260" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.950010" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.949996" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.950994" level="INFO">${j} = 77</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.950647" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.951794" level="INFO">${item} =         {
          "id": "77",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.951190" elapsed="0.000632"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.952010" elapsed="0.000199"/>
</kw>
<var name="${iteration}">77</var>
<status status="PASS" start="2026-05-25T01:55:36.949967" elapsed="0.002280"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.953195" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.952933" elapsed="0.000487"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.952413" elapsed="0.001031"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.953936" level="INFO">${j} = 78</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.953587" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.954735" level="INFO">${item} =         {
          "id": "78",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.954134" elapsed="0.000629"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.954920" elapsed="0.000197"/>
</kw>
<var name="${iteration}">78</var>
<status status="PASS" start="2026-05-25T01:55:36.952383" elapsed="0.002772"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.955571" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.955336" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.955321" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.956334" level="INFO">${j} = 79</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.955963" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.957163" level="INFO">${item} =         {
          "id": "79",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.956517" elapsed="0.000675"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.957349" elapsed="0.000183"/>
</kw>
<var name="${iteration}">79</var>
<status status="PASS" start="2026-05-25T01:55:36.955292" elapsed="0.002277"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.957985" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.957748" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.957734" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.958743" level="INFO">${j} = 80</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.958393" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.959536" level="INFO">${item} =         {
          "id": "80",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.958924" elapsed="0.000641"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.959721" elapsed="0.000181"/>
</kw>
<var name="${iteration}">80</var>
<status status="PASS" start="2026-05-25T01:55:36.957705" elapsed="0.002235"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.960371" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.960138" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.960122" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.961138" level="INFO">${j} = 81</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.960765" elapsed="0.000400"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.961918" level="INFO">${item} =         {
          "id": "81",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.961321" elapsed="0.000625"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.962117" elapsed="0.000184"/>
</kw>
<var name="${iteration}">81</var>
<status status="PASS" start="2026-05-25T01:55:36.960091" elapsed="0.002248"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.962755" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.962522" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.962507" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.963504" level="INFO">${j} = 82</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.963155" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.964345" level="INFO">${item} =         {
          "id": "82",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.963724" elapsed="0.000649"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.964528" elapsed="0.000193"/>
</kw>
<var name="${iteration}">82</var>
<status status="PASS" start="2026-05-25T01:55:36.962478" elapsed="0.002281"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.965194" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.964940" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.964926" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.965938" level="INFO">${j} = 83</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.965586" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.966738" level="INFO">${item} =         {
          "id": "83",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.966134" elapsed="0.000632"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.966921" elapsed="0.000200"/>
</kw>
<var name="${iteration}">83</var>
<status status="PASS" start="2026-05-25T01:55:36.964896" elapsed="0.002263"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.967573" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.967340" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.967325" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.968331" level="INFO">${j} = 84</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.967964" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.969160" level="INFO">${item} =         {
          "id": "84",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.968511" elapsed="0.000677"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.969342" elapsed="0.000181"/>
</kw>
<var name="${iteration}">84</var>
<status status="PASS" start="2026-05-25T01:55:36.967296" elapsed="0.002264"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.970109" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.969855" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.969727" elapsed="0.000632"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.970850" level="INFO">${j} = 85</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.970500" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.971654" level="INFO">${item} =         {
          "id": "85",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.971037" elapsed="0.000646"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.971836" elapsed="0.000183"/>
</kw>
<var name="${iteration}">85</var>
<status status="PASS" start="2026-05-25T01:55:36.969697" elapsed="0.002359"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.972489" elapsed="0.000195"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.972254" elapsed="0.000468"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.972239" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.973269" level="INFO">${j} = 86</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.972891" elapsed="0.000404"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.974048" level="INFO">${item} =         {
          "id": "86",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.973450" elapsed="0.000642"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.974249" elapsed="0.000182"/>
</kw>
<var name="${iteration}">86</var>
<status status="PASS" start="2026-05-25T01:55:36.972209" elapsed="0.002260"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.974885" elapsed="0.000197"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.974647" elapsed="0.000507"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.974632" elapsed="0.000549"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.975678" level="INFO">${j} = 87</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.975327" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.976473" level="INFO">${item} =         {
          "id": "87",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.975860" elapsed="0.000641"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.976669" elapsed="0.000185"/>
</kw>
<var name="${iteration}">87</var>
<status status="PASS" start="2026-05-25T01:55:36.974603" elapsed="0.002289"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.977337" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.977098" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.977082" elapsed="0.000501"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.978093" level="INFO">${j} = 88</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.977731" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.978874" level="INFO">${item} =         {
          "id": "88",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.978277" elapsed="0.000625"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.979063" elapsed="0.000198"/>
</kw>
<var name="${iteration}">88</var>
<status status="PASS" start="2026-05-25T01:55:36.977036" elapsed="0.002263"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.979713" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.979479" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.979464" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.980462" level="INFO">${j} = 89</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.980113" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.981282" level="INFO">${item} =         {
          "id": "89",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.980666" elapsed="0.000645"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.981466" elapsed="0.000181"/>
</kw>
<var name="${iteration}">89</var>
<status status="PASS" start="2026-05-25T01:55:36.979435" elapsed="0.002249"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.982111" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.981862" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.981847" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.982842" level="INFO">${j} = 90</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.982496" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.983637" level="INFO">${item} =         {
          "id": "90",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.983027" elapsed="0.000638"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.983819" elapsed="0.000186"/>
</kw>
<var name="${iteration}">90</var>
<status status="PASS" start="2026-05-25T01:55:36.981818" elapsed="0.002223"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.984469" elapsed="0.000195"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.984236" elapsed="0.000465"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.984221" elapsed="0.000506"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.985233" level="INFO">${j} = 91</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.984869" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.986009" level="INFO">${item} =         {
          "id": "91",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.985414" elapsed="0.000623"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.986208" elapsed="0.000182"/>
</kw>
<var name="${iteration}">91</var>
<status status="PASS" start="2026-05-25T01:55:36.984192" elapsed="0.002274"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.987001" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.986758" elapsed="0.000484"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.986634" elapsed="0.000633"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.987759" level="INFO">${j} = 92</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.987409" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.988574" level="INFO">${item} =         {
          "id": "92",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.987940" elapsed="0.000663"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.988760" elapsed="0.000183"/>
</kw>
<var name="${iteration}">92</var>
<status status="PASS" start="2026-05-25T01:55:36.986604" elapsed="0.002376"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.989416" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.989180" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.989165" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.990171" level="INFO">${j} = 93</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.989804" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.990946" level="INFO">${item} =         {
          "id": "93",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.990352" elapsed="0.000623"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.991145" elapsed="0.000182"/>
</kw>
<var name="${iteration}">93</var>
<status status="PASS" start="2026-05-25T01:55:36.989135" elapsed="0.002229"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.991774" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.991541" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.991526" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.992519" level="INFO">${j} = 94</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.992173" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.993340" level="INFO">${item} =         {
          "id": "94",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.992727" elapsed="0.000642"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.993522" elapsed="0.000180"/>
</kw>
<var name="${iteration}">94</var>
<status status="PASS" start="2026-05-25T01:55:36.991498" elapsed="0.002241"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.994172" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.993917" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.993903" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.994905" level="INFO">${j} = 95</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.994559" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.995702" level="INFO">${item} =         {
          "id": "95",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.995102" elapsed="0.000628"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.995884" elapsed="0.000195"/>
</kw>
<var name="${iteration}">95</var>
<status status="PASS" start="2026-05-25T01:55:36.993874" elapsed="0.002243"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.996539" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.996294" elapsed="0.000466"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.996280" elapsed="0.000504"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.997294" level="INFO">${j} = 96</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.996926" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.998081" level="INFO">${item} =         {
          "id": "96",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.997473" elapsed="0.000670"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.998303" elapsed="0.000183"/>
</kw>
<var name="${iteration}">96</var>
<status status="PASS" start="2026-05-25T01:55:36.996251" elapsed="0.002272"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:36.998937" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:36.998701" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:36.998687" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:36.999688" level="INFO">${j} = 97</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.999340" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.000482" level="INFO">${item} =         {
          "id": "97",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:36.999869" elapsed="0.000652"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.000681" elapsed="0.000181"/>
</kw>
<var name="${iteration}">97</var>
<status status="PASS" start="2026-05-25T01:55:36.998658" elapsed="0.002241"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.001329" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.001094" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.001061" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.002061" level="INFO">${j} = 98</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.001715" elapsed="0.000387"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.002857" level="INFO">${item} =         {
          "id": "98",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.002258" elapsed="0.000628"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.003039" elapsed="0.000196"/>
</kw>
<var name="${iteration}">98</var>
<status status="PASS" start="2026-05-25T01:55:37.001032" elapsed="0.002241"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.003837" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.003587" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.003434" elapsed="0.000667"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.004623" level="INFO">${j} = 99</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.004245" elapsed="0.000404"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.005435" level="INFO">${item} =         {
          "id": "99",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.004808" elapsed="0.000655"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.005617" elapsed="0.000182"/>
</kw>
<var name="${iteration}">99</var>
<status status="PASS" start="2026-05-25T01:55:37.003405" elapsed="0.002432"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.006276" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.006014" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.005999" elapsed="0.000523"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.007021" level="INFO">${j} = 100</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.006664" elapsed="0.000383"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.007823" level="INFO">${item} =         {
          "id": "100",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.007220" elapsed="0.000630"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.008004" elapsed="0.000198"/>
</kw>
<var name="${iteration}">100</var>
<status status="PASS" start="2026-05-25T01:55:37.005970" elapsed="0.002270"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="PASS" start="2026-05-25T01:55:36.766265" elapsed="0.242006"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.009572" level="INFO">${final_text} = {
  "flow": [
        {
          "id": "1",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "...</msg>
<var>${final_text}</var>
<arg>SEPARATOR=</arg>
<arg>${prolog}</arg>
<arg>${endline}</arg>
<arg>@{items}</arg>
<arg>${endline}</arg>
<arg>${epilog}</arg>
<doc>Catenates the given items together and returns the resulted string.</doc>
<status status="PASS" start="2026-05-25T01:55:37.008427" elapsed="0.001173"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:37.009700" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:55:37.009867" level="INFO">${data} = {
  "flow": [
        {
          "id": "1",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "...</msg>
<var>${data}</var>
<arg>folder=${folder}</arg>
<arg>name_prefix=post_</arg>
<arg>base_name=${base_name}</arg>
<arg>extension=${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>endline=${endline}</arg>
<arg>iterations=${iterations}</arg>
<arg>iter_start=${iter_start}</arg>
<arg>iter_j_offset=${iter_j_offset}</arg>
<doc>Read a template from folder, strip endline, make changes according to mapping, return the result.
If ${iterations} value is present, put text together from "prolog", "item" and "epilog" parts,
where additional template variable ${i} goes from 1, by one 100 times.
Template variable ${j} is calculated as ${i} incremented by offset 0 ( j = i + iter_j_offset )
used to create non uniform data in order to be able to validate UPDATE operations.
POST (as opposed to PUT) needs slightly different data, ${name_prefix} may be used to distinguish.
(Actually, it is GET who formats data differently when URI is a top-level container.)</doc>
<status status="PASS" start="2026-05-25T01:55:36.711884" elapsed="0.298010"/>
</kw>
<kw name="Resolve_Jmes_Path" owner="TemplatedRequests">
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:37.011258" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow/jmespath.expr' does not exist.</msg>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:37.010948" elapsed="0.000383">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow/jmespath.expr' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:37.011425" level="INFO">${read_jmes_file} = False</msg>
<var>${read_jmes_file}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:37.010606" elapsed="0.000843"/>
</kw>
<if>
<branch type="IF" condition="${read_jmes_file} == ${true}">
<kw name="Get File" owner="OperatingSystem">
<var>${jmes_expression}</var>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.011768" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:37.011520" elapsed="0.000306"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.012345" level="INFO">${jmes_expression} = None</msg>
<var>${jmes_expression}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:37.012041" elapsed="0.000396"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.011849" elapsed="0.000635"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.011501" elapsed="0.001005"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.014842" level="INFO">${expression} = </msg>
<var>${expression}</var>
<arg>${read_jmes_file} == ${true}</arg>
<arg>${jmes_expression}</arg>
<arg>${EMPTY}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:37.012659" elapsed="0.002209"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-05-25T01:55:37.014919" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:37.015085" level="INFO">${jmes_expression} = </msg>
<var>${jmes_expression}</var>
<arg>${folder}</arg>
<doc>Reads JMES path from file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/jmespath.expr if the file exists and
returns the JMES path. Empty string is returned otherwise.</doc>
<status status="PASS" start="2026-05-25T01:55:37.010264" elapsed="0.004848"/>
</kw>
<kw name="Post_To_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.016662" level="INFO">/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0</msg>
<arg>${uri}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:37.016384" elapsed="0.000322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.017115" level="INFO">{
  "flow": [
        {
          "id": "1",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.1/32"
          },
          "flow-name": "Flow-1",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 1
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "2",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.2/32"
          },
          "flow-name": "Flow-2",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 2
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "3",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.3/32"
          },
          "flow-name": "Flow-3",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 3
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "4",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.4/32"
          },
          "flow-name": "Flow-4",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 4
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "5",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.5/32"
          },
          "flow-name": "Flow-5",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 5
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "6",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.6/32"
          },
          "flow-name": "Flow-6",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 6
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "7",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.7/32"
          },
          "flow-name": "Flow-7",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 7
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "8",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.8/32"
          },
          "flow-name": "Flow-8",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 8
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "9",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.9/32"
          },
          "flow-name": "Flow-9",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 9
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "10",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.10/32"
          },
          "flow-name": "Flow-10",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 10
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "11",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.11/32"
          },
          "flow-name": "Flow-11",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 11
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "12",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.12/32"
          },
          "flow-name": "Flow-12",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 12
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "13",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.13/32"
          },
          "flow-name": "Flow-13",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 13
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "14",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.14/32"
          },
          "flow-name": "Flow-14",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 14
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "15",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.15/32"
          },
          "flow-name": "Flow-15",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 15
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "16",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.16/32"
          },
          "flow-name": "Flow-16",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 16
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "17",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.17/32"
          },
          "flow-name": "Flow-17",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 17
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "18",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.18/32"
          },
          "flow-name": "Flow-18",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 18
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "19",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.19/32"
          },
          "flow-name": "Flow-19",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 19
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "20",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.20/32"
          },
          "flow-name": "Flow-20",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 20
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "21",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.21/32"
          },
          "flow-name": "Flow-21",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 21
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "22",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.22/32"
          },
          "flow-name": "Flow-22",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 22
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "23",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.23/32"
          },
          "flow-name": "Flow-23",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 23
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "24",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.24/32"
          },
          "flow-name": "Flow-24",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 24
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "25",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.25/32"
          },
          "flow-name": "Flow-25",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 25
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "26",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.26/32"
          },
          "flow-name": "Flow-26",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 26
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "27",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.27/32"
          },
          "flow-name": "Flow-27",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 27
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "28",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.28/32"
          },
          "flow-name": "Flow-28",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 28
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "29",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.29/32"
          },
          "flow-name": "Flow-29",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 29
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "30",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.30/32"
          },
          "flow-name": "Flow-30",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 30
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "31",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.31/32"
          },
          "flow-name": "Flow-31",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 31
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "32",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.32/32"
          },
          "flow-name": "Flow-32",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 32
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "33",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.33/32"
          },
          "flow-name": "Flow-33",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 33
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "34",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.34/32"
          },
          "flow-name": "Flow-34",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 34
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "35",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.35/32"
          },
          "flow-name": "Flow-35",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 35
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "36",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.36/32"
          },
          "flow-name": "Flow-36",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 36
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "37",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.37/32"
          },
          "flow-name": "Flow-37",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 37
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "38",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.38/32"
          },
          "flow-name": "Flow-38",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 38
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "39",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.39/32"
          },
          "flow-name": "Flow-39",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 39
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "40",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.40/32"
          },
          "flow-name": "Flow-40",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 40
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "41",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.41/32"
          },
          "flow-name": "Flow-41",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 41
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "42",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.42/32"
          },
          "flow-name": "Flow-42",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 42
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "43",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.43/32"
          },
          "flow-name": "Flow-43",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 43
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "44",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.44/32"
          },
          "flow-name": "Flow-44",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 44
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "45",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.45/32"
          },
          "flow-name": "Flow-45",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 45
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "46",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.46/32"
          },
          "flow-name": "Flow-46",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 46
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "47",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.47/32"
          },
          "flow-name": "Flow-47",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 47
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "48",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.48/32"
          },
          "flow-name": "Flow-48",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 48
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "49",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.49/32"
          },
          "flow-name": "Flow-49",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 49
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "50",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.50/32"
          },
          "flow-name": "Flow-50",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 50
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "51",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.51/32"
          },
          "flow-name": "Flow-51",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 51
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "52",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.52/32"
          },
          "flow-name": "Flow-52",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 52
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "53",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.53/32"
          },
          "flow-name": "Flow-53",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 53
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "54",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.54/32"
          },
          "flow-name": "Flow-54",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 54
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "55",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.55/32"
          },
          "flow-name": "Flow-55",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 55
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "56",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.56/32"
          },
          "flow-name": "Flow-56",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 56
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "57",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.57/32"
          },
          "flow-name": "Flow-57",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 57
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "58",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.58/32"
          },
          "flow-name": "Flow-58",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 58
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "59",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.59/32"
          },
          "flow-name": "Flow-59",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 59
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "60",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.60/32"
          },
          "flow-name": "Flow-60",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 60
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "61",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.61/32"
          },
          "flow-name": "Flow-61",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 61
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "62",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.62/32"
          },
          "flow-name": "Flow-62",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 62
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "63",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.63/32"
          },
          "flow-name": "Flow-63",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 63
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "64",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.64/32"
          },
          "flow-name": "Flow-64",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 64
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "65",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.65/32"
          },
          "flow-name": "Flow-65",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 65
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "66",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.66/32"
          },
          "flow-name": "Flow-66",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 66
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "67",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.67/32"
          },
          "flow-name": "Flow-67",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 67
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "68",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.68/32"
          },
          "flow-name": "Flow-68",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 68
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "69",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.69/32"
          },
          "flow-name": "Flow-69",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 69
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "70",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.70/32"
          },
          "flow-name": "Flow-70",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 70
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "71",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.71/32"
          },
          "flow-name": "Flow-71",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 71
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "72",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.72/32"
          },
          "flow-name": "Flow-72",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 72
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "73",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.73/32"
          },
          "flow-name": "Flow-73",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 73
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "74",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.74/32"
          },
          "flow-name": "Flow-74",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 74
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "75",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.75/32"
          },
          "flow-name": "Flow-75",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 75
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "76",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.76/32"
          },
          "flow-name": "Flow-76",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 76
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "77",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.77/32"
          },
          "flow-name": "Flow-77",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 77
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "78",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.78/32"
          },
          "flow-name": "Flow-78",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 78
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "79",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.79/32"
          },
          "flow-name": "Flow-79",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 79
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "80",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.80/32"
          },
          "flow-name": "Flow-80",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 80
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "81",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.81/32"
          },
          "flow-name": "Flow-81",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 81
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "82",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.82/32"
          },
          "flow-name": "Flow-82",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 82
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "83",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.83/32"
          },
          "flow-name": "Flow-83",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 83
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "84",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.84/32"
          },
          "flow-name": "Flow-84",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 84
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "85",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.85/32"
          },
          "flow-name": "Flow-85",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 85
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "86",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.86/32"
          },
          "flow-name": "Flow-86",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 86
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "87",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.87/32"
          },
          "flow-name": "Flow-87",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 87
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "88",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.88/32"
          },
          "flow-name": "Flow-88",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 88
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "89",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.89/32"
          },
          "flow-name": "Flow-89",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 89
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "90",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.90/32"
          },
          "flow-name": "Flow-90",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 90
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "91",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.91/32"
          },
          "flow-name": "Flow-91",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 91
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "92",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.92/32"
          },
          "flow-name": "Flow-92",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 92
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "93",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.93/32"
          },
          "flow-name": "Flow-93",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 93
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "94",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.94/32"
          },
          "flow-name": "Flow-94",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 94
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "95",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.95/32"
          },
          "flow-name": "Flow-95",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 95
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "96",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.96/32"
          },
          "flow-name": "Flow-96",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 96
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "97",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.97/32"
          },
          "flow-name": "Flow-97",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 97
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "98",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.98/32"
          },
          "flow-name": "Flow-98",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 98
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "99",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.99/32"
          },
          "flow-name": "Flow-99",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 99
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "100",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.100/32"
          },
          "flow-name": "Flow-100",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 100
                      }
                    }
                  ]
                }
              }
            ]
          }
        }
  ]
}</msg>
<arg>${data}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:37.016859" elapsed="0.000933"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.018216" level="INFO">{'Content-Type': 'application/json'}</msg>
<arg>${content_type}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:37.017948" elapsed="0.000312"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.018652" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:37.018413" elapsed="0.000281"/>
</kw>
<kw name="Join_Two_Headers" owner="TemplatedRequests">
<kw name="Copy Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:37.019515" level="INFO">${accumulator} = {'Content-Type': 'application/json'}</msg>
<var>${accumulator}</var>
<arg>${first}</arg>
<doc>Returns a copy of the given dictionary.</doc>
<status status="PASS" start="2026-05-25T01:55:37.019319" elapsed="0.000222"/>
</kw>
<kw name="Get Dictionary Items" owner="Collections">
<msg time="2026-05-25T01:55:37.019866" level="INFO">${items_to_add} = []</msg>
<var>${items_to_add}</var>
<arg>${second}</arg>
<doc>Returns items of the given ``dictionary`` as a list.</doc>
<status status="PASS" start="2026-05-25T01:55:37.019694" elapsed="0.000198"/>
</kw>
<kw name="Set To Dictionary" owner="Collections">
<arg>${accumulator}</arg>
<arg>@{items_to_add}</arg>
<doc>Adds the given ``key_value_pairs`` and/or ``items`` to the ``dictionary``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.020043" elapsed="0.000207"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.020663" level="INFO">{'Content-Type': 'application/json'}</msg>
<arg>${accumulator}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:37.020407" elapsed="0.000300"/>
</kw>
<return>
<value>${accumulator}</value>
<status status="PASS" start="2026-05-25T01:55:37.020750" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:55:37.020903" level="INFO">${headers} = {'Content-Type': 'application/json'}</msg>
<var>${headers}</var>
<arg>first=${content_type}</arg>
<arg>second=${accept}</arg>
<doc>Take two dicts, join them, return result. Second argument values take precedence.</doc>
<status status="PASS" start="2026-05-25T01:55:37.018896" elapsed="0.002032"/>
</kw>
<if>
<branch type="IF" condition="&quot;&quot;&quot;${http_timeout}&quot;&quot;&quot; == &quot;&quot;&quot;${EMPTY}&quot;&quot;&quot;">
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:37.060864" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Content-Length': '76286', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body={
  "flow": [
        {
          "id": "1",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.1/32"
          },
          "flow-name": "Flow-1",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 1
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "2",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.2/32"
          },
          "flow-name": "Flow-2",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 2
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "3",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.3/32"
          },
          "flow-name": "Flow-3",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 3
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "4",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.4/32"
          },
          "flow-name": "Flow-4",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 4
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "5",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.5/32"
          },
          "flow-name": "Flow-5",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 5
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "6",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.6/32"
          },
          "flow-name": "Flow-6",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 6
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "7",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.7/32"
          },
          "flow-name": "Flow-7",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 7
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "8",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.8/32"
          },
          "flow-name": "Flow-8",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 8
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "9",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.9/32"
          },
          "flow-name": "Flow-9",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 9
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "10",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.10/32"
          },
          "flow-name": "Flow-10",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 10
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "11",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.11/32"
          },
          "flow-name": "Flow-11",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 11
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "12",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.12/32"
          },
          "flow-name": "Flow-12",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 12
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "13",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.13/32"
          },
          "flow-name": "Flow-13",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 13
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "14",
          "priority": 100,
          "table_id": 0,
          "match": ... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:55:37.061261" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=69', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:37.061503" level="INFO">${response} = &lt;Response [201]&gt;</msg>
<var>${response}</var>
<arg>${session}</arg>
<arg>${uri}</arg>
<arg>data=${data}</arg>
<arg>headers=${headers}</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:37.023207" elapsed="0.038359"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.021180" elapsed="0.040508"/>
</branch>
<branch type="ELSE">
<kw name="POST On Session" owner="RequestsLibrary">
<var>${response}</var>
<arg>${session}</arg>
<arg>${uri}</arg>
<arg>data=${data}</arg>
<arg>headers=${headers}</arg>
<arg>timeout=${http_timeout}</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.062178" elapsed="0.000056"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:37.061750" elapsed="0.000592"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.020980" elapsed="0.041420"/>
</if>
<kw name="Check_Status_Code" owner="TemplatedRequests">
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.069480" level="INFO"/>
<arg>${response.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:37.064965" elapsed="0.004559"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.064330" elapsed="0.005236"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.064275" elapsed="0.005320"/>
</if>
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.072056" level="INFO">201</msg>
<arg>${response.status_code}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:37.069881" elapsed="0.002240"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.069657" elapsed="0.002499"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.069639" elapsed="0.002542"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.072750" level="INFO">${status_codes_type} = list</msg>
<var>${status_codes_type}</var>
<arg>type($additional_allowed_status_codes).__name__</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.072369" elapsed="0.000408"/>
</kw>
<if>
<branch type="IF" condition="&quot;${status_codes_type}&quot;!=&quot;list&quot;">
<kw name="Create List" owner="BuiltIn">
<var>${allowed_status_codes_list}</var>
<arg>${additional_allowed_status_codes}</arg>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.073113" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:37.072847" elapsed="0.000325"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.073667" level="INFO">${allowed_status_codes_list} = []</msg>
<var>${allowed_status_codes_list}</var>
<arg>${additional_allowed_status_codes}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:37.073369" elapsed="0.000324"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.073195" elapsed="0.000533"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.072829" elapsed="0.000921"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.074294" level="INFO">${status_codes_type} = list</msg>
<var>${status_codes_type}</var>
<arg>type($explicit_status_codes).__name__</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.073919" elapsed="0.000402"/>
</kw>
<if>
<branch type="IF" condition="&quot;${status_codes_type}&quot;!=&quot;list&quot;">
<kw name="Create List" owner="BuiltIn">
<var>${explicit_status_codes_list}</var>
<arg>${explicit_status_codes}</arg>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.074633" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:37.074389" elapsed="0.000305"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.075197" level="INFO">${explicit_status_codes_list} = []</msg>
<var>${explicit_status_codes_list}</var>
<arg>${explicit_status_codes}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:37.074890" elapsed="0.000333"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.074718" elapsed="0.000541"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.074371" elapsed="0.000910"/>
</if>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>"""${explicit_status_codes_list}""" != """${NO_STATUS_CODES}"""</arg>
<arg>Collections.List_Should_Contain_Value</arg>
<arg>${explicit_status_codes_list}</arg>
<arg>${response.status_code}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:37.075433" elapsed="0.000343"/>
</kw>
<kw name="Combine Lists" owner="Collections">
<msg time="2026-05-25T01:55:37.076248" level="INFO">${final_allowd_list} = [200, 201, 204]</msg>
<var>${final_allowd_list}</var>
<arg>${ALLOWED_STATUS_CODES}</arg>
<arg>${allowed_status_codes_list}</arg>
<doc>Combines the given ``lists`` together and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.075943" elapsed="0.000331"/>
</kw>
<kw name="List Should Contain Value" owner="Collections">
<arg>${final_allowd_list}</arg>
<arg>${response.status_code}</arg>
<doc>Fails if the ``value`` is not found from ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.076429" elapsed="0.002185"/>
</kw>
<arg>${response}</arg>
<arg>additional_allowed_status_codes=${additional_allowed_status_codes}</arg>
<arg>explicit_status_codes=${explicit_status_codes}</arg>
<doc>Log response text, check status_code is one of allowed ones. In cases where this keyword is
called in a WUKS it could end up logging tons of data and it may be desired to skip the logging by passing
log_response=False, but by default it remains True.</doc>
<status status="PASS" start="2026-05-25T01:55:37.063236" elapsed="0.015444"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-05-25T01:55:37.078857" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:37.078753" elapsed="0.000149"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.078735" elapsed="0.000189"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<msg time="2026-05-25T01:55:37.081331" level="INFO">${text_normalized} = </msg>
<var>${text_normalized}</var>
<arg>${response.text}</arg>
<arg>jmes_path=${jmes_path}</arg>
<doc>Attempt to return sorted indented JSON string.</doc>
<status status="PASS" start="2026-05-25T01:55:37.079082" elapsed="0.002276"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="PASS" start="2026-05-25T01:55:37.081405" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:55:37.081559" level="INFO">${response_text} = </msg>
<var>${response_text}</var>
<arg>uri=${uri}</arg>
<arg>data=${data}</arg>
<arg>content_type=${content_type}</arg>
<arg>accept=${accept}</arg>
<arg>session=${session}</arg>
<arg>jmes_path=${jmes_expression}</arg>
<arg>normalize_json=${normalize_json}</arg>
<arg>additional_allowed_status_codes=${additional_allowed_status_codes}</arg>
<arg>explicit_status_codes=${explicit_status_codes}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>POST data to given URI, check status code and return response text.
${content_type} and ${accept} are mandatory Python objects with headers to use.
If ${normalize_json}, normalize text before returning.</doc>
<status status="PASS" start="2026-05-25T01:55:37.015438" elapsed="0.066146"/>
</kw>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-05-25T01:55:37.081689" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:55:37.081844" level="INFO">${response_text} = </msg>
<var>${response_text}</var>
<arg>folder=${folder}</arg>
<arg>base_name=data</arg>
<arg>extension=json</arg>
<arg>accept=${ACCEPT_EMPTY}</arg>
<arg>content_type=${HEADERS_YANG_JSON}</arg>
<arg>mapping=${mapping}</arg>
<arg>session=${session}</arg>
<arg>normalize_json=True</arg>
<arg>endline=${\n}</arg>
<arg>iterations=${iterations}</arg>
<arg>iter_start=${iter_start}</arg>
<arg>additional_allowed_status_codes=${additional_allowed_status_codes}</arg>
<arg>explicit_status_codes=${explicit_status_codes}</arg>
<arg>http_timeout=${http_timeout}</arg>
<arg>iter_j_offset=${iter_j_offset}</arg>
<doc>Resolve URI and data from folder, call Post_To_Uri, return response text.</doc>
<status status="PASS" start="2026-05-25T01:55:36.628942" elapsed="0.452928"/>
</kw>
<if>
<branch type="IF" condition="${verify}">
<kw name="Verify_Response_As_Json_Templated" owner="TemplatedRequests">
<arg>response=${response_text}</arg>
<arg>folder=${folder}</arg>
<arg>base_name=response</arg>
<arg>mapping=${mapping}</arg>
<arg>iter_j_offset=${iter_j_offset}</arg>
<doc>Resolve expected JSON data, should be equal to provided ${response}.
JSON normalization is used, endlines enabled for readability.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.082230" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:37.081977" elapsed="0.000321"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.081960" elapsed="0.000362"/>
</if>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-05-25T01:55:37.082355" elapsed="0.000025"/>
</return>
<arg>folder=${VAR_DIR}/add-flow</arg>
<arg>mapping=${mapping}</arg>
<arg>session=session</arg>
<arg>iterations=${ITER}</arg>
<doc>Add arguments sensible for JSON data, return Post_Templated response text.
Optionally, verification against response.json (no iteration) is called.
Only subset of JSON data is verified and returned if JMES path is specified in
file ${folder}/jmespath.expr.
Response status code must be one of values from ${explicit_status_codes} if specified or one of set
created from all positive HTTP status codes together with ${additional_allowed_status_codes}.</doc>
<status status="PASS" start="2026-05-25T01:55:36.626457" elapsed="0.456021"/>
</kw>
<var name="${switch}">1</var>
<status status="PASS" start="2026-05-25T01:55:36.615126" elapsed="0.467398"/>
</iter>
<iter>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.083186" level="INFO">&amp;{mapping} = { NODE=openflow:2 }</msg>
<var>&amp;{mapping}</var>
<arg>NODE=openflow:${switch}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.082765" elapsed="0.000449"/>
</kw>
<kw name="Post_As_Json_Templated" owner="TemplatedRequests">
<kw name="Post_Templated" owner="TemplatedRequests">
<kw name="Resolve_Text_From_Template_Folder" owner="TemplatedRequests">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.124370" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/location.uri</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:37.123957" elapsed="0.000442"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:37.125125" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow.titanium/location.uri' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:37.124895" elapsed="0.000297">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow.titanium/location.uri' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:37.125285" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:37.124563" elapsed="0.000746"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.125850" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/location.uri</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:37.125472" elapsed="0.000405"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:37.126187" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow/location.uri"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow/location.uri&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:37.126330" level="INFO">${template} = /rests/data/opendaylight-inventory:nodes/node=$NODE/flow-node-inventory:table=0
</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:37.126037" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.126756" level="INFO">/rests/data/opendaylight-inventory:nodes/node=$NODE/flow-node-inventory:table=0
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:37.126510" elapsed="0.000290"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.127746" level="INFO">mapping: {'NODE': 'openflow:2'}</msg>
<arg>mapping: ${mapping}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:37.127494" elapsed="0.000295"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.128261" level="INFO">${encoded_mapping} = {}</msg>
<var>${encoded_mapping}</var>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.127948" elapsed="0.000339"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Convert To String" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.128988" level="INFO">${value} = openflow:2</msg>
<var>${value}</var>
<arg>${value}</arg>
<doc>Converts the given item to a Unicode string.</doc>
<status status="PASS" start="2026-05-25T01:55:37.128640" elapsed="0.000374"/>
</kw>
<kw name="Percent_Encode_String" owner="TemplatedRequests">
<kw name="Replace String Using Regexp" owner="String">
<msg time="2026-05-25T01:55:37.130010" level="INFO">${encoded} = openflow%3A2</msg>
<var>${encoded}</var>
<arg>${value}</arg>
<arg>:</arg>
<arg>%3A</arg>
<doc>Replaces ``pattern`` in the given ``string`` with ``replace_with``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.129561" elapsed="0.000476"/>
</kw>
<return>
<value>${encoded}</value>
<status status="PASS" start="2026-05-25T01:55:37.130138" elapsed="0.000032"/>
</return>
<msg time="2026-05-25T01:55:37.130294" level="INFO">${encoded_value} = openflow%3A2</msg>
<var>${encoded_value}</var>
<arg>${value}</arg>
<doc>Percent encodes reserved characters in the given string so it can be used as part of url.</doc>
<status status="PASS" start="2026-05-25T01:55:37.129224" elapsed="0.001095"/>
</kw>
<kw name="Set To Dictionary" owner="Collections">
<arg>${encoded_mapping}</arg>
<arg>${key}</arg>
<arg>${encoded_value}</arg>
<doc>Adds the given ``key_value_pairs`` and/or ``items`` to the ``dictionary``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.130470" elapsed="0.000274"/>
</kw>
<var name="${key}">NODE</var>
<var name="${value}">openflow:2</var>
<status status="PASS" start="2026-05-25T01:55:37.128509" elapsed="0.002276"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="PASS" start="2026-05-25T01:55:37.128341" elapsed="0.002478"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-05-25T01:55:37.130863" elapsed="0.000026"/>
</return>
<msg time="2026-05-25T01:55:37.131017" level="INFO">${mapping_to_use} = {'NODE': 'openflow%3A2'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-05-25T01:55:37.127170" elapsed="0.003872"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.126867" elapsed="0.004222"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.131263" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:37.131115" elapsed="0.000203"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.126848" elapsed="0.004490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.132016" level="INFO">${final_text} = /rests/data/opendaylight-inventory:nodes/node=openflow%3A2/flow-node-inventory:table=0</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.131478" elapsed="0.000566"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:37.132112" elapsed="0.000029"/>
</return>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:37.123347" elapsed="0.008890"/>
</kw>
<msg time="2026-05-25T01:55:37.132290" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>not "${iterations}"</arg>
<arg>Resolve_Text_From_Template_File</arg>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:37.111359" elapsed="0.020979"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${prolog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.prolog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.144364" elapsed="0.000028"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${epilog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.epilog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.156106" elapsed="0.000027"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${item_template}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${base_name}.item.${extension}</arg>
<arg>mapping=${mapping}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.167835" elapsed="0.000028"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.168030" elapsed="0.000022"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<var>${separator}</var>
<arg>'${extension}' != 'json'</arg>
<arg>${endline}</arg>
<arg>,${endline}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.168225" elapsed="0.000021"/>
</kw>
<for flavor="IN RANGE">
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.168584" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:37.168441" elapsed="0.000197"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:37.168427" elapsed="0.000234"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.168798" elapsed="0.000021"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.169001" elapsed="0.000020"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.169183" elapsed="0.000021"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-05-25T01:55:37.168399" elapsed="0.000838"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-05-25T01:55:37.168300" elapsed="0.000963"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<var>${final_text}</var>
<arg>SEPARATOR=</arg>
<arg>${prolog}</arg>
<arg>${endline}</arg>
<arg>@{items}</arg>
<arg>${endline}</arg>
<arg>${epilog}</arg>
<doc>Catenates the given items together and returns the resulted string.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.169409" elapsed="0.000020"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-05-25T01:55:37.169484" elapsed="0.000015"/>
</return>
<msg time="2026-05-25T01:55:37.169601" level="INFO">${uri} = /rests/data/opendaylight-inventory:nodes/node=openflow%3A2/flow-node-inventory:table=0</msg>
<var>${uri}</var>
<arg>folder=${folder}</arg>
<arg>base_name=location</arg>
<arg>extension=uri</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=True</arg>
<doc>Read a template from folder, strip endline, make changes according to mapping, return the result.
If ${iterations} value is present, put text together from "prolog", "item" and "epilog" parts,
where additional template variable ${i} goes from 1, by one 100 times.
Template variable ${j} is calculated as ${i} incremented by offset 0 ( j = i + iter_j_offset )
used to create non uniform data in order to be able to validate UPDATE operations.
POST (as opposed to PUT) needs slightly different data, ${name_prefix} may be used to distinguish.
(Actually, it is GET who formats data differently when URI is a top-level container.)</doc>
<status status="PASS" start="2026-05-25T01:55:37.107284" elapsed="0.062343"/>
</kw>
<kw name="Resolve_Text_From_Template_Folder" owner="TemplatedRequests">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>not "${iterations}"</arg>
<arg>Resolve_Text_From_Template_File</arg>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:37.180044" elapsed="0.000351"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.193079" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/post_data.prolog.json</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:37.192695" elapsed="0.000414"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:37.193877" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow.titanium/post_data.prolog.json' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:37.193671" elapsed="0.000269">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow.titanium/post_data.prolog.json' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:37.194032" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:37.193273" elapsed="0.000783"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.194617" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/post_data.prolog.json</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:37.194236" elapsed="0.000408"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:37.194935" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow/post_data.prolog.json"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow/post_data.prolog.json&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:37.195056" level="INFO">${template} = {
  "flow": [
</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:37.194804" elapsed="0.000291"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.195491" level="INFO">{
  "flow": [
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:37.195251" elapsed="0.000284"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:37.195901" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:37.195603" elapsed="0.000356"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.196436" level="INFO">${mapping_to_use} = {'NODE': 'openflow:2'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:37.196144" elapsed="0.000318"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.195982" elapsed="0.000515"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.195584" elapsed="0.000935"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.197095" level="INFO">${final_text} = {
  "flow": [</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.196662" elapsed="0.000461"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:37.197172" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:55:37.197323" level="INFO">${prolog} = {
  "flow": [</msg>
<var>${prolog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.prolog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:37.192089" elapsed="0.005258"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.210375" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/post_data.epilog.json</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:37.209985" elapsed="0.000418"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:37.211114" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow.titanium/post_data.epilog.json' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:37.210897" elapsed="0.000279">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow.titanium/post_data.epilog.json' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:37.211269" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:37.210566" elapsed="0.000727"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.211890" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/post_data.epilog.json</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:37.211456" elapsed="0.000462"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:37.212230" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow/post_data.epilog.json"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow/post_data.epilog.json&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:37.212352" level="INFO">${template} =   ]
}
</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:37.212095" elapsed="0.000282"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.212771" level="INFO">  ]
}
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:37.212531" elapsed="0.000283"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:37.213182" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:37.212882" elapsed="0.000358"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.213699" level="INFO">${mapping_to_use} = {'NODE': 'openflow:2'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:37.213407" elapsed="0.000318"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.213263" elapsed="0.000497"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.212863" elapsed="0.000919"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.214362" level="INFO">${final_text} =   ]
}</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.213925" elapsed="0.000464"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:37.214438" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:37.214587" level="INFO">${epilog} =   ]
}</msg>
<var>${epilog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.epilog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:37.209371" elapsed="0.005241"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.227328" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/data.item.json</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:37.226942" elapsed="0.000414"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:37.228089" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow.titanium/data.item.json' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:37.227862" elapsed="0.000295">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow.titanium/data.item.json' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:37.228251" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:37.227517" elapsed="0.000758"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.228817" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/data.item.json</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:37.228439" elapsed="0.000405"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:37.229155" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow/data.item.json"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow/data.item.json&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:37.229316" level="INFO">${template} =         {
          "id": "${i}",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048...</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:37.229005" elapsed="0.000338"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.229746" level="INFO">        {
          "id": "${i}",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.${i}/32"
          },
          "flow-name": "Flow-${i}",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": ${i}
                      }
                    }
                  ]
                }
              }
            ]
          }
        }
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:37.229500" elapsed="0.000295"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:37.230163" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:37.229862" elapsed="0.000360"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.230681" level="INFO">${mapping_to_use} = {'NODE': 'openflow:2'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:37.230391" elapsed="0.000316"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.230246" elapsed="0.000496"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.229843" elapsed="0.000921"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.231514" level="INFO">${final_text} =         {
          "id": "${i}",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048...</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.230908" elapsed="0.000634"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:37.231605" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:55:37.231760" level="INFO">${item_template} =         {
          "id": "${i}",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048...</msg>
<var>${item_template}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${base_name}.item.${extension}</arg>
<arg>mapping=${mapping}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:37.226404" elapsed="0.005382"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.232203" level="INFO">${items} = []</msg>
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:55:37.231946" elapsed="0.000283"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.232752" level="INFO">${separator} = ,
</msg>
<var>${separator}</var>
<arg>'${extension}' != 'json'</arg>
<arg>${endline}</arg>
<arg>,${endline}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:37.232387" elapsed="0.000391"/>
</kw>
<for flavor="IN RANGE">
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.233402" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:37.233169" elapsed="0.000291"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.233155" elapsed="0.000328"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.233969" level="INFO">${j} = 1</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.233623" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.234932" level="INFO">${item} =         {
          "id": "1",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
  ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.234165" elapsed="0.000796"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.235132" elapsed="0.000188"/>
</kw>
<var name="${iteration}">1</var>
<status status="PASS" start="2026-05-25T01:55:37.233124" elapsed="0.002234"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.235793" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.235535" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.235520" elapsed="0.000521"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.236552" level="INFO">${j} = 2</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.236205" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.237343" level="INFO">${item} =         {
          "id": "2",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
  ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.236732" elapsed="0.000639"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.237525" elapsed="0.000182"/>
</kw>
<var name="${iteration}">2</var>
<status status="PASS" start="2026-05-25T01:55:37.235491" elapsed="0.002285"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.238207" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.237956" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.237941" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.238942" level="INFO">${j} = 3</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.238593" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.239751" level="INFO">${item} =         {
          "id": "3",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
  ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.239137" elapsed="0.000642"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.239934" elapsed="0.000200"/>
</kw>
<var name="${iteration}">3</var>
<status status="PASS" start="2026-05-25T01:55:37.237912" elapsed="0.002260"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.240584" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.240351" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.240336" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.241338" level="INFO">${j} = 4</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.240970" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.242132" level="INFO">${item} =         {
          "id": "4",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
  ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.241517" elapsed="0.000644"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.242317" elapsed="0.000179"/>
</kw>
<var name="${iteration}">4</var>
<status status="PASS" start="2026-05-25T01:55:37.240307" elapsed="0.002227"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.242946" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.242712" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.242697" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.243712" level="INFO">${j} = 5</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.243350" elapsed="0.000388"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.244519" level="INFO">${item} =         {
          "id": "5",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
  ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.243892" elapsed="0.000655"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.244701" elapsed="0.000182"/>
</kw>
<var name="${iteration}">5</var>
<status status="PASS" start="2026-05-25T01:55:37.242668" elapsed="0.002253"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.245353" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.245117" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.245101" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.246107" level="INFO">${j} = 6</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.245746" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.246883" level="INFO">${item} =         {
          "id": "6",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
  ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.246291" elapsed="0.000620"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.247079" elapsed="0.000184"/>
</kw>
<var name="${iteration}">6</var>
<status status="PASS" start="2026-05-25T01:55:37.245056" elapsed="0.002244"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.247736" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.247478" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.247464" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.248487" level="INFO">${j} = 7</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.248140" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.249275" level="INFO">${item} =         {
          "id": "7",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
  ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.248667" elapsed="0.000666"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.249491" elapsed="0.000185"/>
</kw>
<var name="${iteration}">7</var>
<status status="PASS" start="2026-05-25T01:55:37.247435" elapsed="0.002279"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.250141" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.249892" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.249877" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.250875" level="INFO">${j} = 8</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.250528" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.251801" level="INFO">${item} =         {
          "id": "8",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
  ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.251056" elapsed="0.000773"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.251985" elapsed="0.000203"/>
</kw>
<var name="${iteration}">8</var>
<status status="PASS" start="2026-05-25T01:55:37.249848" elapsed="0.002378"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.252636" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.252404" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.252389" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.253391" level="INFO">${j} = 9</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.253023" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.254185" level="INFO">${item} =         {
          "id": "9",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
  ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.253573" elapsed="0.000641"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.254371" elapsed="0.000181"/>
</kw>
<var name="${iteration}">9</var>
<status status="PASS" start="2026-05-25T01:55:37.252360" elapsed="0.002230"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.254999" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.254767" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.254753" elapsed="0.000506"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.255761" level="INFO">${j} = 10</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.255399" elapsed="0.000388"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.256559" level="INFO">${item} =         {
          "id": "10",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.255942" elapsed="0.000645"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.256742" elapsed="0.000179"/>
</kw>
<var name="${iteration}">10</var>
<status status="PASS" start="2026-05-25T01:55:37.254724" elapsed="0.002235"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.257387" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.257153" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.257138" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.258140" level="INFO">${j} = 11</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.257776" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.258916" level="INFO">${item} =         {
          "id": "11",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.258321" elapsed="0.000623"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.259113" elapsed="0.000183"/>
</kw>
<var name="${iteration}">11</var>
<status status="PASS" start="2026-05-25T01:55:37.257108" elapsed="0.002226"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.259770" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.259533" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.259519" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.260528" level="INFO">${j} = 12</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.260180" elapsed="0.000406"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.261371" level="INFO">${item} =         {
          "id": "12",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.260751" elapsed="0.000649"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.261555" elapsed="0.000181"/>
</kw>
<var name="${iteration}">12</var>
<status status="PASS" start="2026-05-25T01:55:37.259487" elapsed="0.002286"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.262198" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.261950" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.261935" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.262931" level="INFO">${j} = 13</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.262584" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.263733" level="INFO">${item} =         {
          "id": "13",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.263126" elapsed="0.000636"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.263916" elapsed="0.000198"/>
</kw>
<var name="${iteration}">13</var>
<status status="PASS" start="2026-05-25T01:55:37.261907" elapsed="0.002245"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.264563" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.264330" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.264315" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.265315" level="INFO">${j} = 14</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.264949" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.266104" level="INFO">${item} =         {
          "id": "14",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.265495" elapsed="0.000638"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.266287" elapsed="0.000180"/>
</kw>
<var name="${iteration}">14</var>
<status status="PASS" start="2026-05-25T01:55:37.264286" elapsed="0.002219"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.266915" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.266683" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.266668" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.267797" level="INFO">${j} = 15</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.267317" elapsed="0.000506"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.268598" level="INFO">${item} =         {
          "id": "15",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.267978" elapsed="0.000648"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.268782" elapsed="0.000180"/>
</kw>
<var name="${iteration}">15</var>
<status status="PASS" start="2026-05-25T01:55:37.266639" elapsed="0.002360"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.269433" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.269199" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.269184" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.270185" level="INFO">${j} = 16</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.269819" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.270964" level="INFO">${item} =         {
          "id": "16",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.270365" elapsed="0.000627"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.271163" elapsed="0.000183"/>
</kw>
<var name="${iteration}">16</var>
<status status="PASS" start="2026-05-25T01:55:37.269154" elapsed="0.002230"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.271871" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.271592" elapsed="0.000522"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.271575" elapsed="0.000564"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.272633" level="INFO">${j} = 17</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.272284" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.273427" level="INFO">${item} =         {
          "id": "17",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.272813" elapsed="0.000642"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.273610" elapsed="0.000181"/>
</kw>
<var name="${iteration}">17</var>
<status status="PASS" start="2026-05-25T01:55:37.271541" elapsed="0.002288"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.274258" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.274008" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.273993" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.274991" level="INFO">${j} = 18</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.274644" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.275800" level="INFO">${item} =         {
          "id": "18",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.275186" elapsed="0.000642"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.275983" elapsed="0.000198"/>
</kw>
<var name="${iteration}">18</var>
<status status="PASS" start="2026-05-25T01:55:37.273964" elapsed="0.002255"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.276629" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.276397" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.276382" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.277384" level="INFO">${j} = 19</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.277018" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.278174" level="INFO">${item} =         {
          "id": "19",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.277563" elapsed="0.000639"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.278356" elapsed="0.000179"/>
</kw>
<var name="${iteration}">19</var>
<status status="PASS" start="2026-05-25T01:55:37.276353" elapsed="0.002218"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.278983" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.278749" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.278732" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.279754" level="INFO">${j} = 20</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.279401" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.280548" level="INFO">${item} =         {
          "id": "20",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.279934" elapsed="0.000641"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.280729" elapsed="0.000180"/>
</kw>
<var name="${iteration}">20</var>
<status status="PASS" start="2026-05-25T01:55:37.278704" elapsed="0.002242"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.281375" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.281140" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.281125" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.282121" level="INFO">${j} = 21</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.281760" elapsed="0.000388"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.282909" level="INFO">${item} =         {
          "id": "21",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.282303" elapsed="0.000634"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.283139" elapsed="0.000185"/>
</kw>
<var name="${iteration}">21</var>
<status status="PASS" start="2026-05-25T01:55:37.281095" elapsed="0.002287"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.283797" elapsed="0.000316"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.283561" elapsed="0.000593"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.283546" elapsed="0.000632"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.284670" level="INFO">${j} = 22</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.284322" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.285466" level="INFO">${item} =         {
          "id": "22",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.284852" elapsed="0.000642"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.285651" elapsed="0.000186"/>
</kw>
<var name="${iteration}">22</var>
<status status="PASS" start="2026-05-25T01:55:37.283517" elapsed="0.002357"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.286304" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.286052" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.286037" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.287043" level="INFO">${j} = 23</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.286691" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.287849" level="INFO">${item} =         {
          "id": "23",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.287240" elapsed="0.000637"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.288032" elapsed="0.000199"/>
</kw>
<var name="${iteration}">23</var>
<status status="PASS" start="2026-05-25T01:55:37.286008" elapsed="0.002261"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.288679" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.288445" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.288430" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.289437" level="INFO">${j} = 24</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.289080" elapsed="0.000383"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.290235" level="INFO">${item} =         {
          "id": "24",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.289617" elapsed="0.000646"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.290418" elapsed="0.000181"/>
</kw>
<var name="${iteration}">24</var>
<status status="PASS" start="2026-05-25T01:55:37.288401" elapsed="0.002235"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.291046" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.290812" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.290798" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.291888" level="INFO">${j} = 25</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.291468" elapsed="0.000451"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.292769" level="INFO">${item} =         {
          "id": "25",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.292098" elapsed="0.000700"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.292973" elapsed="0.000208"/>
</kw>
<var name="${iteration}">25</var>
<status status="PASS" start="2026-05-25T01:55:37.290769" elapsed="0.002450"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.293630" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.293395" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.293380" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.294382" level="INFO">${j} = 26</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.294016" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.295223" level="INFO">${item} =         {
          "id": "26",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.294600" elapsed="0.000652"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.295439" elapsed="0.000186"/>
</kw>
<var name="${iteration}">26</var>
<status status="PASS" start="2026-05-25T01:55:37.293351" elapsed="0.002312"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.296098" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.295846" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.295831" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.296836" level="INFO">${j} = 27</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.296489" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.297630" level="INFO">${item} =         {
          "id": "27",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.297017" elapsed="0.000641"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.297813" elapsed="0.000181"/>
</kw>
<var name="${iteration}">27</var>
<status status="PASS" start="2026-05-25T01:55:37.295802" elapsed="0.002229"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.298458" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.298225" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.298210" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.299216" level="INFO">${j} = 28</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.298851" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.300006" level="INFO">${item} =         {
          "id": "28",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.299410" elapsed="0.000624"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.300207" elapsed="0.000181"/>
</kw>
<var name="${iteration}">28</var>
<status status="PASS" start="2026-05-25T01:55:37.298180" elapsed="0.002245"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.301562" elapsed="0.000193"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.300603" elapsed="0.001192"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.300588" elapsed="0.001231"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.302340" level="INFO">${j} = 29</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.301961" elapsed="0.000406"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.303148" level="INFO">${item} =         {
          "id": "29",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.302524" elapsed="0.000652"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.303343" elapsed="0.000187"/>
</kw>
<var name="${iteration}">29</var>
<status status="PASS" start="2026-05-25T01:55:37.300559" elapsed="0.003009"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.303983" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.303748" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.303732" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.304743" level="INFO">${j} = 30</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.304392" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.305536" level="INFO">${item} =         {
          "id": "30",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.304924" elapsed="0.000641"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.305718" elapsed="0.000181"/>
</kw>
<var name="${iteration}">30</var>
<status status="PASS" start="2026-05-25T01:55:37.303703" elapsed="0.002234"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.306366" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.306131" elapsed="0.000488"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.306116" elapsed="0.000530"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.307157" level="INFO">${j} = 31</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.306790" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.307962" level="INFO">${item} =         {
          "id": "31",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.307361" elapsed="0.000629"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.308163" elapsed="0.000184"/>
</kw>
<var name="${iteration}">31</var>
<status status="PASS" start="2026-05-25T01:55:37.306085" elapsed="0.002300"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.308800" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.308562" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.308547" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.309551" level="INFO">${j} = 32</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.309202" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.310344" level="INFO">${item} =         {
          "id": "32",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.309732" elapsed="0.000641"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.310528" elapsed="0.000181"/>
</kw>
<var name="${iteration}">32</var>
<status status="PASS" start="2026-05-25T01:55:37.308518" elapsed="0.002228"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.311175" elapsed="0.000218"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.310924" elapsed="0.000509"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.310908" elapsed="0.000549"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.311951" level="INFO">${j} = 33</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.311600" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.312755" level="INFO">${item} =         {
          "id": "33",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.312156" elapsed="0.000627"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.312940" elapsed="0.000207"/>
</kw>
<var name="${iteration}">33</var>
<status status="PASS" start="2026-05-25T01:55:37.310879" elapsed="0.002307"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.313600" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.313366" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.313351" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.314352" level="INFO">${j} = 34</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.313985" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.315148" level="INFO">${item} =         {
          "id": "34",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.314532" elapsed="0.000644"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.315346" elapsed="0.000183"/>
</kw>
<var name="${iteration}">34</var>
<status status="PASS" start="2026-05-25T01:55:37.313321" elapsed="0.002246"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.315986" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.315750" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.315735" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.316748" level="INFO">${j} = 35</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.316396" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.317556" level="INFO">${item} =         {
          "id": "35",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.316933" elapsed="0.000651"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.317747" elapsed="0.000183"/>
</kw>
<var name="${iteration}">35</var>
<status status="PASS" start="2026-05-25T01:55:37.315706" elapsed="0.002295"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.318585" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.318203" elapsed="0.000610"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.318188" elapsed="0.000651"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.319389" level="INFO">${j} = 36</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.318983" elapsed="0.000433"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.320204" level="INFO">${item} =         {
          "id": "36",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.319580" elapsed="0.000653"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.320392" elapsed="0.000183"/>
</kw>
<var name="${iteration}">36</var>
<status status="PASS" start="2026-05-25T01:55:37.318158" elapsed="0.002455"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.321032" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.320796" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.320781" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.321790" level="INFO">${j} = 37</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.321435" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.322585" level="INFO">${item} =         {
          "id": "37",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.321970" elapsed="0.000643"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.322766" elapsed="0.000182"/>
</kw>
<var name="${iteration}">37</var>
<status status="PASS" start="2026-05-25T01:55:37.320751" elapsed="0.002233"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.323431" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.323181" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.323167" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.324192" level="INFO">${j} = 38</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.323821" elapsed="0.000398"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.324971" level="INFO">${item} =         {
          "id": "38",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.324375" elapsed="0.000624"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.325170" elapsed="0.000183"/>
</kw>
<var name="${iteration}">38</var>
<status status="PASS" start="2026-05-25T01:55:37.323137" elapsed="0.002253"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.325803" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.325570" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.325555" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.326556" level="INFO">${j} = 39</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.326207" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.327367" level="INFO">${item} =         {
          "id": "39",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.326736" elapsed="0.000660"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.327552" elapsed="0.000186"/>
</kw>
<var name="${iteration}">39</var>
<status status="PASS" start="2026-05-25T01:55:37.325526" elapsed="0.002248"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.328203" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.327954" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.327939" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.328941" level="INFO">${j} = 40</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.328590" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.329731" level="INFO">${item} =         {
          "id": "40",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.329135" elapsed="0.000656"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.329949" elapsed="0.000199"/>
</kw>
<var name="${iteration}">40</var>
<status status="PASS" start="2026-05-25T01:55:37.327910" elapsed="0.002276"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.330600" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.330366" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.330351" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.331382" level="INFO">${j} = 41</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.330992" elapsed="0.000416"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.332180" level="INFO">${item} =         {
          "id": "41",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.331564" elapsed="0.000644"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.332363" elapsed="0.000183"/>
</kw>
<var name="${iteration}">41</var>
<status status="PASS" start="2026-05-25T01:55:37.330322" elapsed="0.002262"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.332996" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.332763" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.332749" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.333753" level="INFO">${j} = 42</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.333401" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.334543" level="INFO">${item} =         {
          "id": "42",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.333932" elapsed="0.000638"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.334723" elapsed="0.000181"/>
</kw>
<var name="${iteration}">42</var>
<status status="PASS" start="2026-05-25T01:55:37.332720" elapsed="0.002221"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.335514" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.335266" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.335127" elapsed="0.000636"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.336276" level="INFO">${j} = 43</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.335906" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.337078" level="INFO">${item} =         {
          "id": "43",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.336459" elapsed="0.000650"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.337266" elapsed="0.000185"/>
</kw>
<var name="${iteration}">43</var>
<status status="PASS" start="2026-05-25T01:55:37.335096" elapsed="0.002392"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.337903" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.337669" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.337654" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.338654" level="INFO">${j} = 44</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.338306" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.339459" level="INFO">${item} =         {
          "id": "44",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.338834" elapsed="0.000653"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.339641" elapsed="0.000187"/>
</kw>
<var name="${iteration}">44</var>
<status status="PASS" start="2026-05-25T01:55:37.337625" elapsed="0.002240"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.340297" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.340045" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.340031" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.341028" level="INFO">${j} = 45</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.340683" elapsed="0.000418"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.341864" level="INFO">${item} =         {
          "id": "45",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.341262" elapsed="0.000631"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.342049" elapsed="0.000200"/>
</kw>
<var name="${iteration}">45</var>
<status status="PASS" start="2026-05-25T01:55:37.340002" elapsed="0.002285"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.342703" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.342466" elapsed="0.000463"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.342451" elapsed="0.000503"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.343487" level="INFO">${j} = 46</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.343110" elapsed="0.000403"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.344285" level="INFO">${item} =         {
          "id": "46",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.343669" elapsed="0.000645"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.344470" elapsed="0.000183"/>
</kw>
<var name="${iteration}">46</var>
<status status="PASS" start="2026-05-25T01:55:37.342422" elapsed="0.002268"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.345120" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.344870" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.344855" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.345860" level="INFO">${j} = 47</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.345509" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.346657" level="INFO">${item} =         {
          "id": "47",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.346039" elapsed="0.000647"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.346841" elapsed="0.000182"/>
</kw>
<var name="${iteration}">47</var>
<status status="PASS" start="2026-05-25T01:55:37.344826" elapsed="0.002234"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.347503" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.347269" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.347253" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.348252" level="INFO">${j} = 48</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.347888" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.349026" level="INFO">${item} =         {
          "id": "48",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.348433" elapsed="0.000621"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.349226" elapsed="0.000181"/>
</kw>
<var name="${iteration}">48</var>
<status status="PASS" start="2026-05-25T01:55:37.347223" elapsed="0.002222"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.349860" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.349626" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.349611" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.350612" level="INFO">${j} = 49</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.350265" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.351419" level="INFO">${item} =         {
          "id": "49",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.350791" elapsed="0.000656"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.351602" elapsed="0.000181"/>
</kw>
<var name="${iteration}">49</var>
<status status="PASS" start="2026-05-25T01:55:37.349582" elapsed="0.002238"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.352406" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.352128" elapsed="0.000504"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.351984" elapsed="0.000673"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.353166" level="INFO">${j} = 50</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.352800" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.353942" level="INFO">${item} =         {
          "id": "50",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.353347" elapsed="0.000623"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.354144" elapsed="0.000184"/>
</kw>
<var name="${iteration}">50</var>
<status status="PASS" start="2026-05-25T01:55:37.351955" elapsed="0.002410"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.354776" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.354543" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.354529" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.355554" level="INFO">${j} = 51</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.355200" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.356360" level="INFO">${item} =         {
          "id": "51",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.355739" elapsed="0.000649"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.356543" elapsed="0.000183"/>
</kw>
<var name="${iteration}">51</var>
<status status="PASS" start="2026-05-25T01:55:37.354500" elapsed="0.002263"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.357193" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.356943" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.356928" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.357928" level="INFO">${j} = 52</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.357580" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.358731" level="INFO">${item} =         {
          "id": "52",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.358123" elapsed="0.000636"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.358914" elapsed="0.000208"/>
</kw>
<var name="${iteration}">52</var>
<status status="PASS" start="2026-05-25T01:55:37.356898" elapsed="0.002263"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.359577" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.359344" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.359329" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.360333" level="INFO">${j} = 53</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.359965" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.361132" level="INFO">${item} =         {
          "id": "53",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.360515" elapsed="0.000646"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.361317" elapsed="0.000182"/>
</kw>
<var name="${iteration}">53</var>
<status status="PASS" start="2026-05-25T01:55:37.359300" elapsed="0.002238"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.361958" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.361723" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.361704" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.362711" level="INFO">${j} = 54</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.362364" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.363520" level="INFO">${item} =         {
          "id": "54",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.362891" elapsed="0.000657"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.363754" elapsed="0.000185"/>
</kw>
<var name="${iteration}">54</var>
<status status="PASS" start="2026-05-25T01:55:37.361674" elapsed="0.002303"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.364410" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.364172" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.364156" elapsed="0.000502"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.365167" level="INFO">${j} = 55</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.364799" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.365944" level="INFO">${item} =         {
          "id": "55",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.365349" elapsed="0.000623"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.366144" elapsed="0.000185"/>
</kw>
<var name="${iteration}">55</var>
<status status="PASS" start="2026-05-25T01:55:37.364127" elapsed="0.002241"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.366781" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.366546" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.366531" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.367564" level="INFO">${j} = 56</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.367214" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.368361" level="INFO">${item} =         {
          "id": "56",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.367745" elapsed="0.000644"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.368544" elapsed="0.000186"/>
</kw>
<var name="${iteration}">56</var>
<status status="PASS" start="2026-05-25T01:55:37.366501" elapsed="0.002266"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.369317" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.369055" elapsed="0.000487"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.368929" elapsed="0.000638"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.370080" level="INFO">${j} = 57</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.369709" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.370865" level="INFO">${item} =         {
          "id": "57",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.370266" elapsed="0.000627"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.371083" elapsed="0.000187"/>
</kw>
<var name="${iteration}">57</var>
<status status="PASS" start="2026-05-25T01:55:37.368900" elapsed="0.002408"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.371730" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.371488" elapsed="0.000463"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.371473" elapsed="0.000502"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.372484" level="INFO">${j} = 58</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.372133" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.373280" level="INFO">${item} =         {
          "id": "58",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.372666" elapsed="0.000642"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.373463" elapsed="0.000180"/>
</kw>
<var name="${iteration}">58</var>
<status status="PASS" start="2026-05-25T01:55:37.371444" elapsed="0.002236"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.374108" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.373859" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.373845" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.374841" level="INFO">${j} = 59</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.374495" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.375702" level="INFO">${item} =         {
          "id": "59",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.375093" elapsed="0.000638"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.375893" elapsed="0.000200"/>
</kw>
<var name="${iteration}">59</var>
<status status="PASS" start="2026-05-25T01:55:37.373814" elapsed="0.002318"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.376547" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.376311" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.376297" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.377300" level="INFO">${j} = 60</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.376934" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.378095" level="INFO">${item} =         {
          "id": "60",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.377480" elapsed="0.000643"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.378278" elapsed="0.000181"/>
</kw>
<var name="${iteration}">60</var>
<status status="PASS" start="2026-05-25T01:55:37.376268" elapsed="0.002228"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.378911" elapsed="0.000230"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.378673" elapsed="0.000506"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.378659" elapsed="0.000545"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.379692" level="INFO">${j} = 61</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.379345" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.380486" level="INFO">${item} =         {
          "id": "61",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.379871" elapsed="0.000643"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.380667" elapsed="0.000180"/>
</kw>
<var name="${iteration}">61</var>
<status status="PASS" start="2026-05-25T01:55:37.378630" elapsed="0.002253"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.381313" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.381077" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.381047" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.382044" level="INFO">${j} = 62</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.381698" elapsed="0.000386"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.382850" level="INFO">${item} =         {
          "id": "62",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.382241" elapsed="0.000637"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.383045" elapsed="0.000209"/>
</kw>
<var name="${iteration}">62</var>
<status status="PASS" start="2026-05-25T01:55:37.381017" elapsed="0.002274"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.383705" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.383469" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.383454" elapsed="0.000501"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.384464" level="INFO">${j} = 63</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.384113" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.385256" level="INFO">${item} =         {
          "id": "63",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.384643" elapsed="0.000641"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.385438" elapsed="0.000180"/>
</kw>
<var name="${iteration}">63</var>
<status status="PASS" start="2026-05-25T01:55:37.383426" elapsed="0.002229"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.386201" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.385942" elapsed="0.000518"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.385817" elapsed="0.000670"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.387003" level="INFO">${j} = 64</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.386633" elapsed="0.000398"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.387844" level="INFO">${item} =         {
          "id": "64",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.387243" elapsed="0.000630"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.388029" elapsed="0.000200"/>
</kw>
<var name="${iteration}">64</var>
<status status="PASS" start="2026-05-25T01:55:37.385789" elapsed="0.002478"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.388681" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.388447" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.388432" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.389434" level="INFO">${j} = 65</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.389082" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.390231" level="INFO">${item} =         {
          "id": "65",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.389615" elapsed="0.000644"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.390414" elapsed="0.000182"/>
</kw>
<var name="${iteration}">65</var>
<status status="PASS" start="2026-05-25T01:55:37.388403" elapsed="0.002230"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.391101" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.390816" elapsed="0.000509"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.390801" elapsed="0.000548"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.391839" level="INFO">${j} = 66</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.391490" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.392635" level="INFO">${item} =         {
          "id": "66",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.392020" elapsed="0.000644"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.392818" elapsed="0.000182"/>
</kw>
<var name="${iteration}">66</var>
<status status="PASS" start="2026-05-25T01:55:37.390772" elapsed="0.002265"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.393466" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.393232" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.393218" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.394225" level="INFO">${j} = 67</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.393860" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.395014" level="INFO">${item} =         {
          "id": "67",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.394405" elapsed="0.000638"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.395216" elapsed="0.000195"/>
</kw>
<var name="${iteration}">67</var>
<status status="PASS" start="2026-05-25T01:55:37.393188" elapsed="0.002260"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.395864" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.395628" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.395611" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.396618" level="INFO">${j} = 68</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.396270" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.397410" level="INFO">${item} =         {
          "id": "68",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.396799" elapsed="0.000639"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.397591" elapsed="0.000182"/>
</kw>
<var name="${iteration}">68</var>
<status status="PASS" start="2026-05-25T01:55:37.395582" elapsed="0.002260"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.398280" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.398026" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.398011" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.399029" level="INFO">${j} = 69</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.398668" elapsed="0.000388"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.399838" level="INFO">${item} =         {
          "id": "69",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.399232" elapsed="0.000634"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.400021" elapsed="0.000198"/>
</kw>
<var name="${iteration}">69</var>
<status status="PASS" start="2026-05-25T01:55:37.397981" elapsed="0.002275"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.400670" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.400436" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.400422" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.401422" level="INFO">${j} = 70</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.401056" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.402216" level="INFO">${item} =         {
          "id": "70",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.401602" elapsed="0.000643"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.402400" elapsed="0.000180"/>
</kw>
<var name="${iteration}">70</var>
<status status="PASS" start="2026-05-25T01:55:37.400393" elapsed="0.002224"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.403197" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.402933" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.402781" elapsed="0.000666"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.403940" level="INFO">${j} = 71</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.403589" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.404747" level="INFO">${item} =         {
          "id": "71",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.404138" elapsed="0.000637"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.404931" elapsed="0.000200"/>
</kw>
<var name="${iteration}">71</var>
<status status="PASS" start="2026-05-25T01:55:37.402752" elapsed="0.002417"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.405584" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.405350" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.405336" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.406340" level="INFO">${j} = 72</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.405971" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.407157" level="INFO">${item} =         {
          "id": "72",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.406521" elapsed="0.000665"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.407341" elapsed="0.000187"/>
</kw>
<var name="${iteration}">72</var>
<status status="PASS" start="2026-05-25T01:55:37.405306" elapsed="0.002259"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.407980" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.407745" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.407730" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.408734" level="INFO">${j} = 73</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.408387" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.409535" level="INFO">${item} =         {
          "id": "73",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.408913" elapsed="0.000682"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.409760" elapsed="0.000183"/>
</kw>
<var name="${iteration}">73</var>
<status status="PASS" start="2026-05-25T01:55:37.407700" elapsed="0.002281"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.410412" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.410177" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.410163" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.411183" level="INFO">${j} = 74</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.410800" elapsed="0.000410"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.411961" level="INFO">${item} =         {
          "id": "74",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.411366" elapsed="0.000623"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.412160" elapsed="0.000184"/>
</kw>
<var name="${iteration}">74</var>
<status status="PASS" start="2026-05-25T01:55:37.410132" elapsed="0.002249"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.412798" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.412559" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.412545" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.413550" level="INFO">${j} = 75</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.413202" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.414342" level="INFO">${item} =         {
          "id": "75",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.413731" elapsed="0.000639"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.414524" elapsed="0.000180"/>
</kw>
<var name="${iteration}">75</var>
<status status="PASS" start="2026-05-25T01:55:37.412516" elapsed="0.002225"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.415209" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.414953" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.414938" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.415944" level="INFO">${j} = 76</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.415596" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.416743" level="INFO">${item} =         {
          "id": "76",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.416139" elapsed="0.000633"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.416927" elapsed="0.000200"/>
</kw>
<var name="${iteration}">76</var>
<status status="PASS" start="2026-05-25T01:55:37.414904" elapsed="0.002262"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.417581" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.417346" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.417330" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.418334" level="INFO">${j} = 77</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.417968" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.419152" level="INFO">${item} =         {
          "id": "77",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.418515" elapsed="0.000666"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.419335" elapsed="0.000181"/>
</kw>
<var name="${iteration}">77</var>
<status status="PASS" start="2026-05-25T01:55:37.417301" elapsed="0.002253"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.420127" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.419870" elapsed="0.000482"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.419745" elapsed="0.000632"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.420867" level="INFO">${j} = 78</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.420519" elapsed="0.000406"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.421701" level="INFO">${item} =         {
          "id": "78",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.421098" elapsed="0.000632"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.421890" elapsed="0.000196"/>
</kw>
<var name="${iteration}">78</var>
<status status="PASS" start="2026-05-25T01:55:37.419715" elapsed="0.002410"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.422539" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.422305" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.422290" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.423314" level="INFO">${j} = 79</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.422942" elapsed="0.000398"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.424108" level="INFO">${item} =         {
          "id": "79",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.423496" elapsed="0.000641"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.424292" elapsed="0.000182"/>
</kw>
<var name="${iteration}">79</var>
<status status="PASS" start="2026-05-25T01:55:37.422261" elapsed="0.002250"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.424928" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.424690" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.424676" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.425678" level="INFO">${j} = 80</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.425331" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.426468" level="INFO">${item} =         {
          "id": "80",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.425856" elapsed="0.000640"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.426651" elapsed="0.000205"/>
</kw>
<var name="${iteration}">80</var>
<status status="PASS" start="2026-05-25T01:55:37.424646" elapsed="0.002248"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.427327" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.427090" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.427057" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.428062" level="INFO">${j} = 81</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.427715" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.428863" level="INFO">${item} =         {
          "id": "81",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.428258" elapsed="0.000633"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.429045" elapsed="0.000197"/>
</kw>
<var name="${iteration}">81</var>
<status status="PASS" start="2026-05-25T01:55:37.427028" elapsed="0.002252"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.429693" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.429458" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.429442" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.430458" level="INFO">${j} = 82</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.430108" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.431267" level="INFO">${item} =         {
          "id": "82",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.430637" elapsed="0.000659"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.431449" elapsed="0.000181"/>
</kw>
<var name="${iteration}">82</var>
<status status="PASS" start="2026-05-25T01:55:37.429414" elapsed="0.002253"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.432140" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.431851" elapsed="0.000514"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.431836" elapsed="0.000554"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.432882" level="INFO">${j} = 83</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.432533" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.433687" level="INFO">${item} =         {
          "id": "83",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.433063" elapsed="0.000652"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.433869" elapsed="0.000182"/>
</kw>
<var name="${iteration}">83</var>
<status status="PASS" start="2026-05-25T01:55:37.431807" elapsed="0.002298"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.434519" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.434285" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.434270" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.435294" level="INFO">${j} = 84</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.434927" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.436084" level="INFO">${item} =         {
          "id": "84",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.435474" elapsed="0.000639"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.436269" elapsed="0.000181"/>
</kw>
<var name="${iteration}">84</var>
<status status="PASS" start="2026-05-25T01:55:37.434241" elapsed="0.002246"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.437012" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.436773" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.436651" elapsed="0.000624"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.437772" level="INFO">${j} = 85</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.437419" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.438567" level="INFO">${item} =         {
          "id": "85",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.437953" elapsed="0.000643"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.438773" elapsed="0.000192"/>
</kw>
<var name="${iteration}">85</var>
<status status="PASS" start="2026-05-25T01:55:37.436622" elapsed="0.002381"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.439440" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.439203" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.439188" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.440192" level="INFO">${j} = 86</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.439825" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.440968" level="INFO">${item} =         {
          "id": "86",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.440374" elapsed="0.000622"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.441167" elapsed="0.000181"/>
</kw>
<var name="${iteration}">86</var>
<status status="PASS" start="2026-05-25T01:55:37.439158" elapsed="0.002228"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.441798" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.441564" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.441549" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.442546" level="INFO">${j} = 87</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.442197" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.443356" level="INFO">${item} =         {
          "id": "87",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.442736" elapsed="0.000648"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.443573" elapsed="0.000188"/>
</kw>
<var name="${iteration}">87</var>
<status status="PASS" start="2026-05-25T01:55:37.441520" elapsed="0.002278"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.444234" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.443976" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.443961" elapsed="0.000520"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.444967" level="INFO">${j} = 88</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.444621" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.445757" level="INFO">${item} =         {
          "id": "88",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.445162" elapsed="0.000624"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.445940" elapsed="0.000197"/>
</kw>
<var name="${iteration}">88</var>
<status status="PASS" start="2026-05-25T01:55:37.443932" elapsed="0.002243"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.446587" elapsed="0.000196"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.446354" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.446339" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.447358" level="INFO">${j} = 89</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.446990" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.448147" level="INFO">${item} =         {
          "id": "89",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.447537" elapsed="0.000638"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.448329" elapsed="0.000180"/>
</kw>
<var name="${iteration}">89</var>
<status status="PASS" start="2026-05-25T01:55:37.446310" elapsed="0.002236"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.448955" elapsed="0.000197"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.448723" elapsed="0.000467"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.448708" elapsed="0.000506"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.449700" level="INFO">${j} = 90</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.449356" elapsed="0.000370"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.450490" level="INFO">${item} =         {
          "id": "90",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.449879" elapsed="0.000640"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.450674" elapsed="0.000207"/>
</kw>
<var name="${iteration}">90</var>
<status status="PASS" start="2026-05-25T01:55:37.448678" elapsed="0.002240"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.451348" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.451113" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.451097" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.452093" level="INFO">${j} = 91</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.451732" elapsed="0.000388"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.452871" level="INFO">${item} =         {
          "id": "91",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.452274" elapsed="0.000625"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.453052" elapsed="0.000198"/>
</kw>
<var name="${iteration}">91</var>
<status status="PASS" start="2026-05-25T01:55:37.451050" elapsed="0.002238"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.453820" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.453575" elapsed="0.000467"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.453451" elapsed="0.000629"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.454572" level="INFO">${j} = 92</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.454224" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.455425" level="INFO">${item} =         {
          "id": "92",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.454805" elapsed="0.000648"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.455608" elapsed="0.000182"/>
</kw>
<var name="${iteration}">92</var>
<status status="PASS" start="2026-05-25T01:55:37.453421" elapsed="0.002406"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.456253" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.456003" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.455988" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.456985" level="INFO">${j} = 93</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.456638" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.457782" level="INFO">${item} =         {
          "id": "93",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.457183" elapsed="0.000628"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.457966" elapsed="0.000199"/>
</kw>
<var name="${iteration}">93</var>
<status status="PASS" start="2026-05-25T01:55:37.455959" elapsed="0.002244"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.458611" elapsed="0.000206"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.458378" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.458363" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.459385" level="INFO">${j} = 94</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.459020" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.460175" level="INFO">${item} =         {
          "id": "94",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.459564" elapsed="0.000640"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.460358" elapsed="0.000180"/>
</kw>
<var name="${iteration}">94</var>
<status status="PASS" start="2026-05-25T01:55:37.458334" elapsed="0.002240"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.460986" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.460752" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.460737" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.461738" level="INFO">${j} = 95</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.461390" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.462529" level="INFO">${item} =         {
          "id": "95",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.461918" elapsed="0.000640"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.462736" elapsed="0.000188"/>
</kw>
<var name="${iteration}">95</var>
<status status="PASS" start="2026-05-25T01:55:37.460707" elapsed="0.002255"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.463394" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.463159" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.463144" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.464144" level="INFO">${j} = 96</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.463780" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.464917" level="INFO">${item} =         {
          "id": "96",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.464325" elapsed="0.000620"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.465114" elapsed="0.000182"/>
</kw>
<var name="${iteration}">96</var>
<status status="PASS" start="2026-05-25T01:55:37.463113" elapsed="0.002221"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.465750" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.465511" elapsed="0.000488"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.465496" elapsed="0.000530"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.466540" level="INFO">${j} = 97</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.466192" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.467351" level="INFO">${item} =         {
          "id": "97",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.466735" elapsed="0.000644"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.467534" elapsed="0.000181"/>
</kw>
<var name="${iteration}">97</var>
<status status="PASS" start="2026-05-25T01:55:37.465467" elapsed="0.002286"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.468180" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.467930" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.467915" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.468917" level="INFO">${j} = 98</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.468569" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.469708" level="INFO">${item} =         {
          "id": "98",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.469114" elapsed="0.000622"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.469892" elapsed="0.000194"/>
</kw>
<var name="${iteration}">98</var>
<status status="PASS" start="2026-05-25T01:55:37.467886" elapsed="0.002239"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.470660" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.470409" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.470288" elapsed="0.000625"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.471423" level="INFO">${j} = 99</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.471055" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.472216" level="INFO">${item} =         {
          "id": "99",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.471606" elapsed="0.000638"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.472400" elapsed="0.000182"/>
</kw>
<var name="${iteration}">99</var>
<status status="PASS" start="2026-05-25T01:55:37.470259" elapsed="0.002361"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.473034" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.472801" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.472786" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.473789" level="INFO">${j} = 100</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.473437" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.474583" level="INFO">${item} =         {
          "id": "100",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.473968" elapsed="0.000671"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.474795" elapsed="0.000182"/>
</kw>
<var name="${iteration}">100</var>
<status status="PASS" start="2026-05-25T01:55:37.472757" elapsed="0.002257"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="PASS" start="2026-05-25T01:55:37.232834" elapsed="0.242211"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.476359" level="INFO">${final_text} = {
  "flow": [
        {
          "id": "1",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "...</msg>
<var>${final_text}</var>
<arg>SEPARATOR=</arg>
<arg>${prolog}</arg>
<arg>${endline}</arg>
<arg>@{items}</arg>
<arg>${endline}</arg>
<arg>${epilog}</arg>
<doc>Catenates the given items together and returns the resulted string.</doc>
<status status="PASS" start="2026-05-25T01:55:37.475221" elapsed="0.001166"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:37.476449" elapsed="0.000035"/>
</return>
<msg time="2026-05-25T01:55:37.476611" level="INFO">${data} = {
  "flow": [
        {
          "id": "1",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "...</msg>
<var>${data}</var>
<arg>folder=${folder}</arg>
<arg>name_prefix=post_</arg>
<arg>base_name=${base_name}</arg>
<arg>extension=${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>endline=${endline}</arg>
<arg>iterations=${iterations}</arg>
<arg>iter_start=${iter_start}</arg>
<arg>iter_j_offset=${iter_j_offset}</arg>
<doc>Read a template from folder, strip endline, make changes according to mapping, return the result.
If ${iterations} value is present, put text together from "prolog", "item" and "epilog" parts,
where additional template variable ${i} goes from 1, by one 100 times.
Template variable ${j} is calculated as ${i} incremented by offset 0 ( j = i + iter_j_offset )
used to create non uniform data in order to be able to validate UPDATE operations.
POST (as opposed to PUT) needs slightly different data, ${name_prefix} may be used to distinguish.
(Actually, it is GET who formats data differently when URI is a top-level container.)</doc>
<status status="PASS" start="2026-05-25T01:55:37.179188" elapsed="0.297450"/>
</kw>
<kw name="Resolve_Jmes_Path" owner="TemplatedRequests">
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:37.477989" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow/jmespath.expr' does not exist.</msg>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:37.477733" elapsed="0.000329">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow/jmespath.expr' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:37.478175" level="INFO">${read_jmes_file} = False</msg>
<var>${read_jmes_file}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:37.477390" elapsed="0.000809"/>
</kw>
<if>
<branch type="IF" condition="${read_jmes_file} == ${true}">
<kw name="Get File" owner="OperatingSystem">
<var>${jmes_expression}</var>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.478512" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:37.478269" elapsed="0.000300"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.479108" level="INFO">${jmes_expression} = None</msg>
<var>${jmes_expression}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:37.478802" elapsed="0.000333"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.478603" elapsed="0.000568"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.478251" elapsed="0.000942"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.481519" level="INFO">${expression} = </msg>
<var>${expression}</var>
<arg>${read_jmes_file} == ${true}</arg>
<arg>${jmes_expression}</arg>
<arg>${EMPTY}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:37.479345" elapsed="0.002200"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-05-25T01:55:37.481597" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:55:37.481754" level="INFO">${jmes_expression} = </msg>
<var>${jmes_expression}</var>
<arg>${folder}</arg>
<doc>Reads JMES path from file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/jmespath.expr if the file exists and
returns the JMES path. Empty string is returned otherwise.</doc>
<status status="PASS" start="2026-05-25T01:55:37.477033" elapsed="0.004746"/>
</kw>
<kw name="Post_To_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.483319" level="INFO">/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/flow-node-inventory:table=0</msg>
<arg>${uri}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:37.483052" elapsed="0.000313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.483756" level="INFO">{
  "flow": [
        {
          "id": "1",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.1/32"
          },
          "flow-name": "Flow-1",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 1
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "2",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.2/32"
          },
          "flow-name": "Flow-2",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 2
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "3",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.3/32"
          },
          "flow-name": "Flow-3",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 3
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "4",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.4/32"
          },
          "flow-name": "Flow-4",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 4
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "5",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.5/32"
          },
          "flow-name": "Flow-5",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 5
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "6",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.6/32"
          },
          "flow-name": "Flow-6",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 6
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "7",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.7/32"
          },
          "flow-name": "Flow-7",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 7
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "8",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.8/32"
          },
          "flow-name": "Flow-8",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 8
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "9",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.9/32"
          },
          "flow-name": "Flow-9",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 9
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "10",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.10/32"
          },
          "flow-name": "Flow-10",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 10
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "11",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.11/32"
          },
          "flow-name": "Flow-11",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 11
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "12",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.12/32"
          },
          "flow-name": "Flow-12",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 12
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "13",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.13/32"
          },
          "flow-name": "Flow-13",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 13
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "14",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.14/32"
          },
          "flow-name": "Flow-14",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 14
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "15",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.15/32"
          },
          "flow-name": "Flow-15",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 15
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "16",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.16/32"
          },
          "flow-name": "Flow-16",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 16
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "17",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.17/32"
          },
          "flow-name": "Flow-17",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 17
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "18",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.18/32"
          },
          "flow-name": "Flow-18",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 18
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "19",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.19/32"
          },
          "flow-name": "Flow-19",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 19
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "20",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.20/32"
          },
          "flow-name": "Flow-20",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 20
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "21",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.21/32"
          },
          "flow-name": "Flow-21",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 21
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "22",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.22/32"
          },
          "flow-name": "Flow-22",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 22
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "23",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.23/32"
          },
          "flow-name": "Flow-23",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 23
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "24",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.24/32"
          },
          "flow-name": "Flow-24",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 24
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "25",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.25/32"
          },
          "flow-name": "Flow-25",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 25
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "26",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.26/32"
          },
          "flow-name": "Flow-26",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 26
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "27",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.27/32"
          },
          "flow-name": "Flow-27",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 27
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "28",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.28/32"
          },
          "flow-name": "Flow-28",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 28
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "29",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.29/32"
          },
          "flow-name": "Flow-29",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 29
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "30",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.30/32"
          },
          "flow-name": "Flow-30",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 30
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "31",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.31/32"
          },
          "flow-name": "Flow-31",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 31
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "32",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.32/32"
          },
          "flow-name": "Flow-32",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 32
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "33",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.33/32"
          },
          "flow-name": "Flow-33",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 33
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "34",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.34/32"
          },
          "flow-name": "Flow-34",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 34
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "35",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.35/32"
          },
          "flow-name": "Flow-35",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 35
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "36",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.36/32"
          },
          "flow-name": "Flow-36",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 36
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "37",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.37/32"
          },
          "flow-name": "Flow-37",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 37
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "38",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.38/32"
          },
          "flow-name": "Flow-38",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 38
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "39",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.39/32"
          },
          "flow-name": "Flow-39",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 39
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "40",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.40/32"
          },
          "flow-name": "Flow-40",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 40
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "41",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.41/32"
          },
          "flow-name": "Flow-41",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 41
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "42",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.42/32"
          },
          "flow-name": "Flow-42",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 42
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "43",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.43/32"
          },
          "flow-name": "Flow-43",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 43
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "44",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.44/32"
          },
          "flow-name": "Flow-44",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 44
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "45",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.45/32"
          },
          "flow-name": "Flow-45",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 45
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "46",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.46/32"
          },
          "flow-name": "Flow-46",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 46
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "47",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.47/32"
          },
          "flow-name": "Flow-47",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 47
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "48",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.48/32"
          },
          "flow-name": "Flow-48",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 48
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "49",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.49/32"
          },
          "flow-name": "Flow-49",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 49
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "50",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.50/32"
          },
          "flow-name": "Flow-50",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 50
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "51",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.51/32"
          },
          "flow-name": "Flow-51",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 51
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "52",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.52/32"
          },
          "flow-name": "Flow-52",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 52
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "53",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.53/32"
          },
          "flow-name": "Flow-53",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 53
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "54",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.54/32"
          },
          "flow-name": "Flow-54",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 54
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "55",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.55/32"
          },
          "flow-name": "Flow-55",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 55
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "56",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.56/32"
          },
          "flow-name": "Flow-56",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 56
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "57",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.57/32"
          },
          "flow-name": "Flow-57",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 57
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "58",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.58/32"
          },
          "flow-name": "Flow-58",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 58
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "59",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.59/32"
          },
          "flow-name": "Flow-59",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 59
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "60",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.60/32"
          },
          "flow-name": "Flow-60",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 60
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "61",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.61/32"
          },
          "flow-name": "Flow-61",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 61
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "62",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.62/32"
          },
          "flow-name": "Flow-62",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 62
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "63",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.63/32"
          },
          "flow-name": "Flow-63",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 63
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "64",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.64/32"
          },
          "flow-name": "Flow-64",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 64
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "65",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.65/32"
          },
          "flow-name": "Flow-65",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 65
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "66",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.66/32"
          },
          "flow-name": "Flow-66",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 66
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "67",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.67/32"
          },
          "flow-name": "Flow-67",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 67
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "68",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.68/32"
          },
          "flow-name": "Flow-68",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 68
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "69",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.69/32"
          },
          "flow-name": "Flow-69",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 69
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "70",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.70/32"
          },
          "flow-name": "Flow-70",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 70
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "71",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.71/32"
          },
          "flow-name": "Flow-71",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 71
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "72",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.72/32"
          },
          "flow-name": "Flow-72",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 72
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "73",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.73/32"
          },
          "flow-name": "Flow-73",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 73
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "74",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.74/32"
          },
          "flow-name": "Flow-74",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 74
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "75",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.75/32"
          },
          "flow-name": "Flow-75",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 75
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "76",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.76/32"
          },
          "flow-name": "Flow-76",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 76
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "77",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.77/32"
          },
          "flow-name": "Flow-77",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 77
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "78",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.78/32"
          },
          "flow-name": "Flow-78",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 78
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "79",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.79/32"
          },
          "flow-name": "Flow-79",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 79
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "80",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.80/32"
          },
          "flow-name": "Flow-80",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 80
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "81",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.81/32"
          },
          "flow-name": "Flow-81",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 81
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "82",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.82/32"
          },
          "flow-name": "Flow-82",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 82
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "83",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.83/32"
          },
          "flow-name": "Flow-83",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 83
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "84",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.84/32"
          },
          "flow-name": "Flow-84",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 84
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "85",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.85/32"
          },
          "flow-name": "Flow-85",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 85
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "86",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.86/32"
          },
          "flow-name": "Flow-86",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 86
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "87",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.87/32"
          },
          "flow-name": "Flow-87",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 87
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "88",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.88/32"
          },
          "flow-name": "Flow-88",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 88
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "89",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.89/32"
          },
          "flow-name": "Flow-89",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 89
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "90",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.90/32"
          },
          "flow-name": "Flow-90",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 90
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "91",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.91/32"
          },
          "flow-name": "Flow-91",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 91
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "92",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.92/32"
          },
          "flow-name": "Flow-92",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 92
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "93",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.93/32"
          },
          "flow-name": "Flow-93",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 93
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "94",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.94/32"
          },
          "flow-name": "Flow-94",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 94
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "95",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.95/32"
          },
          "flow-name": "Flow-95",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 95
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "96",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.96/32"
          },
          "flow-name": "Flow-96",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 96
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "97",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.97/32"
          },
          "flow-name": "Flow-97",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 97
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "98",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.98/32"
          },
          "flow-name": "Flow-98",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 98
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "99",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.99/32"
          },
          "flow-name": "Flow-99",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 99
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "100",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.100/32"
          },
          "flow-name": "Flow-100",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 100
                      }
                    }
                  ]
                }
              }
            ]
          }
        }
  ]
}</msg>
<arg>${data}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:37.483519" elapsed="0.000924"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.484850" level="INFO">{'Content-Type': 'application/json'}</msg>
<arg>${content_type}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:37.484599" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.485301" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:37.485044" elapsed="0.000299"/>
</kw>
<kw name="Join_Two_Headers" owner="TemplatedRequests">
<kw name="Copy Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:37.486156" level="INFO">${accumulator} = {'Content-Type': 'application/json'}</msg>
<var>${accumulator}</var>
<arg>${first}</arg>
<doc>Returns a copy of the given dictionary.</doc>
<status status="PASS" start="2026-05-25T01:55:37.485944" elapsed="0.000239"/>
</kw>
<kw name="Get Dictionary Items" owner="Collections">
<msg time="2026-05-25T01:55:37.486507" level="INFO">${items_to_add} = []</msg>
<var>${items_to_add}</var>
<arg>${second}</arg>
<doc>Returns items of the given ``dictionary`` as a list.</doc>
<status status="PASS" start="2026-05-25T01:55:37.486335" elapsed="0.000198"/>
</kw>
<kw name="Set To Dictionary" owner="Collections">
<arg>${accumulator}</arg>
<arg>@{items_to_add}</arg>
<doc>Adds the given ``key_value_pairs`` and/or ``items`` to the ``dictionary``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.486713" elapsed="0.000189"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.487319" level="INFO">{'Content-Type': 'application/json'}</msg>
<arg>${accumulator}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:37.487057" elapsed="0.000306"/>
</kw>
<return>
<value>${accumulator}</value>
<status status="PASS" start="2026-05-25T01:55:37.487405" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:55:37.487558" level="INFO">${headers} = {'Content-Type': 'application/json'}</msg>
<var>${headers}</var>
<arg>first=${content_type}</arg>
<arg>second=${accept}</arg>
<doc>Take two dicts, join them, return result. Second argument values take precedence.</doc>
<status status="PASS" start="2026-05-25T01:55:37.485544" elapsed="0.002039"/>
</kw>
<if>
<branch type="IF" condition="&quot;&quot;&quot;${http_timeout}&quot;&quot;&quot; == &quot;&quot;&quot;${EMPTY}&quot;&quot;&quot;">
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:37.539016" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/flow-node-inventory:table=0 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/flow-node-inventory:table=0 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Content-Length': '76286', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body={
  "flow": [
        {
          "id": "1",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.1/32"
          },
          "flow-name": "Flow-1",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 1
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "2",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.2/32"
          },
          "flow-name": "Flow-2",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 2
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "3",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.3/32"
          },
          "flow-name": "Flow-3",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 3
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "4",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.4/32"
          },
          "flow-name": "Flow-4",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 4
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "5",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.5/32"
          },
          "flow-name": "Flow-5",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 5
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "6",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.6/32"
          },
          "flow-name": "Flow-6",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 6
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "7",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.7/32"
          },
          "flow-name": "Flow-7",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 7
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "8",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.8/32"
          },
          "flow-name": "Flow-8",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 8
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "9",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.9/32"
          },
          "flow-name": "Flow-9",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 9
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "10",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.10/32"
          },
          "flow-name": "Flow-10",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 10
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "11",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.11/32"
          },
          "flow-name": "Flow-11",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 11
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "12",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.12/32"
          },
          "flow-name": "Flow-12",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 12
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "13",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.13/32"
          },
          "flow-name": "Flow-13",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 13
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "14",
          "priority": 100,
          "table_id": 0,
          "match": ... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:55:37.539409" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/flow-node-inventory:table=0 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/flow-node-inventory:table=0/flow=69', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:37.539647" level="INFO">${response} = &lt;Response [201]&gt;</msg>
<var>${response}</var>
<arg>${session}</arg>
<arg>${uri}</arg>
<arg>data=${data}</arg>
<arg>headers=${headers}</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:37.489826" elapsed="0.049879"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.487801" elapsed="0.052010"/>
</branch>
<branch type="ELSE">
<kw name="POST On Session" owner="RequestsLibrary">
<var>${response}</var>
<arg>${session}</arg>
<arg>${uri}</arg>
<arg>data=${data}</arg>
<arg>headers=${headers}</arg>
<arg>timeout=${http_timeout}</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.540245" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:37.539870" elapsed="0.000528"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.487634" elapsed="0.052813"/>
</if>
<kw name="Check_Status_Code" owner="TemplatedRequests">
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.547297" level="INFO"/>
<arg>${response.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:37.542784" elapsed="0.004556"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.542265" elapsed="0.005111"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.542222" elapsed="0.005178"/>
</if>
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.549828" level="INFO">201</msg>
<arg>${response.status_code}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:37.547673" elapsed="0.002200"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.547455" elapsed="0.002453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.547438" elapsed="0.002493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.550513" level="INFO">${status_codes_type} = list</msg>
<var>${status_codes_type}</var>
<arg>type($additional_allowed_status_codes).__name__</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.550120" elapsed="0.000420"/>
</kw>
<if>
<branch type="IF" condition="&quot;${status_codes_type}&quot;!=&quot;list&quot;">
<kw name="Create List" owner="BuiltIn">
<var>${allowed_status_codes_list}</var>
<arg>${additional_allowed_status_codes}</arg>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.550864" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:37.550610" elapsed="0.000311"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.551430" level="INFO">${allowed_status_codes_list} = []</msg>
<var>${allowed_status_codes_list}</var>
<arg>${additional_allowed_status_codes}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:37.551133" elapsed="0.000323"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.550944" elapsed="0.000548"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.550592" elapsed="0.000921"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.552042" level="INFO">${status_codes_type} = list</msg>
<var>${status_codes_type}</var>
<arg>type($explicit_status_codes).__name__</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.551684" elapsed="0.000399"/>
</kw>
<if>
<branch type="IF" condition="&quot;${status_codes_type}&quot;!=&quot;list&quot;">
<kw name="Create List" owner="BuiltIn">
<var>${explicit_status_codes_list}</var>
<arg>${explicit_status_codes}</arg>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.552398" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:37.552154" elapsed="0.000301"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.552940" level="INFO">${explicit_status_codes_list} = []</msg>
<var>${explicit_status_codes_list}</var>
<arg>${explicit_status_codes}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:37.552649" elapsed="0.000316"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.552478" elapsed="0.000522"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.552136" elapsed="0.000885"/>
</if>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>"""${explicit_status_codes_list}""" != """${NO_STATUS_CODES}"""</arg>
<arg>Collections.List_Should_Contain_Value</arg>
<arg>${explicit_status_codes_list}</arg>
<arg>${response.status_code}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:37.553184" elapsed="0.000341"/>
</kw>
<kw name="Combine Lists" owner="Collections">
<msg time="2026-05-25T01:55:37.553961" level="INFO">${final_allowd_list} = [200, 201, 204]</msg>
<var>${final_allowd_list}</var>
<arg>${ALLOWED_STATUS_CODES}</arg>
<arg>${allowed_status_codes_list}</arg>
<doc>Combines the given ``lists`` together and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.553689" elapsed="0.000298"/>
</kw>
<kw name="List Should Contain Value" owner="Collections">
<arg>${final_allowd_list}</arg>
<arg>${response.status_code}</arg>
<doc>Fails if the ``value`` is not found from ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.554155" elapsed="0.002180"/>
</kw>
<arg>${response}</arg>
<arg>additional_allowed_status_codes=${additional_allowed_status_codes}</arg>
<arg>explicit_status_codes=${explicit_status_codes}</arg>
<doc>Log response text, check status_code is one of allowed ones. In cases where this keyword is
called in a WUKS it could end up logging tons of data and it may be desired to skip the logging by passing
log_response=False, but by default it remains True.</doc>
<status status="PASS" start="2026-05-25T01:55:37.541259" elapsed="0.015138"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-05-25T01:55:37.556573" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:37.556469" elapsed="0.000147"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.556450" elapsed="0.000188"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<msg time="2026-05-25T01:55:37.559034" level="INFO">${text_normalized} = </msg>
<var>${text_normalized}</var>
<arg>${response.text}</arg>
<arg>jmes_path=${jmes_path}</arg>
<doc>Attempt to return sorted indented JSON string.</doc>
<status status="PASS" start="2026-05-25T01:55:37.556782" elapsed="0.002279"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="PASS" start="2026-05-25T01:55:37.559125" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:37.559278" level="INFO">${response_text} = </msg>
<var>${response_text}</var>
<arg>uri=${uri}</arg>
<arg>data=${data}</arg>
<arg>content_type=${content_type}</arg>
<arg>accept=${accept}</arg>
<arg>session=${session}</arg>
<arg>jmes_path=${jmes_expression}</arg>
<arg>normalize_json=${normalize_json}</arg>
<arg>additional_allowed_status_codes=${additional_allowed_status_codes}</arg>
<arg>explicit_status_codes=${explicit_status_codes}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>POST data to given URI, check status code and return response text.
${content_type} and ${accept} are mandatory Python objects with headers to use.
If ${normalize_json}, normalize text before returning.</doc>
<status status="PASS" start="2026-05-25T01:55:37.482116" elapsed="0.077187"/>
</kw>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-05-25T01:55:37.559407" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:55:37.559560" level="INFO">${response_text} = </msg>
<var>${response_text}</var>
<arg>folder=${folder}</arg>
<arg>base_name=data</arg>
<arg>extension=json</arg>
<arg>accept=${ACCEPT_EMPTY}</arg>
<arg>content_type=${HEADERS_YANG_JSON}</arg>
<arg>mapping=${mapping}</arg>
<arg>session=${session}</arg>
<arg>normalize_json=True</arg>
<arg>endline=${\n}</arg>
<arg>iterations=${iterations}</arg>
<arg>iter_start=${iter_start}</arg>
<arg>additional_allowed_status_codes=${additional_allowed_status_codes}</arg>
<arg>explicit_status_codes=${explicit_status_codes}</arg>
<arg>http_timeout=${http_timeout}</arg>
<arg>iter_j_offset=${iter_j_offset}</arg>
<doc>Resolve URI and data from folder, call Post_To_Uri, return response text.</doc>
<status status="PASS" start="2026-05-25T01:55:37.096580" elapsed="0.463005"/>
</kw>
<if>
<branch type="IF" condition="${verify}">
<kw name="Verify_Response_As_Json_Templated" owner="TemplatedRequests">
<arg>response=${response_text}</arg>
<arg>folder=${folder}</arg>
<arg>base_name=response</arg>
<arg>mapping=${mapping}</arg>
<arg>iter_j_offset=${iter_j_offset}</arg>
<doc>Resolve expected JSON data, should be equal to provided ${response}.
JSON normalization is used, endlines enabled for readability.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.559923" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:37.559689" elapsed="0.000302"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.559672" elapsed="0.000342"/>
</if>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-05-25T01:55:37.560047" elapsed="0.000040"/>
</return>
<arg>folder=${VAR_DIR}/add-flow</arg>
<arg>mapping=${mapping}</arg>
<arg>session=session</arg>
<arg>iterations=${ITER}</arg>
<doc>Add arguments sensible for JSON data, return Post_Templated response text.
Optionally, verification against response.json (no iteration) is called.
Only subset of JSON data is verified and returned if JMES path is specified in
file ${folder}/jmespath.expr.
Response status code must be one of values from ${explicit_status_codes} if specified or one of set
created from all positive HTTP status codes together with ${additional_allowed_status_codes}.</doc>
<status status="PASS" start="2026-05-25T01:55:37.094024" elapsed="0.466163"/>
</kw>
<var name="${switch}">2</var>
<status status="PASS" start="2026-05-25T01:55:37.082621" elapsed="0.477611"/>
</iter>
<iter>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.560865" level="INFO">&amp;{mapping} = { NODE=openflow:3 }</msg>
<var>&amp;{mapping}</var>
<arg>NODE=openflow:${switch}</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.560467" elapsed="0.000425"/>
</kw>
<kw name="Post_As_Json_Templated" owner="TemplatedRequests">
<kw name="Post_Templated" owner="TemplatedRequests">
<kw name="Resolve_Text_From_Template_Folder" owner="TemplatedRequests">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.602540" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/location.uri</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:37.602151" elapsed="0.000418"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:37.603300" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow.titanium/location.uri' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:37.603086" elapsed="0.000280">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow.titanium/location.uri' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:37.603459" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:37.602735" elapsed="0.000748"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.604030" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/location.uri</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:37.603648" elapsed="0.000410"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:37.604370" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow/location.uri"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow/location.uri&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:37.604511" level="INFO">${template} = /rests/data/opendaylight-inventory:nodes/node=$NODE/flow-node-inventory:table=0
</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:37.604235" elapsed="0.000302"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.604936" level="INFO">/rests/data/opendaylight-inventory:nodes/node=$NODE/flow-node-inventory:table=0
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:37.604690" elapsed="0.000290"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.605928" level="INFO">mapping: {'NODE': 'openflow:3'}</msg>
<arg>mapping: ${mapping}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:37.605676" elapsed="0.000296"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.606429" level="INFO">${encoded_mapping} = {}</msg>
<var>${encoded_mapping}</var>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.606166" elapsed="0.000288"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Convert To String" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.607171" level="INFO">${value} = openflow:3</msg>
<var>${value}</var>
<arg>${value}</arg>
<doc>Converts the given item to a Unicode string.</doc>
<status status="PASS" start="2026-05-25T01:55:37.606805" elapsed="0.000392"/>
</kw>
<kw name="Percent_Encode_String" owner="TemplatedRequests">
<kw name="Replace String Using Regexp" owner="String">
<msg time="2026-05-25T01:55:37.608188" level="INFO">${encoded} = openflow%3A3</msg>
<var>${encoded}</var>
<arg>${value}</arg>
<arg>:</arg>
<arg>%3A</arg>
<doc>Replaces ``pattern`` in the given ``string`` with ``replace_with``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.607723" elapsed="0.000492"/>
</kw>
<return>
<value>${encoded}</value>
<status status="PASS" start="2026-05-25T01:55:37.608300" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:55:37.608456" level="INFO">${encoded_value} = openflow%3A3</msg>
<var>${encoded_value}</var>
<arg>${value}</arg>
<doc>Percent encodes reserved characters in the given string so it can be used as part of url.</doc>
<status status="PASS" start="2026-05-25T01:55:37.607383" elapsed="0.001098"/>
</kw>
<kw name="Set To Dictionary" owner="Collections">
<arg>${encoded_mapping}</arg>
<arg>${key}</arg>
<arg>${encoded_value}</arg>
<doc>Adds the given ``key_value_pairs`` and/or ``items`` to the ``dictionary``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.608632" elapsed="0.000277"/>
</kw>
<var name="${key}">NODE</var>
<var name="${value}">openflow:3</var>
<status status="PASS" start="2026-05-25T01:55:37.606671" elapsed="0.002279"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="PASS" start="2026-05-25T01:55:37.606505" elapsed="0.002480"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-05-25T01:55:37.609028" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:55:37.609200" level="INFO">${mapping_to_use} = {'NODE': 'openflow%3A3'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-05-25T01:55:37.605354" elapsed="0.003871"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.605049" elapsed="0.004208"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.609427" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:37.609281" elapsed="0.000201"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.605029" elapsed="0.004474"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.610204" level="INFO">${final_text} = /rests/data/opendaylight-inventory:nodes/node=openflow%3A3/flow-node-inventory:table=0</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.609642" elapsed="0.000594"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:37.610285" elapsed="0.000028"/>
</return>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:37.601510" elapsed="0.008899"/>
</kw>
<msg time="2026-05-25T01:55:37.610464" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>not "${iterations}"</arg>
<arg>Resolve_Text_From_Template_File</arg>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:37.589461" elapsed="0.021050"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${prolog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.prolog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.622508" elapsed="0.000028"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${epilog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.epilog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.634338" elapsed="0.000028"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${item_template}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${base_name}.item.${extension}</arg>
<arg>mapping=${mapping}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.646040" elapsed="0.000045"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.646261" elapsed="0.000021"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<var>${separator}</var>
<arg>'${extension}' != 'json'</arg>
<arg>${endline}</arg>
<arg>,${endline}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.646437" elapsed="0.000021"/>
</kw>
<for flavor="IN RANGE">
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.646799" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:37.646656" elapsed="0.000198"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:37.646642" elapsed="0.000234"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.647015" elapsed="0.000020"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.647238" elapsed="0.000021"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.647405" elapsed="0.000021"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-05-25T01:55:37.646613" elapsed="0.000845"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-05-25T01:55:37.646512" elapsed="0.000972"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<var>${final_text}</var>
<arg>SEPARATOR=</arg>
<arg>${prolog}</arg>
<arg>${endline}</arg>
<arg>@{items}</arg>
<arg>${endline}</arg>
<arg>${epilog}</arg>
<doc>Catenates the given items together and returns the resulted string.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.647629" elapsed="0.000019"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-05-25T01:55:37.647703" elapsed="0.000015"/>
</return>
<msg time="2026-05-25T01:55:37.647820" level="INFO">${uri} = /rests/data/opendaylight-inventory:nodes/node=openflow%3A3/flow-node-inventory:table=0</msg>
<var>${uri}</var>
<arg>folder=${folder}</arg>
<arg>base_name=location</arg>
<arg>extension=uri</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=True</arg>
<doc>Read a template from folder, strip endline, make changes according to mapping, return the result.
If ${iterations} value is present, put text together from "prolog", "item" and "epilog" parts,
where additional template variable ${i} goes from 1, by one 100 times.
Template variable ${j} is calculated as ${i} incremented by offset 0 ( j = i + iter_j_offset )
used to create non uniform data in order to be able to validate UPDATE operations.
POST (as opposed to PUT) needs slightly different data, ${name_prefix} may be used to distinguish.
(Actually, it is GET who formats data differently when URI is a top-level container.)</doc>
<status status="PASS" start="2026-05-25T01:55:37.585352" elapsed="0.062495"/>
</kw>
<kw name="Resolve_Text_From_Template_Folder" owner="TemplatedRequests">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>not "${iterations}"</arg>
<arg>Resolve_Text_From_Template_File</arg>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:37.658329" elapsed="0.000335"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.671424" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/post_data.prolog.json</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:37.671034" elapsed="0.000418"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:37.672173" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow.titanium/post_data.prolog.json' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:37.671952" elapsed="0.000284">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow.titanium/post_data.prolog.json' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:37.672328" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:37.671619" elapsed="0.000733"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.672899" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/post_data.prolog.json</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:37.672517" elapsed="0.000409"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:37.673239" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow/post_data.prolog.json"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow/post_data.prolog.json&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:37.673361" level="INFO">${template} = {
  "flow": [
</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:37.673103" elapsed="0.000283"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.673788" level="INFO">{
  "flow": [
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:37.673541" elapsed="0.000316"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:37.674227" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:37.673924" elapsed="0.000362"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.674746" level="INFO">${mapping_to_use} = {'NODE': 'openflow:3'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:37.674455" elapsed="0.000317"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.674310" elapsed="0.000496"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.673905" elapsed="0.000923"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.675408" level="INFO">${final_text} = {
  "flow": [</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.674971" elapsed="0.000464"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:37.675484" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:55:37.675636" level="INFO">${prolog} = {
  "flow": [</msg>
<var>${prolog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.prolog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:37.670425" elapsed="0.005236"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.688659" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/post_data.epilog.json</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:37.688286" elapsed="0.000402"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:37.689406" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow.titanium/post_data.epilog.json' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:37.689202" elapsed="0.000266">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow.titanium/post_data.epilog.json' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:37.689561" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:37.688851" elapsed="0.000734"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.690166" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/post_data.epilog.json</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:37.689765" elapsed="0.000429"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:37.690487" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow/post_data.epilog.json"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow/post_data.epilog.json&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:37.690609" level="INFO">${template} =   ]
}
</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:37.690354" elapsed="0.000279"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.691027" level="INFO">  ]
}
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:37.690787" elapsed="0.000299"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:37.691440" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:37.691156" elapsed="0.000342"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.691955" level="INFO">${mapping_to_use} = {'NODE': 'openflow:3'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:37.691668" elapsed="0.000313"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.691522" elapsed="0.000494"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.691137" elapsed="0.000901"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.692618" level="INFO">${final_text} =   ]
}</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.692198" elapsed="0.000446"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:37.692693" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:55:37.692847" level="INFO">${epilog} =   ]
}</msg>
<var>${epilog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.epilog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:37.687654" elapsed="0.005218"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.705596" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/data.item.json</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:37.705225" elapsed="0.000399"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:37.706365" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow.titanium/data.item.json' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:37.706160" elapsed="0.000268">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow.titanium/data.item.json' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:37.706520" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:37.705810" elapsed="0.000734"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.707102" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/data.item.json</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:37.706707" elapsed="0.000423"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:55:37.707423" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow/data.item.json"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow/data.item.json&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:55:37.707578" level="INFO">${template} =         {
          "id": "${i}",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048...</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:55:37.707291" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.708003" level="INFO">        {
          "id": "${i}",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.${i}/32"
          },
          "flow-name": "Flow-${i}",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": ${i}
                      }
                    }
                  ]
                }
              }
            ]
          }
        }
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:37.707761" elapsed="0.000291"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="NOT RUN" start="2026-05-25T01:55:37.708425" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:37.708138" elapsed="0.000345"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.708942" level="INFO">${mapping_to_use} = {'NODE': 'openflow:3'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:37.708652" elapsed="0.000316"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.708507" elapsed="0.000497"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.708118" elapsed="0.000908"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.709815" level="INFO">${final_text} =         {
          "id": "${i}",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048...</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.709187" elapsed="0.000657"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:37.709894" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:55:37.710048" level="INFO">${item_template} =         {
          "id": "${i}",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048...</msg>
<var>${item_template}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${base_name}.item.${extension}</arg>
<arg>mapping=${mapping}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:55:37.704673" elapsed="0.005418"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.710496" level="INFO">${items} = []</msg>
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:55:37.710255" elapsed="0.000266"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.711041" level="INFO">${separator} = ,
</msg>
<var>${separator}</var>
<arg>'${extension}' != 'json'</arg>
<arg>${endline}</arg>
<arg>,${endline}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:37.710680" elapsed="0.000402"/>
</kw>
<for flavor="IN RANGE">
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.711696" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:37.711464" elapsed="0.000288"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.711450" elapsed="0.000326"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.712277" level="INFO">${j} = 1</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.711915" elapsed="0.000388"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.713242" level="INFO">${item} =         {
          "id": "1",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
  ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.712458" elapsed="0.000813"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.713431" elapsed="0.000188"/>
</kw>
<var name="${iteration}">1</var>
<status status="PASS" start="2026-05-25T01:55:37.711420" elapsed="0.002248"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.714104" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.713849" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.713834" elapsed="0.000520"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.714849" level="INFO">${j} = 2</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.714495" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.715651" level="INFO">${item} =         {
          "id": "2",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
  ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.715031" elapsed="0.000649"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.715835" elapsed="0.000183"/>
</kw>
<var name="${iteration}">2</var>
<status status="PASS" start="2026-05-25T01:55:37.713805" elapsed="0.002299"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.716522" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.716287" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.716273" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.717274" level="INFO">${j} = 3</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.716909" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.718088" level="INFO">${item} =         {
          "id": "3",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
  ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.717456" elapsed="0.000663"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.718276" elapsed="0.000183"/>
</kw>
<var name="${iteration}">3</var>
<status status="PASS" start="2026-05-25T01:55:37.716243" elapsed="0.002254"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.718913" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.718674" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.718660" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.719667" level="INFO">${j} = 4</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.719318" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.720466" level="INFO">${item} =         {
          "id": "4",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
  ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.719848" elapsed="0.000647"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.720650" elapsed="0.000182"/>
</kw>
<var name="${iteration}">4</var>
<status status="PASS" start="2026-05-25T01:55:37.718631" elapsed="0.002237"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.721299" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.721047" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.721032" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.722086" level="INFO">${j} = 5</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.721710" elapsed="0.000404"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.722872" level="INFO">${item} =         {
          "id": "5",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
  ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.722272" elapsed="0.000628"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.723056" elapsed="0.000199"/>
</kw>
<var name="${iteration}">5</var>
<status status="PASS" start="2026-05-25T01:55:37.721002" elapsed="0.002290"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.723705" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.723470" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.723456" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.724457" level="INFO">${j} = 6</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.724106" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.725253" level="INFO">${item} =         {
          "id": "6",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
  ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.724637" elapsed="0.000644"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.725436" elapsed="0.000192"/>
</kw>
<var name="${iteration}">6</var>
<status status="PASS" start="2026-05-25T01:55:37.723427" elapsed="0.002239"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.726100" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.725849" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.725834" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.726839" level="INFO">${j} = 7</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.726491" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.727629" level="INFO">${item} =         {
          "id": "7",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
  ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.727017" elapsed="0.000671"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.727851" elapsed="0.000182"/>
</kw>
<var name="${iteration}">7</var>
<status status="PASS" start="2026-05-25T01:55:37.725805" elapsed="0.002279"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.728501" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.728265" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.728250" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.729254" level="INFO">${j} = 8</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.728888" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.730193" level="INFO">${item} =         {
          "id": "8",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
  ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.729437" elapsed="0.000785"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.730379" elapsed="0.000184"/>
</kw>
<var name="${iteration}">8</var>
<status status="PASS" start="2026-05-25T01:55:37.728221" elapsed="0.002379"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.731016" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.730783" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.730768" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.731771" level="INFO">${j} = 9</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.731421" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.732565" level="INFO">${item} =         {
          "id": "9",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
  ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.731954" elapsed="0.000640"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.732749" elapsed="0.000180"/>
</kw>
<var name="${iteration}">9</var>
<status status="PASS" start="2026-05-25T01:55:37.730735" elapsed="0.002231"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.733395" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.733160" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.733145" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.734174" level="INFO">${j} = 10</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.733804" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.734952" level="INFO">${item} =         {
          "id": "10",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.734356" elapsed="0.000624"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.735150" elapsed="0.000182"/>
</kw>
<var name="${iteration}">10</var>
<status status="PASS" start="2026-05-25T01:55:37.733115" elapsed="0.002255"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.735781" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.735547" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.735533" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.736529" level="INFO">${j} = 11</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.736181" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.737321" level="INFO">${item} =         {
          "id": "11",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.736709" elapsed="0.000640"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.737502" elapsed="0.000193"/>
</kw>
<var name="${iteration}">11</var>
<status status="PASS" start="2026-05-25T01:55:37.735503" elapsed="0.002230"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.738164" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.737910" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.737895" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.738902" level="INFO">${j} = 12</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.738555" elapsed="0.000407"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.739737" level="INFO">${item} =         {
          "id": "12",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.739138" elapsed="0.000628"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.739921" elapsed="0.000199"/>
</kw>
<var name="${iteration}">12</var>
<status status="PASS" start="2026-05-25T01:55:37.737866" elapsed="0.002292"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.740571" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.740336" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.740322" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.741328" level="INFO">${j} = 13</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.740961" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.742141" level="INFO">${item} =         {
          "id": "13",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.741508" elapsed="0.000662"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.742327" elapsed="0.000181"/>
</kw>
<var name="${iteration}">13</var>
<status status="PASS" start="2026-05-25T01:55:37.740293" elapsed="0.002252"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.742956" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.742722" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.742708" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.743709" level="INFO">${j} = 14</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.743360" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.744506" level="INFO">${item} =         {
          "id": "14",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.743894" elapsed="0.000641"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.744688" elapsed="0.000186"/>
</kw>
<var name="${iteration}">14</var>
<status status="PASS" start="2026-05-25T01:55:37.742679" elapsed="0.002233"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.745340" elapsed="0.000205"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.745105" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.745089" elapsed="0.000520"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.746238" level="INFO">${j} = 15</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.745751" elapsed="0.000514"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.747025" level="INFO">${item} =         {
          "id": "15",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.746419" elapsed="0.000634"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.747224" elapsed="0.000182"/>
</kw>
<var name="${iteration}">15</var>
<status status="PASS" start="2026-05-25T01:55:37.745045" elapsed="0.002398"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.747853" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.747620" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.747605" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.748607" level="INFO">${j} = 16</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.748257" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.749404" level="INFO">${item} =         {
          "id": "16",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.748787" elapsed="0.000645"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.749599" elapsed="0.000188"/>
</kw>
<var name="${iteration}">16</var>
<status status="PASS" start="2026-05-25T01:55:37.747576" elapsed="0.002248"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.750289" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.750001" elapsed="0.000513"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.749986" elapsed="0.000553"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.751030" level="INFO">${j} = 17</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.750682" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.751830" level="INFO">${item} =         {
          "id": "17",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.751230" elapsed="0.000629"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.752013" elapsed="0.000200"/>
</kw>
<var name="${iteration}">17</var>
<status status="PASS" start="2026-05-25T01:55:37.749957" elapsed="0.002294"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.752662" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.752429" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.752414" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.753420" level="INFO">${j} = 18</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.753054" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.754230" level="INFO">${item} =         {
          "id": "18",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.753612" elapsed="0.000647"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.754414" elapsed="0.000180"/>
</kw>
<var name="${iteration}">18</var>
<status status="PASS" start="2026-05-25T01:55:37.752385" elapsed="0.002246"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.755041" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.754808" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.754794" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.755792" level="INFO">${j} = 19</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.755444" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.756591" level="INFO">${item} =         {
          "id": "19",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.755971" elapsed="0.000648"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.756773" elapsed="0.000180"/>
</kw>
<var name="${iteration}">19</var>
<status status="PASS" start="2026-05-25T01:55:37.754765" elapsed="0.002225"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.757421" elapsed="0.000212"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.757186" elapsed="0.000485"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.757171" elapsed="0.000524"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.758201" level="INFO">${j} = 20</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.757836" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.758978" level="INFO">${item} =         {
          "id": "20",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.758381" elapsed="0.000625"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.759176" elapsed="0.000183"/>
</kw>
<var name="${iteration}">20</var>
<status status="PASS" start="2026-05-25T01:55:37.757141" elapsed="0.002255"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.759811" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.759573" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.759557" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.760565" level="INFO">${j} = 21</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.760217" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.761366" level="INFO">${item} =         {
          "id": "21",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.760745" elapsed="0.000649"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.761604" elapsed="0.000183"/>
</kw>
<var name="${iteration}">21</var>
<status status="PASS" start="2026-05-25T01:55:37.759528" elapsed="0.002297"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.762261" elapsed="0.000299"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.762005" elapsed="0.000594"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.761991" elapsed="0.000633"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.763142" level="INFO">${j} = 22</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.762768" elapsed="0.000401"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.763928" level="INFO">${item} =         {
          "id": "22",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.763326" elapsed="0.000630"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.764129" elapsed="0.000184"/>
</kw>
<var name="${iteration}">22</var>
<status status="PASS" start="2026-05-25T01:55:37.761961" elapsed="0.002389"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.764763" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.764528" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.764514" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.765528" level="INFO">${j} = 23</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.765166" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.766329" level="INFO">${item} =         {
          "id": "23",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.765710" elapsed="0.000647"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.766514" elapsed="0.000182"/>
</kw>
<var name="${iteration}">23</var>
<status status="PASS" start="2026-05-25T01:55:37.764485" elapsed="0.002249"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.767164" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.766913" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.766899" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.767905" level="INFO">${j} = 24</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.767556" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.768702" level="INFO">${item} =         {
          "id": "24",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.768101" elapsed="0.000629"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.768890" elapsed="0.000196"/>
</kw>
<var name="${iteration}">24</var>
<status status="PASS" start="2026-05-25T01:55:37.766869" elapsed="0.002256"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.769564" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.769303" elapsed="0.000484"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.769288" elapsed="0.000523"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.770323" level="INFO">${j} = 25</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.769953" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.771118" level="INFO">${item} =         {
          "id": "25",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.770504" elapsed="0.000643"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.771300" elapsed="0.000182"/>
</kw>
<var name="${iteration}">25</var>
<status status="PASS" start="2026-05-25T01:55:37.769259" elapsed="0.002260"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.771937" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.771697" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.771682" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.772688" level="INFO">${j} = 26</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.772340" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.773536" level="INFO">${item} =         {
          "id": "26",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.772903" elapsed="0.000669"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.773727" elapsed="0.000183"/>
</kw>
<var name="${iteration}">26</var>
<status status="PASS" start="2026-05-25T01:55:37.771652" elapsed="0.002295"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.774379" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.774145" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.774130" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.775136" level="INFO">${j} = 27</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.774769" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.775920" level="INFO">${item} =         {
          "id": "27",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.775318" elapsed="0.000631"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.776119" elapsed="0.000183"/>
</kw>
<var name="${iteration}">27</var>
<status status="PASS" start="2026-05-25T01:55:37.774099" elapsed="0.002241"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.776751" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.776517" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.776502" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.777523" level="INFO">${j} = 28</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.777154" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.778334" level="INFO">${item} =         {
          "id": "28",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.777703" elapsed="0.000659"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.778517" elapsed="0.000181"/>
</kw>
<var name="${iteration}">28</var>
<status status="PASS" start="2026-05-25T01:55:37.776473" elapsed="0.002262"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.779285" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.778913" elapsed="0.000596"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.778897" elapsed="0.000637"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.780025" level="INFO">${j} = 29</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.779676" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.780822" level="INFO">${item} =         {
          "id": "29",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.780224" elapsed="0.000626"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.781004" elapsed="0.000199"/>
</kw>
<var name="${iteration}">29</var>
<status status="PASS" start="2026-05-25T01:55:37.778868" elapsed="0.002373"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.781685" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.781444" elapsed="0.000462"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.781429" elapsed="0.000501"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.782439" level="INFO">${j} = 30</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.782088" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.783236" level="INFO">${item} =         {
          "id": "30",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.782619" elapsed="0.000645"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.783418" elapsed="0.000182"/>
</kw>
<var name="${iteration}">30</var>
<status status="PASS" start="2026-05-25T01:55:37.781398" elapsed="0.002239"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.784047" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.783814" elapsed="0.000504"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.783799" elapsed="0.000547"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.784847" level="INFO">${j} = 31</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.784492" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.785660" level="INFO">${item} =         {
          "id": "31",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.785029" elapsed="0.000659"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.785842" elapsed="0.000183"/>
</kw>
<var name="${iteration}">31</var>
<status status="PASS" start="2026-05-25T01:55:37.783770" elapsed="0.002308"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.786495" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.786260" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.786246" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.787253" level="INFO">${j} = 32</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.786885" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.788042" level="INFO">${item} =         {
          "id": "32",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.787435" elapsed="0.000650"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.788242" elapsed="0.000181"/>
</kw>
<var name="${iteration}">32</var>
<status status="PASS" start="2026-05-25T01:55:37.786215" elapsed="0.002245"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.788875" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.788638" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.788624" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.789641" level="INFO">${j} = 33</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.789279" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.790438" level="INFO">${item} =         {
          "id": "33",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.789822" elapsed="0.000644"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.790620" elapsed="0.000187"/>
</kw>
<var name="${iteration}">33</var>
<status status="PASS" start="2026-05-25T01:55:37.788595" elapsed="0.002249"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.791273" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.791021" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.791006" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.792006" level="INFO">${j} = 34</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.791661" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.792800" level="INFO">${item} =         {
          "id": "34",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.792202" elapsed="0.000626"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.792982" elapsed="0.000198"/>
</kw>
<var name="${iteration}">34</var>
<status status="PASS" start="2026-05-25T01:55:37.790977" elapsed="0.002241"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.793655" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.793420" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.793405" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.794407" level="INFO">${j} = 35</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.794041" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.795201" level="INFO">${item} =         {
          "id": "35",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.794587" elapsed="0.000643"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.795383" elapsed="0.000180"/>
</kw>
<var name="${iteration}">35</var>
<status status="PASS" start="2026-05-25T01:55:37.793374" elapsed="0.002259"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.796182" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.795923" elapsed="0.000486"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.795801" elapsed="0.000633"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.796929" level="INFO">${j} = 36</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.796577" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.797740" level="INFO">${item} =         {
          "id": "36",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.797127" elapsed="0.000641"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.797924" elapsed="0.000198"/>
</kw>
<var name="${iteration}">36</var>
<status status="PASS" start="2026-05-25T01:55:37.795771" elapsed="0.002390"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.798574" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.798340" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.798325" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.799327" level="INFO">${j} = 37</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.798960" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.800121" level="INFO">${item} =         {
          "id": "37",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.799507" elapsed="0.000643"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.800304" elapsed="0.000182"/>
</kw>
<var name="${iteration}">37</var>
<status status="PASS" start="2026-05-25T01:55:37.798296" elapsed="0.002227"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.800937" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.800698" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.800684" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.801697" level="INFO">${j} = 38</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.801347" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.802499" level="INFO">${item} =         {
          "id": "38",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.801881" elapsed="0.000646"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.802679" elapsed="0.000181"/>
</kw>
<var name="${iteration}">38</var>
<status status="PASS" start="2026-05-25T01:55:37.800655" elapsed="0.002242"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.803327" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.803089" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.803060" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.804062" level="INFO">${j} = 39</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.803715" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.804859" level="INFO">${item} =         {
          "id": "39",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.804259" elapsed="0.000628"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.805040" elapsed="0.000197"/>
</kw>
<var name="${iteration}">39</var>
<status status="PASS" start="2026-05-25T01:55:37.803031" elapsed="0.002270"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.805722" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.805488" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.805473" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.806473" level="INFO">${j} = 40</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.806124" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.807274" level="INFO">${item} =         {
          "id": "40",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.806652" elapsed="0.000680"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.807491" elapsed="0.000183"/>
</kw>
<var name="${iteration}">40</var>
<status status="PASS" start="2026-05-25T01:55:37.805444" elapsed="0.002268"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.808140" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.807889" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.807875" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.808877" level="INFO">${j} = 41</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.808529" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.809686" level="INFO">${item} =         {
          "id": "41",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.809056" elapsed="0.000658"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.809873" elapsed="0.000182"/>
</kw>
<var name="${iteration}">41</var>
<status status="PASS" start="2026-05-25T01:55:37.807846" elapsed="0.002262"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.810520" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.810287" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.810272" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.811274" level="INFO">${j} = 42</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.810904" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.812053" level="INFO">${item} =         {
          "id": "42",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.811453" elapsed="0.000644"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.812253" elapsed="0.000180"/>
</kw>
<var name="${iteration}">42</var>
<status status="PASS" start="2026-05-25T01:55:37.810243" elapsed="0.002227"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.812999" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.812755" elapsed="0.000504"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.812633" elapsed="0.000652"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.813781" level="INFO">${j} = 43</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.813429" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.814583" level="INFO">${item} =         {
          "id": "43",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.813963" elapsed="0.000648"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.814767" elapsed="0.000182"/>
</kw>
<var name="${iteration}">43</var>
<status status="PASS" start="2026-05-25T01:55:37.812604" elapsed="0.002383"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.815416" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.815182" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.815167" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.816169" level="INFO">${j} = 44</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.815805" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.816950" level="INFO">${item} =         {
          "id": "44",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.816350" elapsed="0.000628"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.817147" elapsed="0.000207"/>
</kw>
<var name="${iteration}">44</var>
<status status="PASS" start="2026-05-25T01:55:37.815137" elapsed="0.002255"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.817805" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.817571" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.817557" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.818555" level="INFO">${j} = 45</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.818208" elapsed="0.000406"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.819390" level="INFO">${item} =         {
          "id": "45",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.818773" elapsed="0.000645"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.819572" elapsed="0.000182"/>
</kw>
<var name="${iteration}">45</var>
<status status="PASS" start="2026-05-25T01:55:37.817527" elapsed="0.002264"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.820221" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.819968" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.819954" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.820957" level="INFO">${j} = 46</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.820609" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.821774" level="INFO">${item} =         {
          "id": "46",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.821153" elapsed="0.000650"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.821958" elapsed="0.000199"/>
</kw>
<var name="${iteration}">46</var>
<status status="PASS" start="2026-05-25T01:55:37.819925" elapsed="0.002271"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.822608" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.822374" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.822359" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.823359" level="INFO">${j} = 47</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.822994" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.824152" level="INFO">${item} =         {
          "id": "47",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.823539" elapsed="0.000642"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.824335" elapsed="0.000181"/>
</kw>
<var name="${iteration}">47</var>
<status status="PASS" start="2026-05-25T01:55:37.822330" elapsed="0.002223"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.824963" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.824731" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.824716" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.825721" level="INFO">${j} = 48</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.825376" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.826517" level="INFO">${item} =         {
          "id": "48",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.825905" elapsed="0.000640"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.826699" elapsed="0.000181"/>
</kw>
<var name="${iteration}">48</var>
<status status="PASS" start="2026-05-25T01:55:37.824687" elapsed="0.002230"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.827347" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.827112" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.827096" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.828094" level="INFO">${j} = 49</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.827733" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.828869" level="INFO">${item} =         {
          "id": "49",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.828275" elapsed="0.000622"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.829050" elapsed="0.000218"/>
</kw>
<var name="${iteration}">49</var>
<status status="PASS" start="2026-05-25T01:55:37.827051" elapsed="0.002255"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.829867" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.829590" elapsed="0.000519"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.829467" elapsed="0.000668"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.830629" level="INFO">${j} = 50</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.830279" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.831424" level="INFO">${item} =         {
          "id": "50",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.830810" elapsed="0.000643"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.831608" elapsed="0.000181"/>
</kw>
<var name="${iteration}">50</var>
<status status="PASS" start="2026-05-25T01:55:37.829439" elapsed="0.002388"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.832255" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.832004" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.831990" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.832990" level="INFO">${j} = 51</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.832645" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.833792" level="INFO">${item} =         {
          "id": "51",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.833195" elapsed="0.000625"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.833974" elapsed="0.000200"/>
</kw>
<var name="${iteration}">51</var>
<status status="PASS" start="2026-05-25T01:55:37.831960" elapsed="0.002251"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.834623" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.834389" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.834374" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.835397" level="INFO">${j} = 52</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.835015" elapsed="0.000409"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.836216" level="INFO">${item} =         {
          "id": "52",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.835601" elapsed="0.000643"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.836399" elapsed="0.000180"/>
</kw>
<var name="${iteration}">52</var>
<status status="PASS" start="2026-05-25T01:55:37.834345" elapsed="0.002271"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.837027" elapsed="0.000212"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.836793" elapsed="0.000484"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.836779" elapsed="0.000528"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.837796" level="INFO">${j} = 53</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.837449" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.838592" level="INFO">${item} =         {
          "id": "53",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.837977" elapsed="0.000643"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.838773" elapsed="0.000181"/>
</kw>
<var name="${iteration}">53</var>
<status status="PASS" start="2026-05-25T01:55:37.836750" elapsed="0.002241"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.839420" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.839187" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.839173" elapsed="0.000491"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.840170" level="INFO">${j} = 54</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.839805" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.840949" level="INFO">${item} =         {
          "id": "54",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.840350" elapsed="0.000627"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.841219" elapsed="0.000186"/>
</kw>
<var name="${iteration}">54</var>
<status status="PASS" start="2026-05-25T01:55:37.839143" elapsed="0.002300"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.841855" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.841619" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.841605" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.842612" level="INFO">${j} = 55</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.842260" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.843410" level="INFO">${item} =         {
          "id": "55",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.842793" elapsed="0.000646"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.843594" elapsed="0.000182"/>
</kw>
<var name="${iteration}">55</var>
<status status="PASS" start="2026-05-25T01:55:37.841576" elapsed="0.002237"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.844247" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.843990" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.843975" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.844980" level="INFO">${j} = 56</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.844634" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.845787" level="INFO">${item} =         {
          "id": "56",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.845189" elapsed="0.000627"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.845968" elapsed="0.000196"/>
</kw>
<var name="${iteration}">56</var>
<status status="PASS" start="2026-05-25T01:55:37.843946" elapsed="0.002256"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.846726" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.846486" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.846364" elapsed="0.000608"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.847480" level="INFO">${j} = 57</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.847130" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.848281" level="INFO">${item} =         {
          "id": "57",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.847660" elapsed="0.000649"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.848462" elapsed="0.000182"/>
</kw>
<var name="${iteration}">57</var>
<status status="PASS" start="2026-05-25T01:55:37.846335" elapsed="0.002346"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.849114" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.848857" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.848842" elapsed="0.000521"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.849854" level="INFO">${j} = 58</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.849505" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.850658" level="INFO">${item} =         {
          "id": "58",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.850035" elapsed="0.000650"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.850840" elapsed="0.000180"/>
</kw>
<var name="${iteration}">58</var>
<status status="PASS" start="2026-05-25T01:55:37.848814" elapsed="0.002243"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.851488" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.851255" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.851240" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.852239" level="INFO">${j} = 59</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.851875" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.853054" level="INFO">${item} =         {
          "id": "59",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.852454" elapsed="0.000665"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.853279" elapsed="0.000182"/>
</kw>
<var name="${iteration}">59</var>
<status status="PASS" start="2026-05-25T01:55:37.851210" elapsed="0.002288"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.853916" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.853676" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.853662" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.854669" level="INFO">${j} = 60</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.854319" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.855464" level="INFO">${item} =         {
          "id": "60",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.854850" elapsed="0.000642"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.855647" elapsed="0.000181"/>
</kw>
<var name="${iteration}">60</var>
<status status="PASS" start="2026-05-25T01:55:37.853633" elapsed="0.002232"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.856296" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.856044" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.856029" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.857035" level="INFO">${j} = 61</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.856683" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.857835" level="INFO">${item} =         {
          "id": "61",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.857239" elapsed="0.000624"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.858015" elapsed="0.000198"/>
</kw>
<var name="${iteration}">61</var>
<status status="PASS" start="2026-05-25T01:55:37.856000" elapsed="0.002250"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.858659" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.858427" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.858412" elapsed="0.000490"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.859403" level="INFO">${j} = 62</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.859041" elapsed="0.000388"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.860191" level="INFO">${item} =         {
          "id": "62",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.859580" elapsed="0.000640"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.860372" elapsed="0.000183"/>
</kw>
<var name="${iteration}">62</var>
<status status="PASS" start="2026-05-25T01:55:37.858383" elapsed="0.002209"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.861006" elapsed="0.000218"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.860774" elapsed="0.000488"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.860757" elapsed="0.000530"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.861776" level="INFO">${j} = 63</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.861429" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.862566" level="INFO">${item} =         {
          "id": "63",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.861955" elapsed="0.000639"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.862747" elapsed="0.000179"/>
</kw>
<var name="${iteration}">63</var>
<status status="PASS" start="2026-05-25T01:55:37.860727" elapsed="0.002236"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.863908" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.863664" elapsed="0.000519"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.863141" elapsed="0.001069"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.864709" level="INFO">${j} = 64</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.864355" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.865534" level="INFO">${item} =         {
          "id": "64",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.864892" elapsed="0.000670"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.865719" elapsed="0.000183"/>
</kw>
<var name="${iteration}">64</var>
<status status="PASS" start="2026-05-25T01:55:37.863112" elapsed="0.002828"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.866371" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.866136" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.866121" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.867136" level="INFO">${j} = 65</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.866761" elapsed="0.000402"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.867915" level="INFO">${item} =         {
          "id": "65",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.867318" elapsed="0.000626"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.868113" elapsed="0.000185"/>
</kw>
<var name="${iteration}">65</var>
<status status="PASS" start="2026-05-25T01:55:37.866090" elapsed="0.002246"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.868747" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.868513" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.868498" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.869516" level="INFO">${j} = 66</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.869166" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.870314" level="INFO">${item} =         {
          "id": "66",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.869696" elapsed="0.000646"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.870497" elapsed="0.000181"/>
</kw>
<var name="${iteration}">66</var>
<status status="PASS" start="2026-05-25T01:55:37.868469" elapsed="0.002246"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.871143" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.870893" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.870878" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.871878" level="INFO">${j} = 67</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.871530" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.872674" level="INFO">${item} =         {
          "id": "67",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.872057" elapsed="0.000646"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.872863" elapsed="0.000194"/>
</kw>
<var name="${iteration}">67</var>
<status status="PASS" start="2026-05-25T01:55:37.870849" elapsed="0.002265"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.873531" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.873294" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.873279" elapsed="0.000502"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.874290" level="INFO">${j} = 68</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.873923" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.875091" level="INFO">${item} =         {
          "id": "68",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.874473" elapsed="0.000648"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.875278" elapsed="0.000184"/>
</kw>
<var name="${iteration}">68</var>
<status status="PASS" start="2026-05-25T01:55:37.873250" elapsed="0.002282"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.875954" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.875714" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.875698" elapsed="0.000523"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.876711" level="INFO">${j} = 69</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.876362" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.877537" level="INFO">${item} =         {
          "id": "69",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.876892" elapsed="0.000673"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.877721" elapsed="0.000181"/>
</kw>
<var name="${iteration}">69</var>
<status status="PASS" start="2026-05-25T01:55:37.875670" elapsed="0.002270"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.878373" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.878137" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.878122" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.879128" level="INFO">${j} = 70</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.878762" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.879916" level="INFO">${item} =         {
          "id": "70",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.879316" elapsed="0.000628"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.880115" elapsed="0.000184"/>
</kw>
<var name="${iteration}">70</var>
<status status="PASS" start="2026-05-25T01:55:37.878091" elapsed="0.002245"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.880870" elapsed="0.000216"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.880627" elapsed="0.000503"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.880500" elapsed="0.000655"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.881651" level="INFO">${j} = 71</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.881299" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.882461" level="INFO">${item} =         {
          "id": "71",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.881835" elapsed="0.000655"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.882646" elapsed="0.000187"/>
</kw>
<var name="${iteration}">71</var>
<status status="PASS" start="2026-05-25T01:55:37.880471" elapsed="0.002400"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.883306" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.883051" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.883036" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.884044" level="INFO">${j} = 72</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.883694" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.884839" level="INFO">${item} =         {
          "id": "72",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.884242" elapsed="0.000625"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.885032" elapsed="0.000211"/>
</kw>
<var name="${iteration}">72</var>
<status status="PASS" start="2026-05-25T01:55:37.883007" elapsed="0.002273"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.885695" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.885460" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.885445" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.886451" level="INFO">${j} = 73</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.886100" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.887248" level="INFO">${item} =         {
          "id": "73",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.886632" elapsed="0.000677"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.887469" elapsed="0.000184"/>
</kw>
<var name="${iteration}">73</var>
<status status="PASS" start="2026-05-25T01:55:37.885416" elapsed="0.002276"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.888126" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.887872" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.887857" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.888870" level="INFO">${j} = 74</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.888519" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.889697" level="INFO">${item} =         {
          "id": "74",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.889094" elapsed="0.000632"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.889881" elapsed="0.000199"/>
</kw>
<var name="${iteration}">74</var>
<status status="PASS" start="2026-05-25T01:55:37.887828" elapsed="0.002292"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.890534" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.890299" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.890284" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.891293" level="INFO">${j} = 75</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.890921" elapsed="0.000398"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.892090" level="INFO">${item} =         {
          "id": "75",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.891474" elapsed="0.000646"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.892276" elapsed="0.000181"/>
</kw>
<var name="${iteration}">75</var>
<status status="PASS" start="2026-05-25T01:55:37.890255" elapsed="0.002239"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.892905" elapsed="0.000213"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.892671" elapsed="0.000490"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.892657" elapsed="0.000528"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.893680" level="INFO">${j} = 76</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.893331" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.894474" level="INFO">${item} =         {
          "id": "76",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.893861" elapsed="0.000642"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.894657" elapsed="0.000180"/>
</kw>
<var name="${iteration}">76</var>
<status status="PASS" start="2026-05-25T01:55:37.892627" elapsed="0.002247"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.895305" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.895052" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.895037" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.896041" level="INFO">${j} = 77</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.895693" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.896838" level="INFO">${item} =         {
          "id": "77",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.896239" elapsed="0.000627"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.897036" elapsed="0.000203"/>
</kw>
<var name="${iteration}">77</var>
<status status="PASS" start="2026-05-25T01:55:37.895008" elapsed="0.002269"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.897818" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.897571" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.897440" elapsed="0.000641"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.898582" level="INFO">${j} = 78</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.898227" elapsed="0.000413"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.899439" level="INFO">${item} =         {
          "id": "78",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.898800" elapsed="0.000668"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.899626" elapsed="0.000183"/>
</kw>
<var name="${iteration}">78</var>
<status status="PASS" start="2026-05-25T01:55:37.897410" elapsed="0.002437"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.900284" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.900028" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.900013" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.901085" level="INFO">${j} = 79</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.900674" elapsed="0.000439"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.901872" level="INFO">${item} =         {
          "id": "79",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.901270" elapsed="0.000630"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.902055" elapsed="0.000201"/>
</kw>
<var name="${iteration}">79</var>
<status status="PASS" start="2026-05-25T01:55:37.899983" elapsed="0.002310"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.902705" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.902471" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.902456" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.903458" level="INFO">${j} = 80</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.903108" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.904249" level="INFO">${item} =         {
          "id": "80",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.903637" elapsed="0.000641"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.904432" elapsed="0.000183"/>
</kw>
<var name="${iteration}">80</var>
<status status="PASS" start="2026-05-25T01:55:37.902427" elapsed="0.002225"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.905103" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.904832" elapsed="0.000496"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.904817" elapsed="0.000536"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.905848" level="INFO">${j} = 81</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.905497" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.906645" level="INFO">${item} =         {
          "id": "81",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.906027" elapsed="0.000646"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.906826" elapsed="0.000181"/>
</kw>
<var name="${iteration}">81</var>
<status status="PASS" start="2026-05-25T01:55:37.904788" elapsed="0.002256"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.907473" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.907240" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.907226" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.908224" level="INFO">${j} = 82</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.907859" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.909010" level="INFO">${item} =         {
          "id": "82",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.908403" elapsed="0.000635"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.909217" elapsed="0.000182"/>
</kw>
<var name="${iteration}">82</var>
<status status="PASS" start="2026-05-25T01:55:37.907196" elapsed="0.002239"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.909883" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.909611" elapsed="0.000515"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.909597" elapsed="0.000554"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.910645" level="INFO">${j} = 83</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.910294" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.911450" level="INFO">${item} =         {
          "id": "83",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.910833" elapsed="0.000645"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.911634" elapsed="0.000185"/>
</kw>
<var name="${iteration}">83</var>
<status status="PASS" start="2026-05-25T01:55:37.909568" elapsed="0.002289"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.912289" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.912036" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.912021" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.913050" level="INFO">${j} = 84</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.912677" elapsed="0.000418"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.913850" level="INFO">${item} =         {
          "id": "84",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.913252" elapsed="0.000626"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.914032" elapsed="0.000198"/>
</kw>
<var name="${iteration}">84</var>
<status status="PASS" start="2026-05-25T01:55:37.911992" elapsed="0.002275"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.914802" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.914558" elapsed="0.000468"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.914432" elapsed="0.000620"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.915566" level="INFO">${j} = 85</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.915211" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.916368" level="INFO">${item} =         {
          "id": "85",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.915749" elapsed="0.000647"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.916554" elapsed="0.000187"/>
</kw>
<var name="${iteration}">85</var>
<status status="PASS" start="2026-05-25T01:55:37.914403" elapsed="0.002378"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.917251" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.916990" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.916975" elapsed="0.000522"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.917986" level="INFO">${j} = 86</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.917639" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.918780" level="INFO">${item} =         {
          "id": "86",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.918184" elapsed="0.000624"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.918964" elapsed="0.000198"/>
</kw>
<var name="${iteration}">86</var>
<status status="PASS" start="2026-05-25T01:55:37.916945" elapsed="0.002256"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.919617" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.919382" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.919367" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.920376" level="INFO">${j} = 87</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.920007" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.921194" level="INFO">${item} =         {
          "id": "87",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.920557" elapsed="0.000665"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.921416" elapsed="0.000187"/>
</kw>
<var name="${iteration}">87</var>
<status status="PASS" start="2026-05-25T01:55:37.919338" elapsed="0.002303"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.922057" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.921822" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.921808" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.922812" level="INFO">${j} = 88</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.922463" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.923608" level="INFO">${item} =         {
          "id": "88",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.922994" elapsed="0.000642"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.923792" elapsed="0.000185"/>
</kw>
<var name="${iteration}">88</var>
<status status="PASS" start="2026-05-25T01:55:37.921778" elapsed="0.002236"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.924447" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.924212" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.924197" elapsed="0.000493"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.925228" level="INFO">${j} = 89</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.924858" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.926001" level="INFO">${item} =         {
          "id": "89",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.925410" elapsed="0.000619"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.926201" elapsed="0.000182"/>
</kw>
<var name="${iteration}">89</var>
<status status="PASS" start="2026-05-25T01:55:37.924167" elapsed="0.002254"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.926836" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.926596" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.926581" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.927585" level="INFO">${j} = 90</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.927238" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.928375" level="INFO">${item} =         {
          "id": "90",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.927764" elapsed="0.000639"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.928557" elapsed="0.000181"/>
</kw>
<var name="${iteration}">90</var>
<status status="PASS" start="2026-05-25T01:55:37.926552" elapsed="0.002223"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.929223" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.928969" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.928953" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.929958" level="INFO">${j} = 91</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.929609" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.930754" level="INFO">${item} =         {
          "id": "91",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.930153" elapsed="0.000629"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.930936" elapsed="0.000198"/>
</kw>
<var name="${iteration}">91</var>
<status status="PASS" start="2026-05-25T01:55:37.928924" elapsed="0.002248"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.931705" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.931462" elapsed="0.000466"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.931335" elapsed="0.000618"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.932464" level="INFO">${j} = 92</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.932110" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.933332" level="INFO">${item} =         {
          "id": "92",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.932683" elapsed="0.000678"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.933518" elapsed="0.000183"/>
</kw>
<var name="${iteration}">92</var>
<status status="PASS" start="2026-05-25T01:55:37.931305" elapsed="0.002434"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.934170" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.933918" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.933903" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.934907" level="INFO">${j} = 93</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.934559" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.935703" level="INFO">${item} =         {
          "id": "93",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.935103" elapsed="0.000629"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.935886" elapsed="0.000196"/>
</kw>
<var name="${iteration}">93</var>
<status status="PASS" start="2026-05-25T01:55:37.933874" elapsed="0.002247"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.936533" elapsed="0.000205"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.936299" elapsed="0.000510"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.936285" elapsed="0.000549"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.937356" level="INFO">${j} = 94</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.936977" elapsed="0.000406"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.938152" level="INFO">${item} =         {
          "id": "94",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.937536" elapsed="0.000644"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.938334" elapsed="0.000182"/>
</kw>
<var name="${iteration}">94</var>
<status status="PASS" start="2026-05-25T01:55:37.936255" elapsed="0.002297"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.938968" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.938732" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.938717" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.939722" level="INFO">${j} = 95</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.939373" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.940518" level="INFO">${item} =         {
          "id": "95",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.939903" elapsed="0.000643"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.940701" elapsed="0.000194"/>
</kw>
<var name="${iteration}">95</var>
<status status="PASS" start="2026-05-25T01:55:37.938687" elapsed="0.002246"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.941370" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.941132" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.941118" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.942129" level="INFO">${j} = 96</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.941760" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.942909" level="INFO">${item} =         {
          "id": "96",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.942310" elapsed="0.000627"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.943116" elapsed="0.000183"/>
</kw>
<var name="${iteration}">96</var>
<status status="PASS" start="2026-05-25T01:55:37.941086" elapsed="0.002251"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.943748" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.943514" elapsed="0.000484"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.943499" elapsed="0.000526"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.944535" level="INFO">${j} = 97</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.944185" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.945350" level="INFO">${item} =         {
          "id": "97",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.944729" elapsed="0.000650"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.945534" elapsed="0.000181"/>
</kw>
<var name="${iteration}">97</var>
<status status="PASS" start="2026-05-25T01:55:37.943470" elapsed="0.002285"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.946192" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.945937" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.945922" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.946932" level="INFO">${j} = 98</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.946583" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.947727" level="INFO">${item} =         {
          "id": "98",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.947130" elapsed="0.000626"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.947911" elapsed="0.000198"/>
</kw>
<var name="${iteration}">98</var>
<status status="PASS" start="2026-05-25T01:55:37.945892" elapsed="0.002255"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.948676" elapsed="0.000214"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.948435" elapsed="0.000500"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.948311" elapsed="0.000648"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.949472" level="INFO">${j} = 99</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.949120" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.950272" level="INFO">${item} =         {
          "id": "99",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
 ...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.949653" elapsed="0.000648"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.950456" elapsed="0.000195"/>
</kw>
<var name="${iteration}">99</var>
<status status="PASS" start="2026-05-25T01:55:37.948281" elapsed="0.002407"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.951116" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.950866" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.950851" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.951861" level="INFO">${j} = 100</msg>
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.951507" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.952655" level="INFO">${item} =         {
          "id": "100",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
...</msg>
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:37.952042" elapsed="0.000653"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.952856" elapsed="0.000183"/>
</kw>
<var name="${iteration}">100</var>
<status status="PASS" start="2026-05-25T01:55:37.950822" elapsed="0.002272"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="PASS" start="2026-05-25T01:55:37.711141" elapsed="0.241985"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.954408" level="INFO">${final_text} = {
  "flow": [
        {
          "id": "1",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "...</msg>
<var>${final_text}</var>
<arg>SEPARATOR=</arg>
<arg>${prolog}</arg>
<arg>${endline}</arg>
<arg>@{items}</arg>
<arg>${endline}</arg>
<arg>${epilog}</arg>
<doc>Catenates the given items together and returns the resulted string.</doc>
<status status="PASS" start="2026-05-25T01:55:37.953280" elapsed="0.001156"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:55:37.954495" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:55:37.954649" level="INFO">${data} = {
  "flow": [
        {
          "id": "1",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "...</msg>
<var>${data}</var>
<arg>folder=${folder}</arg>
<arg>name_prefix=post_</arg>
<arg>base_name=${base_name}</arg>
<arg>extension=${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>endline=${endline}</arg>
<arg>iterations=${iterations}</arg>
<arg>iter_start=${iter_start}</arg>
<arg>iter_j_offset=${iter_j_offset}</arg>
<doc>Read a template from folder, strip endline, make changes according to mapping, return the result.
If ${iterations} value is present, put text together from "prolog", "item" and "epilog" parts,
where additional template variable ${i} goes from 1, by one 100 times.
Template variable ${j} is calculated as ${i} incremented by offset 0 ( j = i + iter_j_offset )
used to create non uniform data in order to be able to validate UPDATE operations.
POST (as opposed to PUT) needs slightly different data, ${name_prefix} may be used to distinguish.
(Actually, it is GET who formats data differently when URI is a top-level container.)</doc>
<status status="PASS" start="2026-05-25T01:55:37.657450" elapsed="0.297226"/>
</kw>
<kw name="Resolve_Jmes_Path" owner="TemplatedRequests">
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:55:37.955980" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow/jmespath.expr' does not exist.</msg>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:55:37.955743" elapsed="0.000301">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/openflowplugin/add-flow/jmespath.expr' does not exist.</status>
</kw>
<msg time="2026-05-25T01:55:37.956155" level="INFO">${read_jmes_file} = False</msg>
<var>${read_jmes_file}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:55:37.955405" elapsed="0.000775"/>
</kw>
<if>
<branch type="IF" condition="${read_jmes_file} == ${true}">
<kw name="Get File" owner="OperatingSystem">
<var>${jmes_expression}</var>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.956493" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:37.956250" elapsed="0.000301"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.957081" level="INFO">${jmes_expression} = None</msg>
<var>${jmes_expression}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:37.956773" elapsed="0.000336"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.956575" elapsed="0.000570"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.956231" elapsed="0.000936"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.959483" level="INFO">${expression} = </msg>
<var>${expression}</var>
<arg>${read_jmes_file} == ${true}</arg>
<arg>${jmes_expression}</arg>
<arg>${EMPTY}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:37.957321" elapsed="0.002188"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-05-25T01:55:37.959561" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:37.959713" level="INFO">${jmes_expression} = </msg>
<var>${jmes_expression}</var>
<arg>${folder}</arg>
<doc>Reads JMES path from file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Reconciliation/../../../variables/openflowplugin/add-flow/jmespath.expr if the file exists and
returns the JMES path. Empty string is returned otherwise.</doc>
<status status="PASS" start="2026-05-25T01:55:37.955057" elapsed="0.004681"/>
</kw>
<kw name="Post_To_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.961310" level="INFO">/rests/data/opendaylight-inventory:nodes/node=openflow%3A3/flow-node-inventory:table=0</msg>
<arg>${uri}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:37.961042" elapsed="0.000313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.961745" level="INFO">{
  "flow": [
        {
          "id": "1",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.1/32"
          },
          "flow-name": "Flow-1",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 1
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "2",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.2/32"
          },
          "flow-name": "Flow-2",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 2
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "3",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.3/32"
          },
          "flow-name": "Flow-3",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 3
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "4",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.4/32"
          },
          "flow-name": "Flow-4",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 4
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "5",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.5/32"
          },
          "flow-name": "Flow-5",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 5
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "6",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.6/32"
          },
          "flow-name": "Flow-6",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 6
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "7",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.7/32"
          },
          "flow-name": "Flow-7",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 7
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "8",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.8/32"
          },
          "flow-name": "Flow-8",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 8
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "9",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.9/32"
          },
          "flow-name": "Flow-9",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 9
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "10",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.10/32"
          },
          "flow-name": "Flow-10",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 10
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "11",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.11/32"
          },
          "flow-name": "Flow-11",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 11
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "12",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.12/32"
          },
          "flow-name": "Flow-12",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 12
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "13",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.13/32"
          },
          "flow-name": "Flow-13",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 13
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "14",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.14/32"
          },
          "flow-name": "Flow-14",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 14
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "15",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.15/32"
          },
          "flow-name": "Flow-15",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 15
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "16",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.16/32"
          },
          "flow-name": "Flow-16",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 16
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "17",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.17/32"
          },
          "flow-name": "Flow-17",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 17
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "18",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.18/32"
          },
          "flow-name": "Flow-18",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 18
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "19",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.19/32"
          },
          "flow-name": "Flow-19",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 19
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "20",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.20/32"
          },
          "flow-name": "Flow-20",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 20
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "21",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.21/32"
          },
          "flow-name": "Flow-21",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 21
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "22",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.22/32"
          },
          "flow-name": "Flow-22",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 22
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "23",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.23/32"
          },
          "flow-name": "Flow-23",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 23
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "24",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.24/32"
          },
          "flow-name": "Flow-24",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 24
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "25",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.25/32"
          },
          "flow-name": "Flow-25",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 25
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "26",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.26/32"
          },
          "flow-name": "Flow-26",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 26
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "27",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.27/32"
          },
          "flow-name": "Flow-27",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 27
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "28",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.28/32"
          },
          "flow-name": "Flow-28",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 28
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "29",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.29/32"
          },
          "flow-name": "Flow-29",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 29
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "30",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.30/32"
          },
          "flow-name": "Flow-30",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 30
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "31",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.31/32"
          },
          "flow-name": "Flow-31",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 31
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "32",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.32/32"
          },
          "flow-name": "Flow-32",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 32
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "33",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.33/32"
          },
          "flow-name": "Flow-33",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 33
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "34",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.34/32"
          },
          "flow-name": "Flow-34",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 34
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "35",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.35/32"
          },
          "flow-name": "Flow-35",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 35
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "36",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.36/32"
          },
          "flow-name": "Flow-36",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 36
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "37",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.37/32"
          },
          "flow-name": "Flow-37",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 37
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "38",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.38/32"
          },
          "flow-name": "Flow-38",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 38
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "39",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.39/32"
          },
          "flow-name": "Flow-39",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 39
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "40",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.40/32"
          },
          "flow-name": "Flow-40",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 40
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "41",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.41/32"
          },
          "flow-name": "Flow-41",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 41
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "42",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.42/32"
          },
          "flow-name": "Flow-42",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 42
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "43",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.43/32"
          },
          "flow-name": "Flow-43",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 43
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "44",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.44/32"
          },
          "flow-name": "Flow-44",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 44
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "45",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.45/32"
          },
          "flow-name": "Flow-45",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 45
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "46",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.46/32"
          },
          "flow-name": "Flow-46",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 46
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "47",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.47/32"
          },
          "flow-name": "Flow-47",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 47
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "48",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.48/32"
          },
          "flow-name": "Flow-48",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 48
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "49",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.49/32"
          },
          "flow-name": "Flow-49",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 49
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "50",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.50/32"
          },
          "flow-name": "Flow-50",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 50
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "51",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.51/32"
          },
          "flow-name": "Flow-51",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 51
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "52",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.52/32"
          },
          "flow-name": "Flow-52",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 52
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "53",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.53/32"
          },
          "flow-name": "Flow-53",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 53
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "54",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.54/32"
          },
          "flow-name": "Flow-54",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 54
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "55",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.55/32"
          },
          "flow-name": "Flow-55",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 55
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "56",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.56/32"
          },
          "flow-name": "Flow-56",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 56
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "57",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.57/32"
          },
          "flow-name": "Flow-57",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 57
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "58",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.58/32"
          },
          "flow-name": "Flow-58",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 58
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "59",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.59/32"
          },
          "flow-name": "Flow-59",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 59
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "60",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.60/32"
          },
          "flow-name": "Flow-60",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 60
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "61",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.61/32"
          },
          "flow-name": "Flow-61",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 61
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "62",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.62/32"
          },
          "flow-name": "Flow-62",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 62
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "63",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.63/32"
          },
          "flow-name": "Flow-63",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 63
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "64",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.64/32"
          },
          "flow-name": "Flow-64",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 64
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "65",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.65/32"
          },
          "flow-name": "Flow-65",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 65
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "66",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.66/32"
          },
          "flow-name": "Flow-66",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 66
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "67",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.67/32"
          },
          "flow-name": "Flow-67",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 67
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "68",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.68/32"
          },
          "flow-name": "Flow-68",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 68
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "69",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.69/32"
          },
          "flow-name": "Flow-69",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 69
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "70",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.70/32"
          },
          "flow-name": "Flow-70",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 70
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "71",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.71/32"
          },
          "flow-name": "Flow-71",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 71
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "72",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.72/32"
          },
          "flow-name": "Flow-72",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 72
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "73",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.73/32"
          },
          "flow-name": "Flow-73",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 73
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "74",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.74/32"
          },
          "flow-name": "Flow-74",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 74
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "75",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.75/32"
          },
          "flow-name": "Flow-75",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 75
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "76",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.76/32"
          },
          "flow-name": "Flow-76",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 76
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "77",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.77/32"
          },
          "flow-name": "Flow-77",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 77
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "78",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.78/32"
          },
          "flow-name": "Flow-78",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 78
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "79",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.79/32"
          },
          "flow-name": "Flow-79",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 79
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "80",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.80/32"
          },
          "flow-name": "Flow-80",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 80
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "81",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.81/32"
          },
          "flow-name": "Flow-81",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 81
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "82",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.82/32"
          },
          "flow-name": "Flow-82",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 82
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "83",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.83/32"
          },
          "flow-name": "Flow-83",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 83
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "84",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.84/32"
          },
          "flow-name": "Flow-84",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 84
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "85",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.85/32"
          },
          "flow-name": "Flow-85",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 85
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "86",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.86/32"
          },
          "flow-name": "Flow-86",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 86
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "87",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.87/32"
          },
          "flow-name": "Flow-87",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 87
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "88",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.88/32"
          },
          "flow-name": "Flow-88",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 88
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "89",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.89/32"
          },
          "flow-name": "Flow-89",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 89
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "90",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.90/32"
          },
          "flow-name": "Flow-90",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 90
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "91",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.91/32"
          },
          "flow-name": "Flow-91",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 91
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "92",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.92/32"
          },
          "flow-name": "Flow-92",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 92
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "93",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.93/32"
          },
          "flow-name": "Flow-93",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 93
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "94",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.94/32"
          },
          "flow-name": "Flow-94",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 94
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "95",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.95/32"
          },
          "flow-name": "Flow-95",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 95
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "96",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.96/32"
          },
          "flow-name": "Flow-96",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 96
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "97",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.97/32"
          },
          "flow-name": "Flow-97",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 97
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "98",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.98/32"
          },
          "flow-name": "Flow-98",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 98
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "99",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.99/32"
          },
          "flow-name": "Flow-99",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 99
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "100",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.100/32"
          },
          "flow-name": "Flow-100",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 100
                      }
                    }
                  ]
                }
              }
            ]
          }
        }
  ]
}</msg>
<arg>${data}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:37.961508" elapsed="0.000926"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.962841" level="INFO">{'Content-Type': 'application/json'}</msg>
<arg>${content_type}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:37.962592" elapsed="0.000292"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.963292" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:37.963037" elapsed="0.000298"/>
</kw>
<kw name="Join_Two_Headers" owner="TemplatedRequests">
<kw name="Copy Dictionary" owner="Collections">
<msg time="2026-05-25T01:55:37.964146" level="INFO">${accumulator} = {'Content-Type': 'application/json'}</msg>
<var>${accumulator}</var>
<arg>${first}</arg>
<doc>Returns a copy of the given dictionary.</doc>
<status status="PASS" start="2026-05-25T01:55:37.963935" elapsed="0.000237"/>
</kw>
<kw name="Get Dictionary Items" owner="Collections">
<msg time="2026-05-25T01:55:37.964493" level="INFO">${items_to_add} = []</msg>
<var>${items_to_add}</var>
<arg>${second}</arg>
<doc>Returns items of the given ``dictionary`` as a list.</doc>
<status status="PASS" start="2026-05-25T01:55:37.964325" elapsed="0.000193"/>
</kw>
<kw name="Set To Dictionary" owner="Collections">
<arg>${accumulator}</arg>
<arg>@{items_to_add}</arg>
<doc>Adds the given ``key_value_pairs`` and/or ``items`` to the ``dictionary``.</doc>
<status status="PASS" start="2026-05-25T01:55:37.964679" elapsed="0.000196"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:37.965291" level="INFO">{'Content-Type': 'application/json'}</msg>
<arg>${accumulator}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:37.965028" elapsed="0.000306"/>
</kw>
<return>
<value>${accumulator}</value>
<status status="PASS" start="2026-05-25T01:55:37.965377" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:55:37.965531" level="INFO">${headers} = {'Content-Type': 'application/json'}</msg>
<var>${headers}</var>
<arg>first=${content_type}</arg>
<arg>second=${accept}</arg>
<doc>Take two dicts, join them, return result. Second argument values take precedence.</doc>
<status status="PASS" start="2026-05-25T01:55:37.963536" elapsed="0.002019"/>
</kw>
<if>
<branch type="IF" condition="&quot;&quot;&quot;${http_timeout}&quot;&quot;&quot; == &quot;&quot;&quot;${EMPTY}&quot;&quot;&quot;">
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:37.998194" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3/flow-node-inventory:table=0 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A3/flow-node-inventory:table=0 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Content-Length': '76286', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body={
  "flow": [
        {
          "id": "1",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.1/32"
          },
          "flow-name": "Flow-1",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 1
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "2",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.2/32"
          },
          "flow-name": "Flow-2",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 2
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "3",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.3/32"
          },
          "flow-name": "Flow-3",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 3
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "4",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.4/32"
          },
          "flow-name": "Flow-4",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 4
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "5",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.5/32"
          },
          "flow-name": "Flow-5",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 5
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "6",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.6/32"
          },
          "flow-name": "Flow-6",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 6
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "7",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.7/32"
          },
          "flow-name": "Flow-7",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 7
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "8",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.8/32"
          },
          "flow-name": "Flow-8",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 8
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "9",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.9/32"
          },
          "flow-name": "Flow-9",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 9
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "10",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.10/32"
          },
          "flow-name": "Flow-10",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 10
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "11",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.11/32"
          },
          "flow-name": "Flow-11",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 11
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "12",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.12/32"
          },
          "flow-name": "Flow-12",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 12
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "13",
          "priority": 100,
          "table_id": 0,
          "match": {
            "ethernet-match": {
              "ethernet-type": {
                "type": 2048
              }
            },
            "ipv4-destination": "10.0.10.13/32"
          },
          "flow-name": "Flow-13",
          "instructions": {
            "instruction": [
              {
                "order": 1,
                "apply-actions": {
                  "action": [
                    {
                      "order": 1,
                      "group-action": {
                        "group-id": 13
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "id": "14",
          "priority": 100,
          "table_id": 0,
          "match": ... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:55:37.998352" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3/flow-node-inventory:table=0 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3/flow-node-inventory:table=0/flow=69', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:37.998465" level="INFO">${response} = &lt;Response [201]&gt;</msg>
<var>${response}</var>
<arg>${session}</arg>
<arg>${uri}</arg>
<arg>data=${data}</arg>
<arg>headers=${headers}</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:37.967809" elapsed="0.030686"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.965775" elapsed="0.032767"/>
</branch>
<branch type="ELSE">
<kw name="POST On Session" owner="RequestsLibrary">
<var>${response}</var>
<arg>${session}</arg>
<arg>${uri}</arg>
<arg>data=${data}</arg>
<arg>headers=${headers}</arg>
<arg>timeout=${http_timeout}</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:37.998727" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:37.998570" elapsed="0.000230"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.965606" elapsed="0.033215"/>
</if>
<kw name="Check_Status_Code" owner="TemplatedRequests">
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:38.002104" level="INFO"/>
<arg>${response.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:37.999857" elapsed="0.002290"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:37.999635" elapsed="0.002548"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:37.999616" elapsed="0.002592"/>
</if>
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:38.004666" level="INFO">201</msg>
<arg>${response.status_code}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:38.002481" elapsed="0.002230"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:38.002262" elapsed="0.002483"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:38.002245" elapsed="0.002524"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:38.005344" level="INFO">${status_codes_type} = list</msg>
<var>${status_codes_type}</var>
<arg>type($additional_allowed_status_codes).__name__</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:38.004950" elapsed="0.000421"/>
</kw>
<if>
<branch type="IF" condition="&quot;${status_codes_type}&quot;!=&quot;list&quot;">
<kw name="Create List" owner="BuiltIn">
<var>${allowed_status_codes_list}</var>
<arg>${additional_allowed_status_codes}</arg>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:38.005689" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:38.005440" elapsed="0.000308"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:38.006270" level="INFO">${allowed_status_codes_list} = []</msg>
<var>${allowed_status_codes_list}</var>
<arg>${additional_allowed_status_codes}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:38.005948" elapsed="0.000348"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:38.005775" elapsed="0.000557"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:38.005422" elapsed="0.000931"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:38.006883" level="INFO">${status_codes_type} = list</msg>
<var>${status_codes_type}</var>
<arg>type($explicit_status_codes).__name__</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:38.006524" elapsed="0.000385"/>
</kw>
<if>
<branch type="IF" condition="&quot;${status_codes_type}&quot;!=&quot;list&quot;">
<kw name="Create List" owner="BuiltIn">
<var>${explicit_status_codes_list}</var>
<arg>${explicit_status_codes}</arg>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:38.007241" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:38.006978" elapsed="0.000321"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:38.007784" level="INFO">${explicit_status_codes_list} = []</msg>
<var>${explicit_status_codes_list}</var>
<arg>${explicit_status_codes}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:38.007493" elapsed="0.000316"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:38.007322" elapsed="0.000522"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:38.006960" elapsed="0.000906"/>
</if>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>"""${explicit_status_codes_list}""" != """${NO_STATUS_CODES}"""</arg>
<arg>Collections.List_Should_Contain_Value</arg>
<arg>${explicit_status_codes_list}</arg>
<arg>${response.status_code}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:38.008016" elapsed="0.000360"/>
</kw>
<kw name="Combine Lists" owner="Collections">
<msg time="2026-05-25T01:55:38.008828" level="INFO">${final_allowd_list} = [200, 201, 204]</msg>
<var>${final_allowd_list}</var>
<arg>${ALLOWED_STATUS_CODES}</arg>
<arg>${allowed_status_codes_list}</arg>
<doc>Combines the given ``lists`` together and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:38.008553" elapsed="0.000301"/>
</kw>
<kw name="List Should Contain Value" owner="Collections">
<arg>${final_allowd_list}</arg>
<arg>${response.status_code}</arg>
<doc>Fails if the ``value`` is not found from ``list``.</doc>
<status status="PASS" start="2026-05-25T01:55:38.009008" elapsed="0.002208"/>
</kw>
<arg>${response}</arg>
<arg>additional_allowed_status_codes=${additional_allowed_status_codes}</arg>
<arg>explicit_status_codes=${explicit_status_codes}</arg>
<doc>Log response text, check status_code is one of allowed ones. In cases where this keyword is
called in a WUKS it could end up logging tons of data and it may be desired to skip the logging by passing
log_response=False, but by default it remains True.</doc>
<status status="PASS" start="2026-05-25T01:55:37.999198" elapsed="0.012081"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-05-25T01:55:38.011456" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:38.011350" elapsed="0.000150"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:38.011331" elapsed="0.000191"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<msg time="2026-05-25T01:55:38.013926" level="INFO">${text_normalized} = </msg>
<var>${text_normalized}</var>
<arg>${response.text}</arg>
<arg>jmes_path=${jmes_path}</arg>
<doc>Attempt to return sorted indented JSON string.</doc>
<status status="PASS" start="2026-05-25T01:55:38.011668" elapsed="0.002285"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="PASS" start="2026-05-25T01:55:38.014001" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:55:38.014172" level="INFO">${response_text} = </msg>
<var>${response_text}</var>
<arg>uri=${uri}</arg>
<arg>data=${data}</arg>
<arg>content_type=${content_type}</arg>
<arg>accept=${accept}</arg>
<arg>session=${session}</arg>
<arg>jmes_path=${jmes_expression}</arg>
<arg>normalize_json=${normalize_json}</arg>
<arg>additional_allowed_status_codes=${additional_allowed_status_codes}</arg>
<arg>explicit_status_codes=${explicit_status_codes}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>POST data to given URI, check status code and return response text.
${content_type} and ${accept} are mandatory Python objects with headers to use.
If ${normalize_json}, normalize text before returning.</doc>
<status status="PASS" start="2026-05-25T01:55:37.960058" elapsed="0.054139"/>
</kw>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-05-25T01:55:38.014303" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:55:38.014457" level="INFO">${response_text} = </msg>
<var>${response_text}</var>
<arg>folder=${folder}</arg>
<arg>base_name=data</arg>
<arg>extension=json</arg>
<arg>accept=${ACCEPT_EMPTY}</arg>
<arg>content_type=${HEADERS_YANG_JSON}</arg>
<arg>mapping=${mapping}</arg>
<arg>session=${session}</arg>
<arg>normalize_json=True</arg>
<arg>endline=${\n}</arg>
<arg>iterations=${iterations}</arg>
<arg>iter_start=${iter_start}</arg>
<arg>additional_allowed_status_codes=${additional_allowed_status_codes}</arg>
<arg>explicit_status_codes=${explicit_status_codes}</arg>
<arg>http_timeout=${http_timeout}</arg>
<arg>iter_j_offset=${iter_j_offset}</arg>
<doc>Resolve URI and data from folder, call Post_To_Uri, return response text.</doc>
<status status="PASS" start="2026-05-25T01:55:37.574145" elapsed="0.440337"/>
</kw>
<if>
<branch type="IF" condition="${verify}">
<kw name="Verify_Response_As_Json_Templated" owner="TemplatedRequests">
<arg>response=${response_text}</arg>
<arg>folder=${folder}</arg>
<arg>base_name=response</arg>
<arg>mapping=${mapping}</arg>
<arg>iter_j_offset=${iter_j_offset}</arg>
<doc>Resolve expected JSON data, should be equal to provided ${response}.
JSON normalization is used, endlines enabled for readability.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:38.014828" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:38.014589" elapsed="0.000307"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:38.014571" elapsed="0.000348"/>
</if>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-05-25T01:55:38.014952" elapsed="0.000025"/>
</return>
<arg>folder=${VAR_DIR}/add-flow</arg>
<arg>mapping=${mapping}</arg>
<arg>session=session</arg>
<arg>iterations=${ITER}</arg>
<doc>Add arguments sensible for JSON data, return Post_Templated response text.
Optionally, verification against response.json (no iteration) is called.
Only subset of JSON data is verified and returned if JMES path is specified in
file ${folder}/jmespath.expr.
Response status code must be one of values from ${explicit_status_codes} if specified or one of set
created from all positive HTTP status codes together with ${additional_allowed_status_codes}.</doc>
<status status="PASS" start="2026-05-25T01:55:37.571652" elapsed="0.443436"/>
</kw>
<var name="${switch}">3</var>
<status status="PASS" start="2026-05-25T01:55:37.560325" elapsed="0.454809"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-05-25T01:55:36.612967" elapsed="1.402198"/>
</for>
<doc>Add 100 flows to group type 2 in every switch.</doc>
<status status="PASS" start="2026-05-25T01:55:36.612576" elapsed="1.402713"/>
</test>
<test id="s1-s5-s1-t4" name="Start Mininet Linear" line="57">
<kw name="Start Mininet Linear" owner="MininetKeywords">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:38.016967" level="INFO">Start Mininet Linear</msg>
<arg>Start Mininet Linear</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:38.016749" elapsed="0.000263"/>
</kw>
<kw name="Start Mininet Single Controller" owner="MininetKeywords">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:38.020170" level="INFO">Clear any existing mininet</msg>
<arg>Clear any existing mininet</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:38.019936" elapsed="0.000280"/>
</kw>
<kw name="Clean Mininet System" owner="Utils">
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:38.022667" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:38.022383" elapsed="0.000341"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:38.022364" elapsed="0.000384"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:55:38.023086" level="INFO">index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:55:38.023192" level="INFO">${current_ssh_connection} = index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:55:38.022897" elapsed="0.000321"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:38.023747" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:38.023371" elapsed="0.000422"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:55:38.024332" level="INFO">${conn_id} = 1</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:55:38.023951" elapsed="0.000408"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:55:38.025299" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:55:38.025375" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:55:38.025016" elapsed="0.000383"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:38.025557" elapsed="0.000318"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:55:38.026736" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:55:38.336495" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:55:01 UTC 2026

  System load:  0.03               Processes:             107
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:55:33 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:55:38.026420" elapsed="0.310217"/>
</kw>
<msg time="2026-05-25T01:55:38.336703" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:38.026045" elapsed="0.310721"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:55:38.024624" elapsed="0.312230"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:38.337436" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-05-25T01:55:39.483677" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:39.484058" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:55:39.484220" level="INFO">${stderr} = *** Removing excess controllers/ofprotocols/ofdatapaths/pings/noxes
killall controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec iv...</msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:38.337045" elapsed="1.147238"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:39.484758" elapsed="0.000672"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:39.486592" level="INFO">*** Removing excess controllers/ofprotocols/ofdatapaths/pings/noxes
killall controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec ivs ryu-manager 2&gt; /dev/null
killall -9 controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec ivs ryu-manager 2&gt; /dev/null
pkill -9 -f "sudo mnexec"
*** Removing junk from /tmp
rm -f /tmp/vconn* /tmp/vlogs* /tmp/*.out /tmp/*.log
*** Removing old X11 tunnels
*** Removing excess kernel datapaths
ps ax | egrep -o 'dp[0-9]+' | sed 's/dp/nl:/'
***  Removing OVS datapaths
ovs-vsctl --timeout=1 list-br
ovs-vsctl --timeout=1 list-br
*** Removing all links of the pattern foo-ethX
ip link show | egrep -o '([-_.[:alnum:]]+-eth[[:digit:]]+)'
ip link show
*** Killing stale mininet node processes
pkill -9 -f mininet:
*** Shutting down stale tunnels
pkill -9 -f Tunnel=Ethernet
pkill -9 -f .ssh/mn
rm -f ~/.ssh/mn/*
*** Cleanup complete.</msg>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:39.485906" elapsed="0.000815"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:55:39.487328" elapsed="0.000042"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:39.486989" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:39.486932" elapsed="0.000558"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:55:39.487838" elapsed="0.000069"/>
</return>
<status status="PASS" start="2026-05-25T01:55:39.487607" elapsed="0.000371"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:39.487574" elapsed="0.000457"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:55:39.488138" elapsed="0.000033"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:39.494316" elapsed="0.000996"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:55:39.495700" elapsed="0.000341"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:39.496208" elapsed="0.000101"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:55:39.488886" elapsed="0.007477"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:55:38.021838" elapsed="1.474618"/>
</kw>
<msg time="2026-05-25T01:55:39.496514" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:38.021284" elapsed="1.475286"/>
</kw>
<arg>${system}</arg>
<arg>sudo mn -c</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:55:38.020781" elapsed="1.475872"/>
</kw>
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:39.498759" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:39.498459" elapsed="0.000358"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:39.498440" elapsed="0.000401"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:55:39.499154" level="INFO">index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:55:39.499260" level="INFO">${current_ssh_connection} = index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:55:39.498992" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:39.499811" level="INFO">Attempting to execute command "sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:39.499435" elapsed="0.000494"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:55:39.500475" level="INFO">${conn_id} = 3</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:55:39.500108" elapsed="0.000393"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:55:39.501440" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:55:39.501517" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:55:39.501156" elapsed="0.000385"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:39.501698" elapsed="0.000318"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:55:39.502903" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:55:39.812232" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:55:01 UTC 2026

  System load:  0.03               Processes:             107
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:55:38 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:55:39.502563" elapsed="0.309798"/>
</kw>
<msg time="2026-05-25T01:55:39.812442" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:39.502201" elapsed="0.310319"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:55:39.500740" elapsed="0.311887"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:39.813122" level="INFO">Executing command 'sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh'.</msg>
<msg time="2026-05-25T01:55:39.845642" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-05-25T01:55:39.845756" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:55:39.845801" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:39.812868" elapsed="0.032957"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:39.845992" elapsed="0.000257"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:39.846764" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:39.846472" elapsed="0.000334"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:55:39.847047" elapsed="0.000039"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:39.846902" elapsed="0.000222"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:39.846873" elapsed="0.000287"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:55:39.847325" elapsed="0.000027"/>
</return>
<status status="PASS" start="2026-05-25T01:55:39.847216" elapsed="0.000168"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:39.847200" elapsed="0.000208"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:55:39.847442" elapsed="0.000014"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:39.850304" elapsed="0.000321"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:55:39.850795" elapsed="0.000165"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:39.851127" elapsed="0.000102"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:55:39.847780" elapsed="0.003502"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:55:39.497917" elapsed="0.353456"/>
</kw>
<msg time="2026-05-25T01:55:39.851427" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:39.497352" elapsed="0.354126"/>
</kw>
<arg>${system}</arg>
<arg>sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:55:39.496831" elapsed="0.354727"/>
</kw>
<arg>${mininet}</arg>
<status status="PASS" start="2026-05-25T01:55:38.020429" elapsed="1.831253"/>
</kw>
<kw name="Open_Connection_To_Tools_System" owner="SSHKeywords">
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:55:39.856592" level="INFO">${tools_connection} = 5</msg>
<var>${tools_connection}</var>
<arg>${ip_address}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:55:39.856225" elapsed="0.000393"/>
</kw>
<kw name="Flexible_Mininet_Login" owner="SSHKeywords">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:55:39.858403" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:55:39.858480" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:55:39.858123" elapsed="0.000381"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:39.858665" elapsed="0.000324"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:55:39.859851" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:55:40.179842" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:55:01 UTC 2026

  System load:  0.03               Processes:             107
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:55:39 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:55:39.859536" elapsed="0.320402"/>
</kw>
<msg time="2026-05-25T01:55:40.180001" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:39.859175" elapsed="0.320884"/>
</kw>
<arg>user=${user}</arg>
<arg>password=${password}</arg>
<arg>delay=${delay}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:55:39.857624" elapsed="0.322612"/>
</kw>
<msg time="2026-05-25T01:55:40.180286" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Flexible SSH Login</arg>
<arg>user=${user}</arg>
<arg>password=${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:39.857199" elapsed="0.323132"/>
</kw>
<doc>Call Flexible SSH Login, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:55:39.856799" elapsed="0.323606"/>
</kw>
<return>
<value>${tools_connection}</value>
<status status="PASS" start="2026-05-25T01:55:40.180447" elapsed="0.000034"/>
</return>
<msg time="2026-05-25T01:55:40.180621" level="INFO">${mininet_conn_id} = 5</msg>
<var>${mininet_conn_id}</var>
<arg>ip_address=${mininet}</arg>
<arg>timeout=${timeout}</arg>
<doc>Open a connection to the tools system at ${ip_address} and return its identifier.</doc>
<status status="PASS" start="2026-05-25T01:55:39.855720" elapsed="0.324927"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:40.181292" level="INFO">${mininet_conn_id} = 5</msg>
<arg>${mininet_conn_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:55:40.180885" elapsed="0.000450"/>
</kw>
<if>
<branch type="IF" condition="'${custom}' != '${EMPTY}'">
<kw name="Put File" owner="SSHLibrary">
<arg>${custom}</arg>
<doc>Uploads file(s) from the local machine to the remote machine.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:40.183515" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:40.181409" elapsed="0.002163"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:40.181388" elapsed="0.002208"/>
</if>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:40.184060" level="INFO">Start mininet --topo linear,3 to 10.30.170.200</msg>
<arg>Start mininet ${options} to ${controller}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:40.183768" elapsed="0.000353"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:55:40.186630" level="INFO">sudo mn --controller 'remote,ip=10.30.170.200,port=6633' --topo linear,3 --switch ovsk,protocols=OpenFlow13</msg>
<arg>sudo mn --controller 'remote,ip=${controller},port=${ofport}' ${options} --switch ovsk,protocols=OpenFlow${ofversion}</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:55:40.184302" elapsed="0.002384"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:55:40.477535" level="INFO">[?2004l*** Creating network
*** Adding controller
*** Adding hosts:
h1 h2 h3 
*** Adding switches:
s1 s2 s3 
*** Adding links:
(h1, s1) (h2, s2) (h3, s3) (s2, s1) (s3, s2) 
*** Configuring hosts
h1 h2 h3 
*** Starting controller
c0 
*** Starting 3 switches
s1 s2 s3 ...
*** Starting CLI:
mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:55:40.186847" elapsed="0.290798"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:40.478246" level="INFO">Check OVS configuratiom</msg>
<arg>Check OVS configuratiom</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:40.477921" elapsed="0.000371"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:55:40.480509" level="INFO">sh ovs-vsctl show</msg>
<arg>sh ovs-vsctl show</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:55:40.478456" elapsed="0.002111"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:55:40.504021" level="INFO">d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s2
        Controller "tcp:10.30.170.200:6633"
        Controller "ptcp:6655"
        fail_mode: secure
        Port s2-eth2
            Interface s2-eth2
        Port s2-eth3
            Interface s2-eth3
        Port s2
            Interface s2
                type: internal
        Port s2-eth1
            Interface s2-eth1
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
        Controller "ptcp:6654"
        fail_mode: secure
        Port s1-eth2
            Interface s1-eth2
        Port s1
            Interface s1
                type: internal
        Port s1-eth1
            Interface s1-eth1
    Bridge s3
        Controller "ptcp:6656"
        Controller "tcp:10.30.170.200:6633"
        fail_mode: secure
        Port s3-eth2
            Interface s3-eth2
        Port s3
            Interface s3
                type: internal
        Port s3-eth1
            Interface s3-eth1
    ovs_version: "2.17.11"
mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:55:40.480725" elapsed="0.023470"/>
</kw>
<return>
<value>${mininet_conn_id}</value>
<status status="PASS" start="2026-05-25T01:55:40.504250" elapsed="0.000048"/>
</return>
<arg>options=--topo linear,${switches}</arg>
<arg>ofversion=${ofversion}</arg>
<arg>ofport=${ofport}</arg>
<arg>timeout=${mininet_timeout}</arg>
<doc>Start Mininet with custom topology and connect to controller.</doc>
<status status="PASS" start="2026-05-25T01:55:38.017330" elapsed="2.487105"/>
</kw>
<arg>${SWITCHES}</arg>
<doc>Start mininet linear topology with 3 nodes.</doc>
<status status="PASS" start="2026-05-25T01:55:38.016189" elapsed="2.488319"/>
</kw>
<doc>Start Mininet Linear with 3 switches.</doc>
<status status="PASS" start="2026-05-25T01:55:38.015629" elapsed="2.489010"/>
</test>
<test id="s1-s5-s1-t5" name="Check Linear Topology" line="61">
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Linear Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:40.511626" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:40.511932" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '222'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:55:40.512117" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:40.506844" elapsed="0.005336"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:40.515776" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:40.512466" elapsed="0.003377"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-05-25T01:55:40.523128" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"node-id":"openflow:1"'</msg>
<arg>${resp.text}</arg>
<arg>"node-id":"openflow:${switch}"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="FAIL" start="2026-05-25T01:55:40.519547" elapsed="0.003705">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"node-id":"openflow:1"'</status>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:1"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:40.523552" elapsed="0.000033"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:40.523835" elapsed="0.000029"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:40.524145" elapsed="0.000022"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:40.524342" elapsed="0.000020"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${edge}</var>
<arg>${switch}==1 or ${switch}==${switches}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:40.524556" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:40.524839" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:40.524659" elapsed="0.000234"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:40.524637" elapsed="0.000281"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:40.525158" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:40.524973" elapsed="0.000242"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:40.524957" elapsed="0.000280"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:40.525460" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:40.525290" elapsed="0.000224"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:40.525274" elapsed="0.000263"/>
</if>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-05-25T01:55:40.519295" elapsed="0.006297">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"node-id":"openflow:1"'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-05-25T01:55:40.515927" elapsed="0.009728">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"node-id":"openflow:1"'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check Linear topology.</doc>
<status status="FAIL" start="2026-05-25T01:55:40.506435" elapsed="0.019327">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"node-id":"openflow:1"'</status>
</kw>
<kw name="Check Linear Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:41.536374" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:41.536654" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '222'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:55:41.536818" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:41.528200" elapsed="0.008656"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:41.540514" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:41.537201" elapsed="0.003381"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-05-25T01:55:41.546589" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"node-id":"openflow:1"'</msg>
<arg>${resp.text}</arg>
<arg>"node-id":"openflow:${switch}"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="FAIL" start="2026-05-25T01:55:41.544138" elapsed="0.002530">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"node-id":"openflow:1"'</status>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:1"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:41.546883" elapsed="0.000024"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:41.547106" elapsed="0.000022"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:41.547319" elapsed="0.000021"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:41.547519" elapsed="0.000020"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${edge}</var>
<arg>${switch}==1 or ${switch}==${switches}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:41.547715" elapsed="0.000021"/>
</kw>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:41.548010" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:41.547812" elapsed="0.000270"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:41.547790" elapsed="0.000319"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:41.548337" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:41.548166" elapsed="0.000225"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:41.548149" elapsed="0.000264"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:41.548635" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:41.548465" elapsed="0.000223"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:41.548449" elapsed="0.000261"/>
</if>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-05-25T01:55:41.543929" elapsed="0.004828">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"node-id":"openflow:1"'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-05-25T01:55:41.540663" elapsed="0.008156">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"node-id":"openflow:1"'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check Linear topology.</doc>
<status status="FAIL" start="2026-05-25T01:55:41.527163" elapsed="0.021769">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"node-id":"openflow:1"'</status>
</kw>
<kw name="Check Linear Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:42.558565" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:42.558818" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '222'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:55:42.559019" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:42.551230" elapsed="0.007828"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:42.562769" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:42.559417" elapsed="0.003531"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-05-25T01:55:42.569393" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"node-id":"openflow:1"'</msg>
<arg>${resp.text}</arg>
<arg>"node-id":"openflow:${switch}"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="FAIL" start="2026-05-25T01:55:42.566548" elapsed="0.002923">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"node-id":"openflow:1"'</status>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:1"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:42.569673" elapsed="0.000022"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:42.569869" elapsed="0.000020"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:42.570061" elapsed="0.000035"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:42.570271" elapsed="0.000020"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${edge}</var>
<arg>${switch}==1 or ${switch}==${switches}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:42.570470" elapsed="0.000019"/>
</kw>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:42.570741" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:42.570566" elapsed="0.000229"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:42.570544" elapsed="0.000277"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:42.571044" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:42.570874" elapsed="0.000241"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:42.570858" elapsed="0.000279"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:42.571355" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:42.571189" elapsed="0.000220"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:42.571173" elapsed="0.000258"/>
</if>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-05-25T01:55:42.566299" elapsed="0.005180">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"node-id":"openflow:1"'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-05-25T01:55:42.563034" elapsed="0.008504">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"node-id":"openflow:1"'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check Linear topology.</doc>
<status status="FAIL" start="2026-05-25T01:55:42.550288" elapsed="0.021365">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"node-id":"openflow:1"'</status>
</kw>
<kw name="Check Linear Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:43.584409" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:43.584716" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '222'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:55:43.584973" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:43.573983" elapsed="0.011050"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:43.590876" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:43.585557" elapsed="0.005455"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-05-25T01:55:43.597537" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"node-id":"openflow:1"'</msg>
<arg>${resp.text}</arg>
<arg>"node-id":"openflow:${switch}"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="FAIL" start="2026-05-25T01:55:43.595023" elapsed="0.002597">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"node-id":"openflow:1"'</status>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:1"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:43.597837" elapsed="0.000029"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:43.598143" elapsed="0.000023"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:43.598341" elapsed="0.000020"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:43.598533" elapsed="0.000020"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${edge}</var>
<arg>${switch}==1 or ${switch}==${switches}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:43.598732" elapsed="0.000020"/>
</kw>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:43.599019" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:43.598836" elapsed="0.000258"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:43.598808" elapsed="0.000316"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:43.599352" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:43.599181" elapsed="0.000226"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:43.599165" elapsed="0.000264"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:43.599650" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:43.599481" elapsed="0.000235"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:43.599466" elapsed="0.000278"/>
</if>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-05-25T01:55:43.594837" elapsed="0.004964">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"node-id":"openflow:1"'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-05-25T01:55:43.591235" elapsed="0.008639">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"node-id":"openflow:1"'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check Linear topology.</doc>
<status status="FAIL" start="2026-05-25T01:55:43.573001" elapsed="0.026983">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"node-id":"openflow:1"'</status>
</kw>
<kw name="Check Linear Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:44.609623" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:44.612769" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '2802'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:55:44.613111" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:44.602395" elapsed="0.010779"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:44.618531" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:44.613695" elapsed="0.005024"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"node-id":"openflow:${switch}"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:44.622330" elapsed="0.003336"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:1"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:44.625863" elapsed="0.002430"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:44.628487" elapsed="0.002429"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:44.631124" elapsed="0.002447"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-05-25T01:55:44.636427" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"dest-tp":"openflow:1:2"'</msg>
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="FAIL" start="2026-05-25T01:55:44.633764" elapsed="0.002771">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"dest-tp":"openflow:1:2"'</status>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${edge}</var>
<arg>${switch}==1 or ${switch}==${switches}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:44.636790" elapsed="0.000024"/>
</kw>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:44.637095" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:44.636896" elapsed="0.000257"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:44.636873" elapsed="0.000309"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:44.637406" elapsed="0.000046"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:44.637237" elapsed="0.000252"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:44.637221" elapsed="0.000291"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:44.637739" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:44.637566" elapsed="0.000228"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:44.637550" elapsed="0.000266"/>
</if>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-05-25T01:55:44.622055" elapsed="0.015818">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"dest-tp":"openflow:1:2"'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-05-25T01:55:44.618807" elapsed="0.019148">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"dest-tp":"openflow:1:2"'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check Linear topology.</doc>
<status status="FAIL" start="2026-05-25T01:55:44.601384" elapsed="0.036721">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"dest-tp":"openflow:1:2"'</status>
</kw>
<kw name="Check Linear Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:45.650572" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:45.651295" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '2802'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:55:45.651645" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:45.640556" elapsed="0.011156"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:45.657156" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:45.652408" elapsed="0.004845"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"node-id":"openflow:${switch}"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:45.660816" elapsed="0.003454"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:1"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:45.664545" elapsed="0.002892"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:45.667631" elapsed="0.002406"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:45.670245" elapsed="0.002438"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-05-25T01:55:45.675410" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"dest-tp":"openflow:1:2"'</msg>
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="FAIL" start="2026-05-25T01:55:45.672934" elapsed="0.002577">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"dest-tp":"openflow:1:2"'</status>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${edge}</var>
<arg>${switch}==1 or ${switch}==${switches}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:45.675734" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:45.676015" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:45.675836" elapsed="0.000248"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:45.675814" elapsed="0.000298"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:45.676337" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:45.676167" elapsed="0.000225"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:45.676151" elapsed="0.000264"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:45.676635" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:45.676466" elapsed="0.000222"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:45.676451" elapsed="0.000260"/>
</if>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-05-25T01:55:45.660568" elapsed="0.016198">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"dest-tp":"openflow:1:2"'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-05-25T01:55:45.657340" elapsed="0.019538">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"dest-tp":"openflow:1:2"'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check Linear topology.</doc>
<status status="FAIL" start="2026-05-25T01:55:45.639558" elapsed="0.037458">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"dest-tp":"openflow:1:2"'</status>
</kw>
<kw name="Check Linear Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:46.687797" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:46.690965" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3118'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:55:46.691321" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:46.678944" elapsed="0.012417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:46.695768" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:46.691708" elapsed="0.004165"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"node-id":"openflow:${switch}"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:46.699715" elapsed="0.003588"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:1"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:46.703496" elapsed="0.002464"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:46.706169" elapsed="0.002437"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:46.708799" elapsed="0.002451"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:46.711443" elapsed="0.002408"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:46.714550" level="INFO">${edge} = True</msg>
<var>${edge}</var>
<arg>${switch}==1 or ${switch}==${switches}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:46.714047" elapsed="0.000530"/>
</kw>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:46.714907" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:46.714660" elapsed="0.000305"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:46.714638" elapsed="0.000355"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:46.715298" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:46.715047" elapsed="0.000308"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:46.715032" elapsed="0.000346"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:46.715660" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:46.715430" elapsed="0.000286"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:46.715414" elapsed="0.000325"/>
</if>
<var name="${switch}">1</var>
<status status="PASS" start="2026-05-25T01:55:46.699470" elapsed="0.016291"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"node-id":"openflow:${switch}"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:46.716153" elapsed="0.002474"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:1"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:46.718816" elapsed="0.002435"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:46.721439" elapsed="0.002420"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:46.724048" elapsed="0.002514"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:46.726754" elapsed="0.002484"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:46.729870" level="INFO">${edge} = False</msg>
<var>${edge}</var>
<arg>${switch}==1 or ${switch}==${switches}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:46.729432" elapsed="0.000466"/>
</kw>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:46.730235" elapsed="0.002421"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:46.729969" elapsed="0.002728"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:46.729951" elapsed="0.002771"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:46.733020" elapsed="0.002457"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:46.732778" elapsed="0.002740"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:46.732761" elapsed="0.002783"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:46.735841" elapsed="0.002493"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:46.735599" elapsed="0.002776"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:46.735582" elapsed="0.002818"/>
</if>
<var name="${switch}">2</var>
<status status="PASS" start="2026-05-25T01:55:46.715977" elapsed="0.022447"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"node-id":"openflow:${switch}"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:46.738802" elapsed="0.002559"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:1"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:46.741552" elapsed="0.002434"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:46.744191" elapsed="0.002477"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:46.746857" elapsed="0.002447"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:46.749494" elapsed="0.002451"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:46.752587" level="INFO">${edge} = True</msg>
<var>${edge}</var>
<arg>${switch}==1 or ${switch}==${switches}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:46.752149" elapsed="0.000465"/>
</kw>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:46.752921" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:46.752685" elapsed="0.000293"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:46.752666" elapsed="0.000335"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:46.753303" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:46.753054" elapsed="0.000305"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:46.753039" elapsed="0.000342"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:46.753664" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:46.753434" elapsed="0.000285"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:46.753419" elapsed="0.000323"/>
</if>
<var name="${switch}">3</var>
<status status="PASS" start="2026-05-25T01:55:46.738637" elapsed="0.015127"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-05-25T01:55:46.695963" elapsed="0.057829"/>
</for>
<arg>${SWITCHES}</arg>
<doc>Check Linear topology.</doc>
<status status="PASS" start="2026-05-25T01:55:46.678244" elapsed="0.075609"/>
</kw>
<arg>30s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Linear Topology</arg>
<arg>${SWITCHES}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:40.505621" elapsed="6.248282"/>
</kw>
<doc>Check Linear Topology.</doc>
<status status="PASS" start="2026-05-25T01:55:40.505106" elapsed="6.248924"/>
</test>
<test id="s1-s5-s1-t6" name="Check Flows In Operational DS" line="65">
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Number Of Flows" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:46.805796" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:46.809747" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":55782,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":127000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":127000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":123000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:55:46.810158" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_NODES_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:46.755849" elapsed="0.054350"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:46.814802" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":55782,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":127000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":127000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":123000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"54","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.54/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":54}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":46000000}},"flags":""},{"id":"45","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.45/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":45}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"#UF$TABLE*0-71","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":46000000}},"flags":"SEND_FLOW_REM"},{"id":"83","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.83/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":83}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":123000000}},"flags":""},{"id":"96","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.96/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":96}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"20","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.20/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":20}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"55","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.55/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":55}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":46000000}},"flags":""},{"id":"46","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.46/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":46}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"86","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.86/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":86}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":123000000}},"flags":""},{"id":"95","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.95/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":95}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"30","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.30/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":30}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"56","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.56/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":56}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":46000000}},"flags":""},{"id":"43","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.43/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":43}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":46000000}},"flags":""},{"id":"8","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.8/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":8}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"85","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.85/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":85}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":123000000}},"flags":""},{"id":"94","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.94/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":94}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"31","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.31/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":31}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"57","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.57/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":57}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":46000000}},"flags":""},{"id":"44","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.44/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":44}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":107000000}},"flags":""},{"id":"5","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.5/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":5}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"88","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.88/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":88}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":127000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"75","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.75/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":75}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"32","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.32/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":32}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"23","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.23/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":23}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"50","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.50/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":50}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":46000000}},"flags":""},{"id":"41","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.41/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":41}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":46000000}},"flags":""},{"id":"6","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.6/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":6}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"87","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.87/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":87}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":127000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"74","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.74/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":74}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"33","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.33/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":33}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"24","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.24/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":24}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"51","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.51/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":51}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":46000000}},"flags":""},{"id":"42","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.42/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":42}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":46000000}},"flags":""},{"id":"3","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.3/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":3}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"99","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.99/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":99}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"73","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.73/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":73}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"34","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.34/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":34}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"21","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.21/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":21}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"52","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.52/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":52}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":46000000}},"flags":""},{"id":"4","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.4/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":4}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"89","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.89/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":89}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":127000000}},"flags":""},{"id":"98","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.98/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":98}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"72","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.72/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":72}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"35","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.35/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":35}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"22","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.22/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":22}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"53","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.53/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":53}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":46000000}},"flags":""},{"id":"40","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.40/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":40}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":46000000}},"flags":""},{"id":"37","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.37/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":37}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"28","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.28/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":28}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"36","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.36/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":36}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"27","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.27/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":27}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"39","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.39/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":39}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"38","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.38/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":38}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"59","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.59/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":59}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":46000000}},"flags":""},{"id":"58","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.58/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":58}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":46000000}},"flags":""},{"id":"49","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.49/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":49}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"48","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.48/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":48}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"47","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.47/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":47}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"18","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.18/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":18}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":123000000}},"flags":""},{"id":"19","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.19/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":19}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":123000000}},"flags":""},{"id":"14","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.14/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":14}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"15","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.15/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":15}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":122000000}},"flags":""},{"id":"1","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"16","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.16/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":16}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":123000000}},"flags":""},{"id":"2","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.2/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":2}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"17","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.17/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":17}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":123000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"11","active-flows":101,"packets-matched":"0"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s3","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:55:44.525Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"d2:3e:6c:b7:77:4e","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":4,"nanosecond":199000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"ea:2e:56:2c:59:09","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"7","received":"7"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":4,"nanosecond":203000000},"bytes":{"transmitted":"601","received":"601"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"1e:18:44:08:21:c8","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"7","received":"6"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":4,"nanosecond":203000000},"bytes":{"transmitted":"601","received":"516"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:group":[{"group-id":56,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":56000}}],"watch_group":56000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":56,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":22000}}],"watch_group":22000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":22,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":99000}}],"watch_group":99000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":99,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":34000,"duration":{"second":3,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":89000,"duration":{"second":3,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":60000,"duration":{"second":3,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":91000,"duration":{"second":3,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":57000}}],"watch_group":57000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":57,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":23000}}],"watch_group":23000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":23,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":14000,"duration":{"second":3,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":98000}}],"watch_group":98000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":98,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":56000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":56000,"duration":{"second":3,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":85000,"duration":{"second":3,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":54000}}],"watch_group":54000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":54,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":24000}}],"watch_group":24000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":24,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":36000,"duration":{"second":3,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":87000,"duration":{"second":3,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":59000,"duration":{"second":3,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":25000,"duration":{"second":3,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":43000,"duration":{"second":3,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":55000}}],"watch_group":55000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":55,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":25000}}],"watch_group":25000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":25,"duration":{"second":3,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":100000}}],"watch_group":100000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":100,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":58000,"duration":{"second":3,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":86000,"duration":{"second":3,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":60000}}],"watch_group":60000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":60,"duration":{"second":3,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":26000}}],"watch_group":26000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":26,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":41000,"duration":{"second":3,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":95000}}],"watch_group":95000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":95,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":82000,"duration":{"second":3,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":61000}}],"watch_group":61000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":61,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":27000}}],"watch_group":27000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":27,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":94000}}],"watch_group":94000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":94,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":98000,"duration":{"second":3,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":27000,"duration":{"second":3,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":57000,"duration":{"second":3,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":16000,"duration":{"second":3,"nanosecond":609000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":83000,"duration":{"second":3,"nanosecond":609000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":58000}}],"watch_group":58000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":58,"duration":{"second":3,"nanosecond":106000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":28000}}],"watch_group":28000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":28,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":97000}}],"watch_group":97000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":97,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":100000,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":59000}}],"watch_group":59000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":59,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":38000,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":29000}}],"watch_group":29000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":29,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":96000}}],"watch_group":96000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":96,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":84000,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":64000}}],"watch_group":64000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":64,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":30000}}],"watch_group":30000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":30,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":4000}}],"watch_group":4000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":4,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":91000}}],"watch_group":91000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":91,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":7000,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":29000,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":65000}}],"watch_group":65000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":65,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":31000}}],"watch_group":31000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":31,"duration":{"second":0,"nanosecond":602000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":5000}}],"watch_group":5000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":5,"duration":{"second":0,"nanosecond":602000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":90000}}],"watch_group":90000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":90,"duration":{"second":0,"nanosecond":602000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":18000,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":62000}}],"watch_group":62000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":62,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":65000,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":32000}}],"watch_group":32000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":32,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":2000}}],"watch_group":2000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":2,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":93000}}],"watch_group":93000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":93,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":64000,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":63000}}],"watch_group":63000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":63,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":33000}}],"watch_group":33000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":33,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":3000}}],"watch_group":3000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":3,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":80000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":9000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":92000}}],"watch_group":92000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":92,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":5000,"duration":{"second":3,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":20000,"duration":{"second":3,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":81000,"duration":{"second":3,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":97000,"duration":{"second":3,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":31000,"duration":{"second":3,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":68000}}],"watch_group":68000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":68,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":11000,"duration":{"second":3,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":34000}}],"watch_group":34000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":34,"duration":{"second":3,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":78000,"duration":{"second":3,"nanosecond":100000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":87000}}],"watch_group":87000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":87,"duration":{"second":3,"nanosecond":100000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":93000,"duration":{"second":3,"nanosecond":100000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":63000,"duration":{"second":3,"nanosecond":100000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":69000}}],"watch_group":69000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":69,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":35000}}],"watch_group":35000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":35,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":1,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":1000}}],"watch_group":1000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":1,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":33000,"duration":{"second":3,"nanosecond":100000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":79000,"duration":{"second":3,"nanosecond":100000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":86000}}],"watch_group":86000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":86,"duration":{"second":3,"nanosecond":99000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":62000,"duration":{"second":3,"nanosecond":99000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":66000}}],"watch_group":66000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":66,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":77000,"duration":{"second":3,"nanosecond":99000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":36000}}],"watch_group":36000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":36,"duration":{"second":3,"nanosecond":99000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":89000}}],"watch_group":89000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":89,"duration":{"second":3,"nanosecond":99000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":22000,"duration":{"second":3,"nanosecond":98000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":95000,"duration":{"second":3,"nanosecond":98000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":67000}}],"watch_group":67000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":67,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":37000}}],"watch_group":37000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":37,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":1000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":1000,"duration":{"second":3,"nanosecond":98000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":88000}}],"watch_group":88000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":88,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":61000,"duration":{"second":3,"nanosecond":97000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":3000,"duration":{"second":3,"nanosecond":97000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":73000}}],"watch_group":73000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":73,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":39000}}],"watch_group":39000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":39,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":13000}}],"watch_group":13000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":13,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":74000,"duration":{"second":3,"nanosecond":97000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":15000,"duration":{"second":3,"nanosecond":97000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":44000,"duration":{"second":3,"nanosecond":97000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":45000,"duration":{"second":3,"nanosecond":97000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":68000,"duration":{"second":3,"nanosecond":97000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":72000}}],"watch_group":72000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":72,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":38000}}],"watch_group":38000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":38,"duration":{"second":2,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":75000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":12000}}],"watch_group":12000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":12,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":35000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":24000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":90000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":71000}}],"watch_group":71000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":71,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":41000}}],"watch_group":41000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":41,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":42000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":11000}}],"watch_group":11000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":11,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":92000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":46000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":67000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":70000}}],"watch_group":70000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":70,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":76000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":40000}}],"watch_group":40000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":40,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":13000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":10000}}],"watch_group":10000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":10,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":88000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":47000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":66000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":77000}}],"watch_group":77000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":77,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":43000}}],"watch_group":43000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":43,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":9000}}],"watch_group":9000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":9,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":99000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":26000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":70000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":76000}}],"watch_group":76000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":76,"duration":{"second":2,"nanosecond":109000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":42000}}],"watch_group":42000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":42,"duration":{"second":2,"nanosecond":109000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":8000}}],"watch_group":8000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":8,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":37000,"duration":{"second":2,"nanosecond":108000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":49000,"duration":{"second":2,"nanosecond":108000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":71000,"duration":{"second":2,"nanosecond":108000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":48000,"duration":{"second":2,"nanosecond":107000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":75000}}],"watch_group":75000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":75,"duration":{"second":2,"nanosecond":107000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":45000}}],"watch_group":45000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":45,"duration":{"second":2,"nanosecond":107000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":7000}}],"watch_group":7000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":7,"duration":{"second":2,"nanosecond":107000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":39000,"duration":{"second":2,"nanosecond":106000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":73000,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":69000,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":17000,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":28000,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":74000}}],"watch_group":74000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":74,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":44000}}],"watch_group":44000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":44,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":6000}}],"watch_group":6000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":6,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":40000,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":81000}}],"watch_group":81000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":81,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":47000}}],"watch_group":47000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":47,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":21000}}],"watch_group":21000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":21,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":8000,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":19000,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":96000,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":80000}}],"watch_group":80000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":80,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":46000}}],"watch_group":46000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":46,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":20000}}],"watch_group":20000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":20,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":52000,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":6000,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":79000}}],"watch_group":79000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":79,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":49000}}],"watch_group":49000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":49,"duration":{"second":1,"nanosecond":607000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":19000}}],"watch_group":19000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":19,"duration":{"second":1,"nanosecond":607000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":50000,"duration":{"second":1,"nanosecond":607000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":72000,"duration":{"second":1,"nanosecond":607000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":30000,"duration":{"second":1,"nanosecond":607000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":78000}}],"watch_group":78000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":78,"duration":{"second":1,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":48000}}],"watch_group":48000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":48,"duration":{"second":1,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":18000}}],"watch_group":18000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":18,"duration":{"second":1,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":51000,"duration":{"second":1,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":85000}}],"watch_group":85000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":85,"duration":{"second":1,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":55000,"duration":{"second":1,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":51000}}],"watch_group":51000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":51,"duration":{"second":1,"nanosecond":107000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":17000}}],"watch_group":17000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":17,"duration":{"second":1,"nanosecond":107000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":21000,"duration":{"second":1,"nanosecond":107000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":4000,"duration":{"second":1,"nanosecond":107000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":84000}}],"watch_group":84000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":84,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":50000}}],"watch_group":50000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":50,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":16000}}],"watch_group":16000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":16,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":10000,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":54000,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":83000}}],"watch_group":83000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":83,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":32000,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":53000}}],"watch_group":53000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":53,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":15000}}],"watch_group":15000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":15,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":2000,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":82000}}],"watch_group":82000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":82,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":52000}}],"watch_group":52000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":52,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":14000}}],"watch_group":14000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":14,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":53000,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":12000,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":23000,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":94000,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:55:44.665Z"}},{"id":"openflow:1","flow-node-inventory:port-number":55768,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"#UF$TABLE*0-72","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":72000000}},"flags":"SEND_FLOW_REM"},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"54","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.54/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":54}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"45","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.45/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":45}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"83","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.83/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":83}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"96","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.96/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":96}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"20","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.20/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":20}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"55","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.55/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":55}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"46","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.46/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":46}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"86","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.86/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":86}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"95","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.95/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":95}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"30","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.30/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":30}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"56","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.56/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":56}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"43","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.43/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":43}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"8","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.8/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":8}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"85","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.85/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":85}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"94","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.94/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":94}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"31","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.31/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":31}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"57","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.57/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":57}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"44","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.44/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":44}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"5","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.5/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":5}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"88","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.88/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":88}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"75","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.75/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":75}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"32","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.32/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":32}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"23","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.23/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":23}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"50","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.50/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":50}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"41","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.41/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":41}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"6","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.6/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":6}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"87","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.87/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":87}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"74","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.74/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":74}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"33","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.33/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":33}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"24","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.24/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":24}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"51","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.51/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":51}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"42","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.42/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":42}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"3","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.3/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":3}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"99","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.99/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":99}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"73","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.73/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":73}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"34","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.34/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":34}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"21","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.21/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":21}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"52","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.52/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":52}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"4","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.4/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":4}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"89","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.89/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":89}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"98","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.98/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":98}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"72","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.72/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":72}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"35","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.35/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":35}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"22","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.22/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":22}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"53","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.53/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":53}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"40","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.40/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":40}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"37","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.37/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":37}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"28","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.28/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":28}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"36","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.36/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":36}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"27","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.27/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":27}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"39","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.39/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":39}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"38","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.38/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":38}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"59","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.59/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":59}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"58","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.58/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":58}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"49","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.49/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":49}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"48","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.48/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":48}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"47","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.47/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":47}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"18","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.18/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":18}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"19","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.19/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":19}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"14","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.14/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":14}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"15","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.15/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":15}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"1","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"16","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.16/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":16}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"2","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.2/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":2}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"17","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.17/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":17}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"11","active-flows":101,"packets-matched":"0"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s1","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:55:44.535Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"de:fd:88:3a:0f:fe","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"7","received":"6"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":4,"nanosecond":223000000},"bytes":{"transmitted":"601","received":"516"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ee:44:6a:8a:83:4e","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":4,"nanosecond":212000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"3a:a8:41:44:b3:f9","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"7","received":"7"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":4,"nanosecond":224000000},"bytes":{"transmitted":"601","received":"601"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:group":[{"group-id":56,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":56000}}],"watch_group":56000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":56,"duration":{"second":1,"nanosecond":113000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":22000}}],"watch_group":22000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":22,"duration":{"second":1,"nanosecond":113000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":99000}}],"watch_group":99000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":99,"duration":{"second":1,"nanosecond":113000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":34000,"duration":{"second":3,"nanosecond":913000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":89000,"duration":{"second":3,"nanosecond":913000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":60000,"duration":{"second":3,"nanosecond":913000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":91000,"duration":{"second":3,"nanosecond":913000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":57000}}],"watch_group":57000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":57,"duration":{"second":1,"nanosecond":113000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":23000}}],"watch_group":23000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":23,"duration":{"second":0,"nanosecond":615000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":14000,"duration":{"second":3,"nanosecond":913000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":98000}}],"watch_group":98000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":98,"duration":{"second":0,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":56000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":56000,"duration":{"second":3,"nanosecond":912000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":85000,"duration":{"second":3,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":54000}}],"watch_group":54000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":54,"duration":{"second":0,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":24000}}],"watch_group":24000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":24,"duration":{"second":0,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":36000,"duration":{"second":3,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":87000,"duration":{"second":3,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":59000,"duration":{"second":3,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":25000,"duration":{"second":3,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":43000,"duration":{"second":3,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":55000}}],"watch_group":55000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":55,"duration":{"second":0,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":25000}}],"watch_group":25000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":25,"duration":{"second":3,"nanosecond":616000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":100000}}],"watch_group":100000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":100,"duration":{"second":0,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":58000,"duration":{"second":3,"nanosecond":616000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":86000,"duration":{"second":3,"nanosecond":616000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":60000}}],"watch_group":60000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":60,"duration":{"second":3,"nanosecond":615000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":26000}}],"watch_group":26000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":26,"duration":{"second":0,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":41000,"duration":{"second":3,"nanosecond":615000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":95000}}],"watch_group":95000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":95,"duration":{"second":0,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":82000,"duration":{"second":3,"nanosecond":615000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":61000}}],"watch_group":61000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":61,"duration":{"second":0,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":27000}}],"watch_group":27000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":27,"duration":{"second":0,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":94000}}],"watch_group":94000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":94,"duration":{"second":0,"nanosecond":612000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":98000,"duration":{"second":3,"nanosecond":615000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":27000,"duration":{"second":3,"nanosecond":615000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":57000,"duration":{"second":3,"nanosecond":615000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":16000,"duration":{"second":3,"nanosecond":615000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":83000,"duration":{"second":3,"nanosecond":615000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":58000}}],"watch_group":58000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":58,"duration":{"second":3,"nanosecond":108000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":28000}}],"watch_group":28000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":28,"duration":{"second":0,"nanosecond":612000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":97000}}],"watch_group":97000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":97,"duration":{"second":0,"nanosecond":612000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":100000,"duration":{"second":3,"nanosecond":108000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":59000}}],"watch_group":59000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":59,"duration":{"second":3,"nanosecond":108000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":38000,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":29000}}],"watch_group":29000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":29,"duration":{"second":0,"nanosecond":612000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":96000}}],"watch_group":96000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":96,"duration":{"second":0,"nanosecond":612000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":84000,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":64000}}],"watch_group":64000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":64,"duration":{"second":0,"nanosecond":612000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":30000}}],"watch_group":30000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":30,"duration":{"second":0,"nanosecond":612000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":4000}}],"watch_group":4000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":4,"duration":{"second":0,"nanosecond":612000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":91000}}],"watch_group":91000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":91,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":7000,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":29000,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":65000}}],"watch_group":65000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":65,"duration":{"second":0,"nanosecond":612000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":31000}}],"watch_group":31000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":31,"duration":{"second":0,"nanosecond":612000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":5000}}],"watch_group":5000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":5,"duration":{"second":0,"nanosecond":612000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":90000}}],"watch_group":90000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":90,"duration":{"second":0,"nanosecond":612000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":18000,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":62000}}],"watch_group":62000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":62,"duration":{"second":0,"nanosecond":611000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":65000,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":32000}}],"watch_group":32000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":32,"duration":{"second":0,"nanosecond":611000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":2000}}],"watch_group":2000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":2,"duration":{"second":0,"nanosecond":611000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":93000}}],"watch_group":93000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":93,"duration":{"second":0,"nanosecond":611000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":64000,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":63000}}],"watch_group":63000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":63,"duration":{"second":0,"nanosecond":611000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":33000}}],"watch_group":33000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":33,"duration":{"second":0,"nanosecond":611000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":3000}}],"watch_group":3000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":3,"duration":{"second":0,"nanosecond":611000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":80000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":9000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":92000}}],"watch_group":92000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":92,"duration":{"second":0,"nanosecond":611000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":5000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":20000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":81000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":97000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":31000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":68000}}],"watch_group":68000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":68,"duration":{"second":0,"nanosecond":611000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":11000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":34000}}],"watch_group":34000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":34,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":78000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":87000}}],"watch_group":87000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":87,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":93000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":63000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":69000}}],"watch_group":69000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":69,"duration":{"second":0,"nanosecond":611000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":35000}}],"watch_group":35000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":35,"duration":{"second":0,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":1,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":1000}}],"watch_group":1000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":1,"duration":{"second":0,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":33000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":79000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":86000}}],"watch_group":86000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":86,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":62000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":66000}}],"watch_group":66000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":66,"duration":{"second":0,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":77000,"duration":{"second":3,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":36000}}],"watch_group":36000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":36,"duration":{"second":3,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":89000}}],"watch_group":89000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":89,"duration":{"second":3,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":22000,"duration":{"second":3,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":95000,"duration":{"second":3,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":67000}}],"watch_group":67000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":67,"duration":{"second":0,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":37000}}],"watch_group":37000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":37,"duration":{"second":0,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":1000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":1000,"duration":{"second":3,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":88000}}],"watch_group":88000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":88,"duration":{"second":0,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":61000,"duration":{"second":3,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":3000,"duration":{"second":3,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":73000}}],"watch_group":73000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":73,"duration":{"second":0,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":39000}}],"watch_group":39000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":39,"duration":{"second":0,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":13000}}],"watch_group":13000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":13,"duration":{"second":0,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":74000,"duration":{"second":3,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":15000,"duration":{"second":3,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":44000,"duration":{"second":3,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":45000,"duration":{"second":3,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":68000,"duration":{"second":3,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":72000}}],"watch_group":72000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":72,"duration":{"second":0,"nanosecond":605000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":38000}}],"watch_group":38000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":38,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":75000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":12000}}],"watch_group":12000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":12,"duration":{"second":0,"nanosecond":604000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":35000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":24000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":90000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":71000}}],"watch_group":71000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":71,"duration":{"second":0,"nanosecond":604000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":41000}}],"watch_group":41000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":41,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":42000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":11000}}],"watch_group":11000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":11,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":92000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":46000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":67000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":70000}}],"watch_group":70000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":70,"duration":{"second":0,"nanosecond":604000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":76000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":40000}}],"watch_group":40000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":40,"duration":{"second":0,"nanosecond":604000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":13000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":10000}}],"watch_group":10000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":10,"duration":{"second":0,"nanosecond":604000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":88000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":47000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":66000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":77000}}],"watch_group":77000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":77,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":43000}}],"watch_group":43000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":43,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":9000}}],"watch_group":9000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":9,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":99000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":26000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":70000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":76000}}],"watch_group":76000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":76,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":42000}}],"watch_group":42000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":42,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":8000}}],"watch_group":8000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":8,"duration":{"second":0,"nanosecond":604000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":37000,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":49000,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":71000,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":48000,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":75000}}],"watch_group":75000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":75,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":45000}}],"watch_group":45000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":45,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":7000}}],"watch_group":7000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":7,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":39000,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":73000,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":69000,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":17000,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":28000,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":74000}}],"watch_group":74000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":74,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":44000}}],"watch_group":44000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":44,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":6000}}],"watch_group":6000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":6,"duration":{"second":0,"nanosecond":604000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":40000,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":81000}}],"watch_group":81000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":81,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":47000}}],"watch_group":47000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":47,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":21000}}],"watch_group":21000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":21,"duration":{"second":0,"nanosecond":604000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":8000,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":19000,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":96000,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":80000}}],"watch_group":80000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":80,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":46000}}],"watch_group":46000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":46,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":20000}}],"watch_group":20000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":20,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":52000,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":6000,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":79000}}],"watch_group":79000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":79,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":49000}}],"watch_group":49000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":49,"duration":{"second":1,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":19000}}],"watch_group":19000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":19,"duration":{"second":1,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":50000,"duration":{"second":1,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":72000,"duration":{"second":1,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":30000,"duration":{"second":1,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":78000}}],"watch_group":78000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":78,"duration":{"second":1,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":48000}}],"watch_group":48000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":48,"duration":{"second":1,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":18000}}],"watch_group":18000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":18,"duration":{"second":1,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":51000,"duration":{"second":1,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":85000}}],"watch_group":85000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":85,"duration":{"second":1,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":55000,"duration":{"second":1,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":51000}}],"watch_group":51000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":51,"duration":{"second":1,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":17000}}],"watch_group":17000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":17,"duration":{"second":1,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":21000,"duration":{"second":1,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":4000,"duration":{"second":1,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":84000}}],"watch_group":84000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":84,"duration":{"second":1,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":50000}}],"watch_group":50000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":50,"duration":{"second":1,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":16000}}],"watch_group":16000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":16,"duration":{"second":1,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":10000,"duration":{"second":1,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":54000,"duration":{"second":1,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":83000}}],"watch_group":83000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":83,"duration":{"second":1,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":32000,"duration":{"second":1,"nanosecond":113000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":53000}}],"watch_group":53000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":53,"duration":{"second":0,"nanosecond":604000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":15000}}],"watch_group":15000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":15,"duration":{"second":1,"nanosecond":113000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":2000,"duration":{"second":1,"nanosecond":113000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":82000}}],"watch_group":82000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":82,"duration":{"second":1,"nanosecond":113000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":52000}}],"watch_group":52000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":52,"duration":{"second":1,"nanosecond":113000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":14000}}],"watch_group":14000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":14,"duration":{"second":1,"nanosecond":113000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":53000,"duration":{"second":1,"nanosecond":113000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":12000,"duration":{"second":1,"nanosecond":113000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":23000,"duration":{"second":1,"nanosecond":113000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":94000,"duration":{"second":1,"nanosecond":113000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:55:44.674Z"}},{"id":"openflow:2","flow-node-inventory:port-number":55792,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"54","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.54/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":54}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"45","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.45/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":45}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"83","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.83/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":83}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"96","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.96/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":96}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"20","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.20/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":20}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"55","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.55/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":55}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"46","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.46/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":46}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"86","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.86/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":86}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"95","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.95/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":95}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"30","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.30/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":30}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"56","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.56/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":56}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"43","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.43/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":43}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"#UF$TABLE*0-73","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"2","byte-count":"170","duration":{"second":0,"nanosecond":84000000}},"flags":"SEND_FLOW_REM"},{"id":"8","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.8/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":8}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"85","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.85/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":85}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"94","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.94/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":94}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"31","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.31/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":31}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"57","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.57/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":57}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"44","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.44/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":44}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"5","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.5/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":5}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"88","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.88/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":88}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"75","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.75/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":75}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"32","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.32/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":32}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"23","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.23/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":23}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"50","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.50/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":50}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"41","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.41/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":41}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"6","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.6/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":6}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"87","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.87/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":87}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"74","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.74/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":74}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"33","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.33/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":33}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"24","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.24/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":24}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"51","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.51/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":51}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"42","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.42/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":42}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"3","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.3/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":3}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"99","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.99/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":99}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"73","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.73/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":73}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"34","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.34/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":34}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"21","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.21/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":21}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"52","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.52/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":52}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"4","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.4/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":4}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"89","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.89/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":89}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"98","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.98/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":98}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"72","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.72/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":72}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"35","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.35/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":35}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"22","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.22/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":22}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"53","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.53/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":53}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"40","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.40/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":40}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"37","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.37/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":37}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"28","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.28/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":28}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"36","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.36/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":36}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"27","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.27/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":27}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"39","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.39/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":39}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"38","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.38/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":38}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"59","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.59/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":59}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"58","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.58/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":58}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"49","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.49/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":49}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"48","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.48/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":48}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"47","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.47/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":47}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"18","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.18/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":18}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"19","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.19/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":19}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"14","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.14/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":14}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"15","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.15/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":15}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"1","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"16","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.16/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":16}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"2","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.2/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":2}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"17","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.17/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":17}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"16","active-flows":101,"packets-matched":"2"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s2","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:55:44.550Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"96:6d:7e:e3:20:cb","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"7","received":"7"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":4,"nanosecond":215000000},"bytes":{"transmitted":"601","received":"601"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"aa:85:98:60:af:45","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":4,"nanosecond":211000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"b2:63:e2:1f:6f:f5","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"7","received":"7"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":4,"nanosecond":215000000},"bytes":{"transmitted":"601","received":"601"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"6e:ec:a4:2a:50:8d","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"7","received":"6"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":4,"nanosecond":215000000},"bytes":{"transmitted":"601","received":"516"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:group":[{"group-id":56,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":56000}}],"watch_group":56000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":56,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":22000}}],"watch_group":22000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":22,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":99000}}],"watch_group":99000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":99,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":34000,"duration":{"second":3,"nanosecond":905000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":89000,"duration":{"second":3,"nanosecond":905000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":60000,"duration":{"second":3,"nanosecond":904000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":91000,"duration":{"second":3,"nanosecond":905000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":57000}}],"watch_group":57000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":57,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":23000}}],"watch_group":23000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":23,"duration":{"second":0,"nanosecond":589000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":14000,"duration":{"second":3,"nanosecond":905000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":98000}}],"watch_group":98000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":98,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":56000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":56000,"duration":{"second":3,"nanosecond":905000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":85000,"duration":{"second":3,"nanosecond":905000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":54000}}],"watch_group":54000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":54,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":24000}}],"watch_group":24000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":24,"duration":{"second":0,"nanosecond":589000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":36000,"duration":{"second":3,"nanosecond":904000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":87000,"duration":{"second":3,"nanosecond":905000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":59000,"duration":{"second":3,"nanosecond":903000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":25000,"duration":{"second":3,"nanosecond":904000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":43000,"duration":{"second":3,"nanosecond":904000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":55000}}],"watch_group":55000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":55,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":25000}}],"watch_group":25000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":25,"duration":{"second":3,"nanosecond":609000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":100000}}],"watch_group":100000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":100,"duration":{"second":0,"nanosecond":589000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":58000,"duration":{"second":3,"nanosecond":609000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":86000,"duration":{"second":3,"nanosecond":609000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":60000}}],"watch_group":60000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":60,"duration":{"second":3,"nanosecond":609000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":26000}}],"watch_group":26000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":26,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":41000,"duration":{"second":3,"nanosecond":607000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":95000}}],"watch_group":95000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":95,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":82000,"duration":{"second":3,"nanosecond":607000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":61000}}],"watch_group":61000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":61,"duration":{"second":0,"nanosecond":589000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":27000}}],"watch_group":27000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":27,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":94000}}],"watch_group":94000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":94,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":98000,"duration":{"second":3,"nanosecond":607000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":27000,"duration":{"second":3,"nanosecond":607000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":57000,"duration":{"second":3,"nanosecond":607000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":16000,"duration":{"second":3,"nanosecond":604000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":83000,"duration":{"second":3,"nanosecond":604000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":58000}}],"watch_group":58000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":58,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":28000}}],"watch_group":28000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":28,"duration":{"second":0,"nanosecond":589000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":97000}}],"watch_group":97000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":97,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":100000,"duration":{"second":3,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":59000}}],"watch_group":59000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":59,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":38000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":29000}}],"watch_group":29000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":29,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":96000}}],"watch_group":96000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":96,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":84000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":64000}}],"watch_group":64000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":64,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":30000}}],"watch_group":30000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":30,"duration":{"second":0,"nanosecond":589000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":4000}}],"watch_group":4000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":4,"duration":{"second":0,"nanosecond":589000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":91000}}],"watch_group":91000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":91,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":7000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":29000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":65000}}],"watch_group":65000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":65,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":31000}}],"watch_group":31000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":31,"duration":{"second":0,"nanosecond":589000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":5000}}],"watch_group":5000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":5,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":90000}}],"watch_group":90000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":90,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":18000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":62000}}],"watch_group":62000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":62,"duration":{"second":0,"nanosecond":589000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":65000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":32000}}],"watch_group":32000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":32,"duration":{"second":0,"nanosecond":589000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":2000}}],"watch_group":2000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":2,"duration":{"second":0,"nanosecond":589000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":93000}}],"watch_group":93000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":93,"duration":{"second":0,"nanosecond":589000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":64000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":63000}}],"watch_group":63000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":63,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":33000}}],"watch_group":33000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":33,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":3000}}],"watch_group":3000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":3,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":80000,"duration":{"second":3,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":9000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":92000}}],"watch_group":92000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":92,"duration":{"second":0,"nanosecond":589000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":5000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":20000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":81000,"duration":{"second":3,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":97000,"duration":{"second":3,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":31000,"duration":{"second":3,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":68000}}],"watch_group":68000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":68,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":11000,"duration":{"second":3,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":34000}}],"watch_group":34000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":34,"duration":{"second":3,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":78000,"duration":{"second":3,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":87000}}],"watch_group":87000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":87,"duration":{"second":3,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":93000,"duration":{"second":3,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":63000,"duration":{"second":3,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":69000}}],"watch_group":69000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":69,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":35000}}],"watch_group":35000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":35,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":1,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":1000}}],"watch_group":1000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":1,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":33000,"duration":{"second":3,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":79000,"duration":{"second":3,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":86000}}],"watch_group":86000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":86,"duration":{"second":3,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":62000,"duration":{"second":3,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":66000}}],"watch_group":66000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":66,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":77000,"duration":{"second":3,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":36000}}],"watch_group":36000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":36,"duration":{"second":3,"nanosecond":100000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":89000}}],"watch_group":89000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":89,"duration":{"second":3,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":22000,"duration":{"second":3,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":95000,"duration":{"second":3,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":67000}}],"watch_group":67000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":67,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":37000}}],"watch_group":37000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":37,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":1000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":1000,"duration":{"second":3,"nanosecond":100000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":88000}}],"watch_group":88000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":88,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":61000,"duration":{"second":3,"nanosecond":100000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":3000,"duration":{"second":3,"nanosecond":97000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":73000}}],"watch_group":73000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":73,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":39000}}],"watch_group":39000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":39,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":13000}}],"watch_group":13000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":13,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":74000,"duration":{"second":3,"nanosecond":96000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":15000,"duration":{"second":3,"nanosecond":95000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":44000,"duration":{"second":3,"nanosecond":96000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":45000,"duration":{"second":3,"nanosecond":96000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":68000,"duration":{"second":3,"nanosecond":96000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":72000}}],"watch_group":72000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":72,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":38000}}],"watch_group":38000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":38,"duration":{"second":2,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":75000,"duration":{"second":2,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":12000}}],"watch_group":12000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":12,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":35000,"duration":{"second":2,"nanosecond":605000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":24000,"duration":{"second":2,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":90000,"duration":{"second":2,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":71000}}],"watch_group":71000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":71,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":41000}}],"watch_group":41000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":41,"duration":{"second":2,"nanosecond":605000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":42000,"duration":{"second":2,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":11000}}],"watch_group":11000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":11,"duration":{"second":2,"nanosecond":605000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":92000,"duration":{"second":2,"nanosecond":605000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":46000,"duration":{"second":2,"nanosecond":605000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":67000,"duration":{"second":2,"nanosecond":605000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":70000}}],"watch_group":70000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":70,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":76000,"duration":{"second":2,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":40000}}],"watch_group":40000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":40,"duration":{"second":0,"nanosecond":589000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":13000,"duration":{"second":2,"nanosecond":605000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":10000}}],"watch_group":10000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":10,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":88000,"duration":{"second":2,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":47000,"duration":{"second":2,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":66000,"duration":{"second":2,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":77000}}],"watch_group":77000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":77,"duration":{"second":2,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":43000}}],"watch_group":43000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":43,"duration":{"second":2,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":9000}}],"watch_group":9000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":9,"duration":{"second":2,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":99000,"duration":{"second":2,"nanosecond":605000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":26000,"duration":{"second":2,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":70000,"duration":{"second":2,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":76000}}],"watch_group":76000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":76,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":42000}}],"watch_group":42000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":42,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":8000}}],"watch_group":8000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":8,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":37000,"duration":{"second":2,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":49000,"duration":{"second":2,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":71000,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":48000,"duration":{"second":2,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":75000}}],"watch_group":75000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":75,"duration":{"second":2,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":45000}}],"watch_group":45000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":45,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":7000}}],"watch_group":7000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":7,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":39000,"duration":{"second":2,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":73000,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":69000,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":17000,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":28000,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":74000}}],"watch_group":74000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":74,"duration":{"second":2,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":44000}}],"watch_group":44000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":44,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":6000}}],"watch_group":6000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":6,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":40000,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":81000}}],"watch_group":81000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":81,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":47000}}],"watch_group":47000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":47,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":21000}}],"watch_group":21000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":21,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":8000,"duration":{"second":2,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":19000,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":96000,"duration":{"second":2,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":80000}}],"watch_group":80000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":80,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":46000}}],"watch_group":46000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":46,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":20000}}],"watch_group":20000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":20,"duration":{"second":2,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":52000,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":6000,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":79000}}],"watch_group":79000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":79,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":49000}}],"watch_group":49000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":49,"duration":{"second":1,"nanosecond":603000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":19000}}],"watch_group":19000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":19,"duration":{"second":1,"nanosecond":602000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":50000,"duration":{"second":1,"nanosecond":603000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":72000,"duration":{"second":1,"nanosecond":603000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":30000,"duration":{"second":1,"nanosecond":603000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":78000}}],"watch_group":78000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":78,"duration":{"second":1,"nanosecond":603000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":48000}}],"watch_group":48000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":48,"duration":{"second":1,"nanosecond":603000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":18000}}],"watch_group":18000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":18,"duration":{"second":1,"nanosecond":603000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":51000,"duration":{"second":1,"nanosecond":603000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":85000}}],"watch_group":85000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":85,"duration":{"second":1,"nanosecond":602000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":55000,"duration":{"second":1,"nanosecond":602000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":51000}}],"watch_group":51000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":51,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":17000}}],"watch_group":17000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":17,"duration":{"second":1,"nanosecond":100000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":21000,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":4000,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":84000}}],"watch_group":84000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":84,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":50000}}],"watch_group":50000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":50,"duration":{"second":1,"nanosecond":100000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":16000}}],"watch_group":16000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":16,"duration":{"second":1,"nanosecond":100000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":10000,"duration":{"second":1,"nanosecond":100000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":54000,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":83000}}],"watch_group":83000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":83,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":32000,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":53000}}],"watch_group":53000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":53,"duration":{"second":0,"nanosecond":589000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":15000}}],"watch_group":15000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":15,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":2000,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":82000}}],"watch_group":82000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":82,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":52000}}],"watch_group":52000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":52,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":14000}}],"watch_group":14000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":14,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":53000,"duration":{"second":1,"nanosecond":100000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":12000,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":23000,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":94000,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:55:44.684Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:46.810541" elapsed="0.011005"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-05-25T01:55:46.826319" level="INFO">Item found from container 303 times.</msg>
<msg time="2026-05-25T01:55:46.826406" level="INFO">${count} = 303</msg>
<var>${count}</var>
<arg>${resp.text}</arg>
<arg>"priority"</arg>
<doc>Returns and logs how many times ``item`` is found from ``container``.</doc>
<status status="PASS" start="2026-05-25T01:55:46.821835" elapsed="0.004596"/>
</kw>
<kw name="Should Be Equal As Integers" owner="BuiltIn">
<arg>${count}</arg>
<arg>${flows}</arg>
<doc>Fails if objects are unequal after converting them to integers.</doc>
<status status="PASS" start="2026-05-25T01:55:46.826629" elapsed="0.000312"/>
</kw>
<arg>${all_flows}</arg>
<doc>Check number of flows in the inventory.</doc>
<status status="PASS" start="2026-05-25T01:55:46.755517" elapsed="0.071491"/>
</kw>
<arg>30s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Number Of Flows</arg>
<arg>${all_flows}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:46.754942" elapsed="0.072116"/>
</kw>
<doc>Check Groups after mininet starts.</doc>
<status status="PASS" start="2026-05-25T01:55:46.754468" elapsed="0.072727"/>
</test>
<test id="s1-s5-s1-t7" name="Check Groups In Operational DS" line="69">
<kw name="Check Number Of Groups" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:46.871008" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:46.873005" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":55782,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":127000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":127000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":123000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:55:46.873519" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_NODES_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:46.828373" elapsed="0.045207"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:46.878319" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":55782,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":127000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":127000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":123000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"54","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.54/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":54}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":46000000}},"flags":""},{"id":"45","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.45/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":45}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"#UF$TABLE*0-71","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":46000000}},"flags":"SEND_FLOW_REM"},{"id":"83","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.83/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":83}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":123000000}},"flags":""},{"id":"96","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.96/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":96}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"20","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.20/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":20}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"55","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.55/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":55}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":46000000}},"flags":""},{"id":"46","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.46/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":46}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"86","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.86/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":86}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":123000000}},"flags":""},{"id":"95","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.95/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":95}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"30","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.30/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":30}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"56","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.56/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":56}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":46000000}},"flags":""},{"id":"43","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.43/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":43}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":46000000}},"flags":""},{"id":"8","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.8/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":8}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"85","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.85/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":85}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":123000000}},"flags":""},{"id":"94","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.94/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":94}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"31","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.31/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":31}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"57","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.57/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":57}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":46000000}},"flags":""},{"id":"44","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.44/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":44}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":107000000}},"flags":""},{"id":"5","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.5/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":5}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"88","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.88/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":88}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":127000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"75","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.75/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":75}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"32","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.32/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":32}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"23","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.23/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":23}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"50","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.50/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":50}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":46000000}},"flags":""},{"id":"41","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.41/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":41}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":46000000}},"flags":""},{"id":"6","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.6/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":6}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"87","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.87/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":87}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":127000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"74","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.74/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":74}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"33","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.33/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":33}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"24","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.24/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":24}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"51","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.51/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":51}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":46000000}},"flags":""},{"id":"42","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.42/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":42}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":46000000}},"flags":""},{"id":"3","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.3/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":3}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"99","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.99/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":99}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"73","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.73/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":73}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"34","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.34/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":34}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"21","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.21/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":21}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"52","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.52/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":52}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":46000000}},"flags":""},{"id":"4","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.4/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":4}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"89","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.89/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":89}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":127000000}},"flags":""},{"id":"98","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.98/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":98}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"72","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.72/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":72}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"35","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.35/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":35}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"22","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.22/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":22}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"53","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.53/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":53}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":46000000}},"flags":""},{"id":"40","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.40/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":40}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":46000000}},"flags":""},{"id":"37","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.37/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":37}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"28","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.28/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":28}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"36","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.36/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":36}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"27","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.27/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":27}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"39","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.39/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":39}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"38","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.38/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":38}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":128000000}},"flags":""},{"id":"59","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.59/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":59}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":46000000}},"flags":""},{"id":"58","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.58/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":58}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":46000000}},"flags":""},{"id":"49","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.49/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":49}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"48","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.48/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":48}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"47","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.47/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":47}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"18","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.18/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":18}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":123000000}},"flags":""},{"id":"19","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.19/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":19}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":123000000}},"flags":""},{"id":"14","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.14/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":14}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"15","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.15/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":15}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":122000000}},"flags":""},{"id":"1","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"16","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.16/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":16}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":123000000}},"flags":""},{"id":"2","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.2/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":2}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":112000000}},"flags":""},{"id":"17","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.17/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":17}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":123000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"11","active-flows":101,"packets-matched":"0"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s3","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:55:44.525Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"d2:3e:6c:b7:77:4e","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":4,"nanosecond":199000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"ea:2e:56:2c:59:09","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"7","received":"7"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":4,"nanosecond":203000000},"bytes":{"transmitted":"601","received":"601"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"1e:18:44:08:21:c8","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"7","received":"6"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":4,"nanosecond":203000000},"bytes":{"transmitted":"601","received":"516"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:group":[{"group-id":56,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":56000}}],"watch_group":56000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":56,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":22000}}],"watch_group":22000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":22,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":99000}}],"watch_group":99000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":99,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":34000,"duration":{"second":3,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":89000,"duration":{"second":3,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":60000,"duration":{"second":3,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":91000,"duration":{"second":3,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":57000}}],"watch_group":57000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":57,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":23000}}],"watch_group":23000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":23,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":14000,"duration":{"second":3,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":98000}}],"watch_group":98000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":98,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":56000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":56000,"duration":{"second":3,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":85000,"duration":{"second":3,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":54000}}],"watch_group":54000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":54,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":24000}}],"watch_group":24000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":24,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":36000,"duration":{"second":3,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":87000,"duration":{"second":3,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":59000,"duration":{"second":3,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":25000,"duration":{"second":3,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":43000,"duration":{"second":3,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":55000}}],"watch_group":55000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":55,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":25000}}],"watch_group":25000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":25,"duration":{"second":3,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":100000}}],"watch_group":100000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":100,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":58000,"duration":{"second":3,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":86000,"duration":{"second":3,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":60000}}],"watch_group":60000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":60,"duration":{"second":3,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":26000}}],"watch_group":26000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":26,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":41000,"duration":{"second":3,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":95000}}],"watch_group":95000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":95,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":82000,"duration":{"second":3,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":61000}}],"watch_group":61000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":61,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":27000}}],"watch_group":27000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":27,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":94000}}],"watch_group":94000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":94,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":98000,"duration":{"second":3,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":27000,"duration":{"second":3,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":57000,"duration":{"second":3,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":16000,"duration":{"second":3,"nanosecond":609000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":83000,"duration":{"second":3,"nanosecond":609000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":58000}}],"watch_group":58000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":58,"duration":{"second":3,"nanosecond":106000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":28000}}],"watch_group":28000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":28,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":97000}}],"watch_group":97000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":97,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":100000,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":59000}}],"watch_group":59000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":59,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":38000,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":29000}}],"watch_group":29000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":29,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":96000}}],"watch_group":96000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":96,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":84000,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":64000}}],"watch_group":64000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":64,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":30000}}],"watch_group":30000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":30,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":4000}}],"watch_group":4000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":4,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":91000}}],"watch_group":91000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":91,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":7000,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":29000,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":65000}}],"watch_group":65000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":65,"duration":{"second":0,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":31000}}],"watch_group":31000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":31,"duration":{"second":0,"nanosecond":602000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":5000}}],"watch_group":5000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":5,"duration":{"second":0,"nanosecond":602000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":90000}}],"watch_group":90000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":90,"duration":{"second":0,"nanosecond":602000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":18000,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":62000}}],"watch_group":62000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":62,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":65000,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":32000}}],"watch_group":32000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":32,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":2000}}],"watch_group":2000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":2,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":93000}}],"watch_group":93000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":93,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":64000,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":63000}}],"watch_group":63000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":63,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":33000}}],"watch_group":33000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":33,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":3000}}],"watch_group":3000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":3,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":80000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":9000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":92000}}],"watch_group":92000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":92,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":5000,"duration":{"second":3,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":20000,"duration":{"second":3,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":81000,"duration":{"second":3,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":97000,"duration":{"second":3,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":31000,"duration":{"second":3,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":68000}}],"watch_group":68000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":68,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":11000,"duration":{"second":3,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":34000}}],"watch_group":34000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":34,"duration":{"second":3,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":78000,"duration":{"second":3,"nanosecond":100000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":87000}}],"watch_group":87000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":87,"duration":{"second":3,"nanosecond":100000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":93000,"duration":{"second":3,"nanosecond":100000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":63000,"duration":{"second":3,"nanosecond":100000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":69000}}],"watch_group":69000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":69,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":35000}}],"watch_group":35000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":35,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":1,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":1000}}],"watch_group":1000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":1,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":33000,"duration":{"second":3,"nanosecond":100000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":79000,"duration":{"second":3,"nanosecond":100000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":86000}}],"watch_group":86000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":86,"duration":{"second":3,"nanosecond":99000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":62000,"duration":{"second":3,"nanosecond":99000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":66000}}],"watch_group":66000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":66,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":77000,"duration":{"second":3,"nanosecond":99000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":36000}}],"watch_group":36000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":36,"duration":{"second":3,"nanosecond":99000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":89000}}],"watch_group":89000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":89,"duration":{"second":3,"nanosecond":99000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":22000,"duration":{"second":3,"nanosecond":98000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":95000,"duration":{"second":3,"nanosecond":98000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":67000}}],"watch_group":67000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":67,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":37000}}],"watch_group":37000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":37,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":1000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":1000,"duration":{"second":3,"nanosecond":98000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":88000}}],"watch_group":88000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":88,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":61000,"duration":{"second":3,"nanosecond":97000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":3000,"duration":{"second":3,"nanosecond":97000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":73000}}],"watch_group":73000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":73,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":39000}}],"watch_group":39000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":39,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":13000}}],"watch_group":13000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":13,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":74000,"duration":{"second":3,"nanosecond":97000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":15000,"duration":{"second":3,"nanosecond":97000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":44000,"duration":{"second":3,"nanosecond":97000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":45000,"duration":{"second":3,"nanosecond":97000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":68000,"duration":{"second":3,"nanosecond":97000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":72000}}],"watch_group":72000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":72,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":38000}}],"watch_group":38000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":38,"duration":{"second":2,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":75000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":12000}}],"watch_group":12000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":12,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":35000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":24000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":90000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":71000}}],"watch_group":71000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":71,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":41000}}],"watch_group":41000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":41,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":42000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":11000}}],"watch_group":11000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":11,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":92000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":46000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":67000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":70000}}],"watch_group":70000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":70,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":76000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":40000}}],"watch_group":40000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":40,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":13000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":10000}}],"watch_group":10000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":10,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":88000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":47000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":66000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":77000}}],"watch_group":77000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":77,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":43000}}],"watch_group":43000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":43,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":9000}}],"watch_group":9000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":9,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":99000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":26000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":70000,"duration":{"second":2,"nanosecond":608000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":76000}}],"watch_group":76000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":76,"duration":{"second":2,"nanosecond":109000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":42000}}],"watch_group":42000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":42,"duration":{"second":2,"nanosecond":109000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":8000}}],"watch_group":8000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":8,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":37000,"duration":{"second":2,"nanosecond":108000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":49000,"duration":{"second":2,"nanosecond":108000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":71000,"duration":{"second":2,"nanosecond":108000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":48000,"duration":{"second":2,"nanosecond":107000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":75000}}],"watch_group":75000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":75,"duration":{"second":2,"nanosecond":107000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":45000}}],"watch_group":45000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":45,"duration":{"second":2,"nanosecond":107000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":7000}}],"watch_group":7000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":7,"duration":{"second":2,"nanosecond":107000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":39000,"duration":{"second":2,"nanosecond":106000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":73000,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":69000,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":17000,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":28000,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":74000}}],"watch_group":74000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":74,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":44000}}],"watch_group":44000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":44,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":6000}}],"watch_group":6000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":6,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":40000,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":81000}}],"watch_group":81000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":81,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":47000}}],"watch_group":47000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":47,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":21000}}],"watch_group":21000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":21,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":8000,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":19000,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":96000,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":80000}}],"watch_group":80000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":80,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":46000}}],"watch_group":46000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":46,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":20000}}],"watch_group":20000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":20,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":52000,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":6000,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":79000}}],"watch_group":79000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":79,"duration":{"second":2,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":49000}}],"watch_group":49000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":49,"duration":{"second":1,"nanosecond":607000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":19000}}],"watch_group":19000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":19,"duration":{"second":1,"nanosecond":607000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":50000,"duration":{"second":1,"nanosecond":607000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":72000,"duration":{"second":1,"nanosecond":607000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":30000,"duration":{"second":1,"nanosecond":607000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":78000}}],"watch_group":78000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":78,"duration":{"second":1,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":48000}}],"watch_group":48000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":48,"duration":{"second":1,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":18000}}],"watch_group":18000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":18,"duration":{"second":1,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":51000,"duration":{"second":1,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":85000}}],"watch_group":85000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":85,"duration":{"second":1,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":55000,"duration":{"second":1,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":51000}}],"watch_group":51000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":51,"duration":{"second":1,"nanosecond":107000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":17000}}],"watch_group":17000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":17,"duration":{"second":1,"nanosecond":107000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":21000,"duration":{"second":1,"nanosecond":107000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":4000,"duration":{"second":1,"nanosecond":107000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":84000}}],"watch_group":84000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":84,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":50000}}],"watch_group":50000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":50,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":16000}}],"watch_group":16000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":16,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":10000,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":54000,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":83000}}],"watch_group":83000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":83,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":32000,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":53000}}],"watch_group":53000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":53,"duration":{"second":0,"nanosecond":597000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":15000}}],"watch_group":15000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":15,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":2000,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":82000}}],"watch_group":82000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":82,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":52000}}],"watch_group":52000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":52,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":14000}}],"watch_group":14000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":14,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":53000,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":12000,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":23000,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":94000,"duration":{"second":1,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:55:44.665Z"}},{"id":"openflow:1","flow-node-inventory:port-number":55768,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"#UF$TABLE*0-72","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":72000000}},"flags":"SEND_FLOW_REM"},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"54","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.54/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":54}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"45","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.45/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":45}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"83","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.83/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":83}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"96","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.96/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":96}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"20","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.20/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":20}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"55","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.55/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":55}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"46","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.46/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":46}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"86","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.86/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":86}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"95","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.95/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":95}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"30","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.30/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":30}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"56","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.56/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":56}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"43","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.43/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":43}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"8","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.8/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":8}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"85","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.85/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":85}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"94","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.94/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":94}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"31","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.31/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":31}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"57","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.57/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":57}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"44","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.44/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":44}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"5","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.5/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":5}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"88","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.88/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":88}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"75","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.75/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":75}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"32","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.32/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":32}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"23","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.23/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":23}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"50","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.50/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":50}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"41","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.41/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":41}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"6","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.6/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":6}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"87","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.87/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":87}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"74","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.74/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":74}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"33","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.33/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":33}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"24","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.24/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":24}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"51","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.51/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":51}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"42","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.42/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":42}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"3","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.3/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":3}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"99","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.99/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":99}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"73","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.73/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":73}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"34","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.34/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":34}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"21","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.21/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":21}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"52","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.52/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":52}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"4","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.4/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":4}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"89","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.89/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":89}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"98","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.98/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":98}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"72","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.72/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":72}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"35","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.35/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":35}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"22","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.22/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":22}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"53","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.53/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":53}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"40","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.40/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":40}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"37","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.37/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":37}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"28","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.28/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":28}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"36","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.36/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":36}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"27","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.27/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":27}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"39","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.39/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":39}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"38","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.38/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":38}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":119000000}},"flags":""},{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"59","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.59/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":59}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"58","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.58/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":58}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"49","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.49/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":49}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"48","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.48/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":48}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"47","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.47/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":47}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":118000000}},"flags":""},{"id":"18","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.18/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":18}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"19","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.19/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":19}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"14","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.14/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":14}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"15","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.15/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":15}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"1","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"16","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.16/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":16}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""},{"id":"2","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.2/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":2}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":125000000}},"flags":""},{"id":"17","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.17/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":17}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":139000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"11","active-flows":101,"packets-matched":"0"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s1","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:55:44.535Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"de:fd:88:3a:0f:fe","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"7","received":"6"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":4,"nanosecond":223000000},"bytes":{"transmitted":"601","received":"516"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ee:44:6a:8a:83:4e","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":4,"nanosecond":212000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"3a:a8:41:44:b3:f9","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"7","received":"7"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":4,"nanosecond":224000000},"bytes":{"transmitted":"601","received":"601"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:group":[{"group-id":56,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":56000}}],"watch_group":56000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":56,"duration":{"second":1,"nanosecond":113000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":22000}}],"watch_group":22000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":22,"duration":{"second":1,"nanosecond":113000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":99000}}],"watch_group":99000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":99,"duration":{"second":1,"nanosecond":113000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":34000,"duration":{"second":3,"nanosecond":913000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":89000,"duration":{"second":3,"nanosecond":913000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":60000,"duration":{"second":3,"nanosecond":913000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":91000,"duration":{"second":3,"nanosecond":913000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":57000}}],"watch_group":57000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":57,"duration":{"second":1,"nanosecond":113000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":23000}}],"watch_group":23000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":23,"duration":{"second":0,"nanosecond":615000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":14000,"duration":{"second":3,"nanosecond":913000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":98000}}],"watch_group":98000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":98,"duration":{"second":0,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":56000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":56000,"duration":{"second":3,"nanosecond":912000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":85000,"duration":{"second":3,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":54000}}],"watch_group":54000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":54,"duration":{"second":0,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":24000}}],"watch_group":24000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":24,"duration":{"second":0,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":36000,"duration":{"second":3,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":87000,"duration":{"second":3,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":59000,"duration":{"second":3,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":25000,"duration":{"second":3,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":43000,"duration":{"second":3,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":55000}}],"watch_group":55000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":55,"duration":{"second":0,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":25000}}],"watch_group":25000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":25,"duration":{"second":3,"nanosecond":616000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":100000}}],"watch_group":100000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":100,"duration":{"second":0,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":58000,"duration":{"second":3,"nanosecond":616000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":86000,"duration":{"second":3,"nanosecond":616000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":60000}}],"watch_group":60000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":60,"duration":{"second":3,"nanosecond":615000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":26000}}],"watch_group":26000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":26,"duration":{"second":0,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":41000,"duration":{"second":3,"nanosecond":615000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":95000}}],"watch_group":95000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":95,"duration":{"second":0,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":82000,"duration":{"second":3,"nanosecond":615000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":61000}}],"watch_group":61000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":61,"duration":{"second":0,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":27000}}],"watch_group":27000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":27,"duration":{"second":0,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":94000}}],"watch_group":94000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":94,"duration":{"second":0,"nanosecond":612000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":98000,"duration":{"second":3,"nanosecond":615000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":27000,"duration":{"second":3,"nanosecond":615000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":57000,"duration":{"second":3,"nanosecond":615000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":16000,"duration":{"second":3,"nanosecond":615000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":83000,"duration":{"second":3,"nanosecond":615000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":58000}}],"watch_group":58000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":58,"duration":{"second":3,"nanosecond":108000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":28000}}],"watch_group":28000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":28,"duration":{"second":0,"nanosecond":612000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":97000}}],"watch_group":97000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":97,"duration":{"second":0,"nanosecond":612000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":100000,"duration":{"second":3,"nanosecond":108000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":59000}}],"watch_group":59000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":59,"duration":{"second":3,"nanosecond":108000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":38000,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":29000}}],"watch_group":29000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":29,"duration":{"second":0,"nanosecond":612000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":96000}}],"watch_group":96000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":96,"duration":{"second":0,"nanosecond":612000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":84000,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":64000}}],"watch_group":64000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":64,"duration":{"second":0,"nanosecond":612000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":30000}}],"watch_group":30000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":30,"duration":{"second":0,"nanosecond":612000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":4000}}],"watch_group":4000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":4,"duration":{"second":0,"nanosecond":612000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":91000}}],"watch_group":91000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":91,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":7000,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":29000,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":65000}}],"watch_group":65000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":65,"duration":{"second":0,"nanosecond":612000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":31000}}],"watch_group":31000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":31,"duration":{"second":0,"nanosecond":612000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":5000}}],"watch_group":5000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":5,"duration":{"second":0,"nanosecond":612000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":90000}}],"watch_group":90000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":90,"duration":{"second":0,"nanosecond":612000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":18000,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":62000}}],"watch_group":62000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":62,"duration":{"second":0,"nanosecond":611000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":65000,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":32000}}],"watch_group":32000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":32,"duration":{"second":0,"nanosecond":611000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":2000}}],"watch_group":2000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":2,"duration":{"second":0,"nanosecond":611000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":93000}}],"watch_group":93000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":93,"duration":{"second":0,"nanosecond":611000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":64000,"duration":{"second":3,"nanosecond":105000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":63000}}],"watch_group":63000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":63,"duration":{"second":0,"nanosecond":611000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":33000}}],"watch_group":33000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":33,"duration":{"second":0,"nanosecond":611000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":3000}}],"watch_group":3000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":3,"duration":{"second":0,"nanosecond":611000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":80000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":9000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":92000}}],"watch_group":92000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":92,"duration":{"second":0,"nanosecond":611000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":5000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":20000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":81000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":97000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":31000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":68000}}],"watch_group":68000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":68,"duration":{"second":0,"nanosecond":611000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":11000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":34000}}],"watch_group":34000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":34,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":78000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":87000}}],"watch_group":87000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":87,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":93000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":63000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":69000}}],"watch_group":69000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":69,"duration":{"second":0,"nanosecond":611000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":35000}}],"watch_group":35000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":35,"duration":{"second":0,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":1,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":1000}}],"watch_group":1000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":1,"duration":{"second":0,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":33000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":79000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":86000}}],"watch_group":86000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":86,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":62000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":66000}}],"watch_group":66000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":66,"duration":{"second":0,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":77000,"duration":{"second":3,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":36000}}],"watch_group":36000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":36,"duration":{"second":3,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":89000}}],"watch_group":89000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":89,"duration":{"second":3,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":22000,"duration":{"second":3,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":95000,"duration":{"second":3,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":67000}}],"watch_group":67000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":67,"duration":{"second":0,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":37000}}],"watch_group":37000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":37,"duration":{"second":0,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":1000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":1000,"duration":{"second":3,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":88000}}],"watch_group":88000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":88,"duration":{"second":0,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":61000,"duration":{"second":3,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":3000,"duration":{"second":3,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":73000}}],"watch_group":73000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":73,"duration":{"second":0,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":39000}}],"watch_group":39000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":39,"duration":{"second":0,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":13000}}],"watch_group":13000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":13,"duration":{"second":0,"nanosecond":610000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":74000,"duration":{"second":3,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":15000,"duration":{"second":3,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":44000,"duration":{"second":3,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":45000,"duration":{"second":3,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":68000,"duration":{"second":3,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":72000}}],"watch_group":72000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":72,"duration":{"second":0,"nanosecond":605000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":38000}}],"watch_group":38000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":38,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":75000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":12000}}],"watch_group":12000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":12,"duration":{"second":0,"nanosecond":604000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":35000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":24000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":90000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":71000}}],"watch_group":71000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":71,"duration":{"second":0,"nanosecond":604000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":41000}}],"watch_group":41000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":41,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":42000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":11000}}],"watch_group":11000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":11,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":92000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":46000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":67000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":70000}}],"watch_group":70000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":70,"duration":{"second":0,"nanosecond":604000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":76000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":40000}}],"watch_group":40000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":40,"duration":{"second":0,"nanosecond":604000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":13000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":10000}}],"watch_group":10000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":10,"duration":{"second":0,"nanosecond":604000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":88000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":47000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":66000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":77000}}],"watch_group":77000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":77,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":43000}}],"watch_group":43000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":43,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":9000}}],"watch_group":9000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":9,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":99000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":26000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":70000,"duration":{"second":2,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":76000}}],"watch_group":76000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":76,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":42000}}],"watch_group":42000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":42,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":8000}}],"watch_group":8000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":8,"duration":{"second":0,"nanosecond":604000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":37000,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":49000,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":71000,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":48000,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":75000}}],"watch_group":75000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":75,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":45000}}],"watch_group":45000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":45,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":7000}}],"watch_group":7000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":7,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":39000,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":73000,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":69000,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":17000,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":28000,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":74000}}],"watch_group":74000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":74,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":44000}}],"watch_group":44000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":44,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":6000}}],"watch_group":6000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":6,"duration":{"second":0,"nanosecond":604000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":40000,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":81000}}],"watch_group":81000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":81,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":47000}}],"watch_group":47000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":47,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":21000}}],"watch_group":21000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":21,"duration":{"second":0,"nanosecond":604000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":8000,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":19000,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":96000,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":80000}}],"watch_group":80000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":80,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":46000}}],"watch_group":46000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":46,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":20000}}],"watch_group":20000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":20,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":52000,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":6000,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":79000}}],"watch_group":79000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":79,"duration":{"second":2,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":49000}}],"watch_group":49000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":49,"duration":{"second":1,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":19000}}],"watch_group":19000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":19,"duration":{"second":1,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":50000,"duration":{"second":1,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":72000,"duration":{"second":1,"nanosecond":614000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":30000,"duration":{"second":1,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":78000}}],"watch_group":78000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":78,"duration":{"second":1,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":48000}}],"watch_group":48000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":48,"duration":{"second":1,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":18000}}],"watch_group":18000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":18,"duration":{"second":1,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":51000,"duration":{"second":1,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":85000}}],"watch_group":85000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":85,"duration":{"second":1,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":55000,"duration":{"second":1,"nanosecond":613000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":51000}}],"watch_group":51000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":51,"duration":{"second":1,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":17000}}],"watch_group":17000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":17,"duration":{"second":1,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":21000,"duration":{"second":1,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":4000,"duration":{"second":1,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":84000}}],"watch_group":84000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":84,"duration":{"second":1,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":50000}}],"watch_group":50000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":50,"duration":{"second":1,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":16000}}],"watch_group":16000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":16,"duration":{"second":1,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":10000,"duration":{"second":1,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":54000,"duration":{"second":1,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":83000}}],"watch_group":83000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":83,"duration":{"second":1,"nanosecond":115000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":32000,"duration":{"second":1,"nanosecond":113000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":53000}}],"watch_group":53000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":53,"duration":{"second":0,"nanosecond":604000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":15000}}],"watch_group":15000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":15,"duration":{"second":1,"nanosecond":113000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":2000,"duration":{"second":1,"nanosecond":113000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":82000}}],"watch_group":82000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":82,"duration":{"second":1,"nanosecond":113000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":52000}}],"watch_group":52000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":52,"duration":{"second":1,"nanosecond":113000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":14000}}],"watch_group":14000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":14,"duration":{"second":1,"nanosecond":113000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":53000,"duration":{"second":1,"nanosecond":113000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":12000,"duration":{"second":1,"nanosecond":113000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":23000,"duration":{"second":1,"nanosecond":113000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":94000,"duration":{"second":1,"nanosecond":113000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:55:44.674Z"}},{"id":"openflow:2","flow-node-inventory:port-number":55792,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"54","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.54/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":54}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"45","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.45/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":45}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"83","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.83/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":83}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"96","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.96/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":96}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"20","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.20/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":20}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"55","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.55/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":55}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"46","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.46/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":46}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"86","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.86/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":86}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"95","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.95/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":95}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"30","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.30/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":30}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"56","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.56/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":56}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"43","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.43/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":43}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"#UF$TABLE*0-73","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"2","byte-count":"170","duration":{"second":0,"nanosecond":84000000}},"flags":"SEND_FLOW_REM"},{"id":"8","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.8/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":8}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"85","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.85/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":85}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"94","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.94/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":94}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"31","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.31/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":31}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"57","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.57/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":57}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"44","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.44/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":44}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"5","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.5/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":5}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"88","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.88/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":88}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"75","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.75/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":75}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"32","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.32/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":32}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"23","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.23/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":23}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"50","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.50/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":50}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"41","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.41/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":41}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"6","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.6/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":6}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"87","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.87/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":87}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"74","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.74/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":74}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"33","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.33/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":33}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"24","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.24/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":24}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"51","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.51/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":51}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"42","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.42/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":42}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"3","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.3/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":3}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"99","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.99/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":99}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"73","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.73/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":73}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"34","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.34/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":34}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"21","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.21/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":21}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"52","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.52/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":52}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"4","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.4/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":4}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"89","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.89/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":89}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"98","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.98/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":98}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"72","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.72/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":72}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"35","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.35/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":35}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"22","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.22/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":22}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"53","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.53/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":53}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"40","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.40/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":40}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"37","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.37/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":37}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"28","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.28/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":28}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"36","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.36/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":36}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"27","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.27/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":27}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"39","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.39/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":39}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"38","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.38/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":38}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"59","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.59/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":59}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"58","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.58/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":58}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"49","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.49/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":49}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"48","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.48/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":48}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"47","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.47/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":47}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":110000000}},"flags":""},{"id":"18","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.18/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":18}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"19","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.19/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":19}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"14","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.14/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":14}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"15","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.15/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":15}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"1","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"16","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.16/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":16}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"2","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.2/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":2}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""},{"id":"17","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.17/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":17}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":134000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"16","active-flows":101,"packets-matched":"2"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s2","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:55:44.550Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"96:6d:7e:e3:20:cb","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"7","received":"7"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":4,"nanosecond":215000000},"bytes":{"transmitted":"601","received":"601"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"aa:85:98:60:af:45","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":4,"nanosecond":211000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"b2:63:e2:1f:6f:f5","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"7","received":"7"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":4,"nanosecond":215000000},"bytes":{"transmitted":"601","received":"601"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"6e:ec:a4:2a:50:8d","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"7","received":"6"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":4,"nanosecond":215000000},"bytes":{"transmitted":"601","received":"516"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:group":[{"group-id":56,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":56000}}],"watch_group":56000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":56,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":22000}}],"watch_group":22000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":22,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":99000}}],"watch_group":99000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":99,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":34000,"duration":{"second":3,"nanosecond":905000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":89000,"duration":{"second":3,"nanosecond":905000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":60000,"duration":{"second":3,"nanosecond":904000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":91000,"duration":{"second":3,"nanosecond":905000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":57000}}],"watch_group":57000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":57,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":23000}}],"watch_group":23000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":23,"duration":{"second":0,"nanosecond":589000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":14000,"duration":{"second":3,"nanosecond":905000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":98000}}],"watch_group":98000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":98,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":56000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":56000,"duration":{"second":3,"nanosecond":905000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":85000,"duration":{"second":3,"nanosecond":905000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":54000}}],"watch_group":54000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":54,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":24000}}],"watch_group":24000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":24,"duration":{"second":0,"nanosecond":589000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":36000,"duration":{"second":3,"nanosecond":904000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":87000,"duration":{"second":3,"nanosecond":905000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":59000,"duration":{"second":3,"nanosecond":903000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":25000,"duration":{"second":3,"nanosecond":904000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":43000,"duration":{"second":3,"nanosecond":904000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":55000}}],"watch_group":55000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":55,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":25000}}],"watch_group":25000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":25,"duration":{"second":3,"nanosecond":609000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":100000}}],"watch_group":100000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":100,"duration":{"second":0,"nanosecond":589000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":58000,"duration":{"second":3,"nanosecond":609000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":86000,"duration":{"second":3,"nanosecond":609000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":60000}}],"watch_group":60000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":60,"duration":{"second":3,"nanosecond":609000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":26000}}],"watch_group":26000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":26,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":41000,"duration":{"second":3,"nanosecond":607000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":95000}}],"watch_group":95000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":95,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":82000,"duration":{"second":3,"nanosecond":607000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":61000}}],"watch_group":61000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":61,"duration":{"second":0,"nanosecond":589000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":27000}}],"watch_group":27000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":27,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":94000}}],"watch_group":94000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":94,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":98000,"duration":{"second":3,"nanosecond":607000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":27000,"duration":{"second":3,"nanosecond":607000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":57000,"duration":{"second":3,"nanosecond":607000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":16000,"duration":{"second":3,"nanosecond":604000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":83000,"duration":{"second":3,"nanosecond":604000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":58000}}],"watch_group":58000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":58,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":28000}}],"watch_group":28000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":28,"duration":{"second":0,"nanosecond":589000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":97000}}],"watch_group":97000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":97,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":100000,"duration":{"second":3,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":59000}}],"watch_group":59000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":59,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":38000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":29000}}],"watch_group":29000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":29,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":96000}}],"watch_group":96000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":96,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":84000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":64000}}],"watch_group":64000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":64,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":30000}}],"watch_group":30000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":30,"duration":{"second":0,"nanosecond":589000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":4000}}],"watch_group":4000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":4,"duration":{"second":0,"nanosecond":589000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":91000}}],"watch_group":91000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":91,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":7000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":29000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":65000}}],"watch_group":65000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":65,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":31000}}],"watch_group":31000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":31,"duration":{"second":0,"nanosecond":589000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":5000}}],"watch_group":5000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":5,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":90000}}],"watch_group":90000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":90,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":18000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":62000}}],"watch_group":62000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":62,"duration":{"second":0,"nanosecond":589000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":65000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":32000}}],"watch_group":32000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":32,"duration":{"second":0,"nanosecond":589000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":2000}}],"watch_group":2000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":2,"duration":{"second":0,"nanosecond":589000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":93000}}],"watch_group":93000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":93,"duration":{"second":0,"nanosecond":589000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":64000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":63000}}],"watch_group":63000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":63,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":33000}}],"watch_group":33000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":33,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":3000}}],"watch_group":3000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":3,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":80000,"duration":{"second":3,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":9000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":92000}}],"watch_group":92000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":92,"duration":{"second":0,"nanosecond":589000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":5000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":20000,"duration":{"second":3,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":81000,"duration":{"second":3,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":97000,"duration":{"second":3,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":31000,"duration":{"second":3,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":68000}}],"watch_group":68000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":68,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":11000,"duration":{"second":3,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":34000}}],"watch_group":34000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":34,"duration":{"second":3,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":78000,"duration":{"second":3,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":87000}}],"watch_group":87000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":87,"duration":{"second":3,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":93000,"duration":{"second":3,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":63000,"duration":{"second":3,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":69000}}],"watch_group":69000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":69,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":35000}}],"watch_group":35000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":35,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":1,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":1000}}],"watch_group":1000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":1,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":33000,"duration":{"second":3,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":79000,"duration":{"second":3,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":86000}}],"watch_group":86000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":86,"duration":{"second":3,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":62000,"duration":{"second":3,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":66000}}],"watch_group":66000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":66,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":77000,"duration":{"second":3,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":36000}}],"watch_group":36000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":36,"duration":{"second":3,"nanosecond":100000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":89000}}],"watch_group":89000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":89,"duration":{"second":3,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":22000,"duration":{"second":3,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":95000,"duration":{"second":3,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":67000}}],"watch_group":67000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":67,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":37000}}],"watch_group":37000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":37,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":1000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":1000,"duration":{"second":3,"nanosecond":100000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":88000}}],"watch_group":88000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":88,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":61000,"duration":{"second":3,"nanosecond":100000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":3000,"duration":{"second":3,"nanosecond":97000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":73000}}],"watch_group":73000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":73,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":39000}}],"watch_group":39000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":39,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":13000}}],"watch_group":13000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":13,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":74000,"duration":{"second":3,"nanosecond":96000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":15000,"duration":{"second":3,"nanosecond":95000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":44000,"duration":{"second":3,"nanosecond":96000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":45000,"duration":{"second":3,"nanosecond":96000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":68000,"duration":{"second":3,"nanosecond":96000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":72000}}],"watch_group":72000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":72,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":38000}}],"watch_group":38000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":38,"duration":{"second":2,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":75000,"duration":{"second":2,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":12000}}],"watch_group":12000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":12,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":35000,"duration":{"second":2,"nanosecond":605000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":24000,"duration":{"second":2,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":90000,"duration":{"second":2,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":71000}}],"watch_group":71000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":71,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":41000}}],"watch_group":41000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":41,"duration":{"second":2,"nanosecond":605000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":42000,"duration":{"second":2,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":11000}}],"watch_group":11000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":11,"duration":{"second":2,"nanosecond":605000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":92000,"duration":{"second":2,"nanosecond":605000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":46000,"duration":{"second":2,"nanosecond":605000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":67000,"duration":{"second":2,"nanosecond":605000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":70000}}],"watch_group":70000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":70,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":76000,"duration":{"second":2,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":40000}}],"watch_group":40000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":40,"duration":{"second":0,"nanosecond":589000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":13000,"duration":{"second":2,"nanosecond":605000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":10000}}],"watch_group":10000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":10,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":88000,"duration":{"second":2,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":47000,"duration":{"second":2,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":66000,"duration":{"second":2,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":77000}}],"watch_group":77000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":77,"duration":{"second":2,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":43000}}],"watch_group":43000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":43,"duration":{"second":2,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":9000}}],"watch_group":9000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":9,"duration":{"second":2,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":99000,"duration":{"second":2,"nanosecond":605000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":26000,"duration":{"second":2,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":70000,"duration":{"second":2,"nanosecond":606000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":76000}}],"watch_group":76000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":76,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":42000}}],"watch_group":42000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":42,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":8000}}],"watch_group":8000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":8,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":37000,"duration":{"second":2,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":49000,"duration":{"second":2,"nanosecond":104000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":71000,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":48000,"duration":{"second":2,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":75000}}],"watch_group":75000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":75,"duration":{"second":2,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":45000}}],"watch_group":45000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":45,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":7000}}],"watch_group":7000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":7,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":39000,"duration":{"second":2,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":73000,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":69000,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":17000,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":28000,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":74000}}],"watch_group":74000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":74,"duration":{"second":2,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":44000}}],"watch_group":44000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":44,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":6000}}],"watch_group":6000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":6,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":40000,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":81000}}],"watch_group":81000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":81,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":47000}}],"watch_group":47000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":47,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":21000}}],"watch_group":21000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":21,"duration":{"second":0,"nanosecond":590000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":8000,"duration":{"second":2,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":19000,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":96000,"duration":{"second":2,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":80000}}],"watch_group":80000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":80,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":46000}}],"watch_group":46000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":46,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":20000}}],"watch_group":20000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":20,"duration":{"second":2,"nanosecond":102000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":52000,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":6000,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":79000}}],"watch_group":79000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":79,"duration":{"second":2,"nanosecond":103000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":49000}}],"watch_group":49000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":49,"duration":{"second":1,"nanosecond":603000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":19000}}],"watch_group":19000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":19,"duration":{"second":1,"nanosecond":602000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":50000,"duration":{"second":1,"nanosecond":603000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":72000,"duration":{"second":1,"nanosecond":603000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":30000,"duration":{"second":1,"nanosecond":603000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":78000}}],"watch_group":78000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":78,"duration":{"second":1,"nanosecond":603000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":48000}}],"watch_group":48000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":48,"duration":{"second":1,"nanosecond":603000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":18000}}],"watch_group":18000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":18,"duration":{"second":1,"nanosecond":603000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":51000,"duration":{"second":1,"nanosecond":603000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":85000}}],"watch_group":85000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":85,"duration":{"second":1,"nanosecond":602000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":55000,"duration":{"second":1,"nanosecond":602000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":51000}}],"watch_group":51000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":51,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":17000}}],"watch_group":17000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":17,"duration":{"second":1,"nanosecond":100000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":21000,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":4000,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":84000}}],"watch_group":84000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":84,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":50000}}],"watch_group":50000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":50,"duration":{"second":1,"nanosecond":100000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":16000}}],"watch_group":16000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":16,"duration":{"second":1,"nanosecond":100000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":10000,"duration":{"second":1,"nanosecond":100000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":54000,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":83000}}],"watch_group":83000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":83,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":32000,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":53000}}],"watch_group":53000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":53,"duration":{"second":0,"nanosecond":589000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":15000}}],"watch_group":15000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":15,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":2000,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":82000}}],"watch_group":82000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":82,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":52000}}],"watch_group":52000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":52,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":14000}}],"watch_group":14000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":14,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":53000,"duration":{"second":1,"nanosecond":100000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":12000,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":23000,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":94000,"duration":{"second":1,"nanosecond":101000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:55:44.684Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:46.874109" elapsed="0.010944"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-05-25T01:55:46.888645" level="INFO">Item found from container 600 times.</msg>
<msg time="2026-05-25T01:55:46.888728" level="INFO">${group_count} = 600</msg>
<var>${group_count}</var>
<arg>${resp.text}</arg>
<arg>"group-type"</arg>
<doc>Returns and logs how many times ``item`` is found from ``container``.</doc>
<status status="PASS" start="2026-05-25T01:55:46.885359" elapsed="0.003394"/>
</kw>
<kw name="Should Be Equal As Integers" owner="BuiltIn">
<arg>${group_count}</arg>
<arg>${groups}</arg>
<doc>Fails if objects are unequal after converting them to integers.</doc>
<status status="PASS" start="2026-05-25T01:55:46.888951" elapsed="0.000332"/>
</kw>
<arg>${all_groups}</arg>
<doc>Check number of groups in the inventory.</doc>
<status status="PASS" start="2026-05-25T01:55:46.828027" elapsed="0.061323"/>
</kw>
<doc>Check Flows after mininet starts.</doc>
<status status="PASS" start="2026-05-25T01:55:46.827483" elapsed="0.061978"/>
</test>
<test id="s1-s5-s1-t8" name="Check Flows In Switch" line="73">
<kw name="Check Flows In Mininet" owner="MininetKeywords">
<if>
<branch type="IF" condition="&quot;&quot;&quot;${mininet_conn}&quot;&quot;&quot; != &quot;&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${mininet_conn}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:46.890888" elapsed="0.000148"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:46.890641" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:46.890617" elapsed="0.000503"/>
</if>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:46.891561" level="INFO">${cmd} = dpctl dump-aggregate -O OpenFlow13</msg>
<var>${cmd}</var>
<arg>dpctl dump-aggregate -O OpenFlow13</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:46.891302" elapsed="0.000286"/>
</kw>
<kw name="Send Mininet Command" owner="MininetKeywords">
<if>
<branch type="IF" condition="&quot;&quot;&quot;${mininet_conn}&quot;&quot;&quot; != &quot;&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${mininet_conn}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:46.892445" elapsed="0.000133"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:46.892227" elapsed="0.000388"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:46.892209" elapsed="0.000430"/>
</if>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:55:46.895097" level="INFO">dpctl dump-aggregate -O OpenFlow13</msg>
<arg>${cmd}</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:55:46.892777" elapsed="0.002376"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:55:46.985494" level="INFO">*** s1 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=2 byte_count=140 flow_count=101
*** s2 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=5 byte_count=380 flow_count=101
*** s3 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=2 byte_count=140 flow_count=101
mininet&gt;</msg>
<msg time="2026-05-25T01:55:46.985665" level="INFO">${output} = *** s1 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=2 byte_count=140 flow_count=101
*** s2 ------------------------...</msg>
<var>${output}</var>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:55:46.895313" elapsed="0.090391"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:55:46.985790" elapsed="0.000065"/>
</return>
<msg time="2026-05-25T01:55:46.986045" level="INFO">${output} = *** s1 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=2 byte_count=140 flow_count=101
*** s2 ------------------------...</msg>
<var>${output}</var>
<arg>${mininet_conn}</arg>
<arg>${cmd}</arg>
<doc>Sends Command dpctl dump-aggregate -O OpenFlow13 to Mininet session 5 and returns read buffer response.</doc>
<status status="PASS" start="2026-05-25T01:55:46.891914" elapsed="0.094189"/>
</kw>
<kw name="Get Regexp Matches" owner="String">
<msg time="2026-05-25T01:55:46.987617" level="INFO">${flows} = ['101', '101', '101']</msg>
<var>${flows}</var>
<arg>${output}</arg>
<arg>(?&lt;=flow_count\=).*?(?=\r)</arg>
<doc>Returns a list of all non-overlapping matches in the given string.</doc>
<status status="PASS" start="2026-05-25T01:55:46.986374" elapsed="0.001287"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:46.988554" level="INFO">${total_flows} = 303</msg>
<var>${total_flows}</var>
<arg>sum(map(int, ${flows}))</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:46.987912" elapsed="0.000683"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<arg>${total_flows}</arg>
<arg>${flow_count}</arg>
<doc>Fails if objects are unequal after converting them to real numbers.</doc>
<status status="PASS" start="2026-05-25T01:55:46.988911" elapsed="0.000547"/>
</kw>
<arg>${mininet_conn_id}</arg>
<arg>${all_flows}</arg>
<doc>Sync with mininet to match exact number of flows</doc>
<status status="PASS" start="2026-05-25T01:55:46.890314" elapsed="0.099237"/>
</kw>
<doc>Check Flows after mininet starts.</doc>
<status status="PASS" start="2026-05-25T01:55:46.889746" elapsed="0.099969"/>
</test>
<test id="s1-s5-s1-t9" name="Disconnect Mininet" line="77">
<kw name="Disconnect Controller Mininet">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:46.991365" level="INFO">${rule} = OUTPUT -p all --source 10.30.170.200 --destination 10.30.171.68 -j DROP</msg>
<var>${rule}</var>
<arg>OUTPUT -p all --source ${ODL_SYSTEM_IP} --destination ${TOOLS_SYSTEM_IP} -j DROP</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:46.990930" elapsed="0.000464"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:46.991954" level="INFO">${command} = sudo /sbin/iptables -I OUTPUT -p all --source 10.30.170.200 --destination 10.30.171.68 -j DROP</msg>
<var>${command}</var>
<arg>'${action}'=='restore'</arg>
<arg>sudo /sbin/iptables -D ${rule}</arg>
<arg>sudo /sbin/iptables -I ${rule}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:46.991572" elapsed="0.000409"/>
</kw>
<kw name="Run Command On Controller" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:46.994225" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:46.993917" elapsed="0.000366"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:46.993894" elapsed="0.000414"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:55:46.994586" level="INFO">index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:55:46.994750" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:55:46.994459" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:46.995349" level="INFO">Attempting to execute command "sudo /sbin/iptables -I OUTPUT -p all --source 10.30.170.200 --destination 10.30.171.68 -j DROP" on remote system "10.30.170.200" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:46.994932" elapsed="0.000464"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:55:46.995945" level="INFO">${conn_id} = 6</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:55:46.995557" elapsed="0.000414"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:55:46.996883" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:55:46.996959" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:55:46.996605" elapsed="0.000378"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:46.997160" elapsed="0.000343"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:55:46.998368" level="INFO">Logging into '10.30.170.200:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:55:47.314040" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-173-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:55:13 UTC 2026

  System load:  0.09               Processes:             120
  Usage of /:   11.1% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.200
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

10 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:55:14 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-0-builder-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:55:46.998033" elapsed="0.316169"/>
</kw>
<msg time="2026-05-25T01:55:47.314294" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:46.997675" elapsed="0.316701"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:55:46.996208" elapsed="0.318286"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:47.315085" level="INFO">Executing command 'sudo /sbin/iptables -I OUTPUT -p all --source 10.30.170.200 --destination 10.30.171.68 -j DROP'.</msg>
<msg time="2026-05-25T01:55:47.337638" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:47.337892" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:55:47.337990" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:47.314779" elapsed="0.023263"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:47.338457" elapsed="0.000469"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:47.340099" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:47.339425" elapsed="0.000772"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:55:47.340705" elapsed="0.000040"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:47.340404" elapsed="0.000413"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:47.340323" elapsed="0.000546"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:55:47.341256" elapsed="0.000059"/>
</return>
<status status="PASS" start="2026-05-25T01:55:47.340986" elapsed="0.000402"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:47.340953" elapsed="0.000487"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:55:47.341514" elapsed="0.000031"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:47.349031" elapsed="0.000326"/>
</kw>
<msg time="2026-05-25T01:55:47.349409" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:47.347615" elapsed="0.001856"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:47.349632" elapsed="0.000021"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:47.349793" elapsed="0.000019"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:55:47.342260" elapsed="0.007626"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:55:46.993380" elapsed="0.356611"/>
</kw>
<msg time="2026-05-25T01:55:47.350130" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:46.992773" elapsed="0.357407"/>
</kw>
<arg>cmd=${command}</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Controller machine.</doc>
<status status="PASS" start="2026-05-25T01:55:46.992216" elapsed="0.358045"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:47.350685" level="INFO">${command} = sudo /sbin/iptables -L -n</msg>
<var>${command}</var>
<arg>sudo /sbin/iptables -L -n</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:47.350421" elapsed="0.000290"/>
</kw>
<kw name="Run Command On Controller" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:47.352892" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:47.352606" elapsed="0.000345"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:47.352586" elapsed="0.000388"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:55:47.353270" level="INFO">index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:55:47.353377" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:55:47.353140" elapsed="0.000264"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:47.353936" level="INFO">Attempting to execute command "sudo /sbin/iptables -L -n" on remote system "10.30.170.200" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:47.353556" elapsed="0.000426"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:55:47.354543" level="INFO">${conn_id} = 7</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:55:47.354155" elapsed="0.000415"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:55:47.355491" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:55:47.355568" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:55:47.355195" elapsed="0.000397"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:47.355750" elapsed="0.000337"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:55:47.356957" level="INFO">Logging into '10.30.170.200:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:55:47.679331" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-173-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:55:13 UTC 2026

  System load:  0.09               Processes:             120
  Usage of /:   11.1% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.200
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

10 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:55:47 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-0-builder-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:55:47.356643" elapsed="0.322809"/>
</kw>
<msg time="2026-05-25T01:55:47.679518" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:47.356260" elapsed="0.323319"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:55:47.354786" elapsed="0.324877"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:47.680028" level="INFO">Executing command 'sudo /sbin/iptables -L -n'.</msg>
<msg time="2026-05-25T01:55:47.703168" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:47.703428" level="INFO">${stdout} = Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy DROP)
target     prot opt source               destination         
DOCKER-USER  all  -...</msg>
<msg time="2026-05-25T01:55:47.703529" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:47.679847" elapsed="0.023732"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:47.703948" elapsed="0.000510"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:47.705485" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:47.704875" elapsed="0.000703"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:55:47.706012" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:47.705735" elapsed="0.000414"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:47.705690" elapsed="0.000511"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:55:47.706669" elapsed="0.000059"/>
</return>
<status status="PASS" start="2026-05-25T01:55:47.706424" elapsed="0.000377"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:47.706385" elapsed="0.000470"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:55:47.706927" elapsed="0.000031"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:47.713199" elapsed="0.000140"/>
</kw>
<msg time="2026-05-25T01:55:47.713382" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:47.712625" elapsed="0.000818"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:47.713610" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:47.713774" elapsed="0.000020"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:55:47.707652" elapsed="0.006202"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:55:47.352041" elapsed="0.361903"/>
</kw>
<msg time="2026-05-25T01:55:47.714004" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:47.351476" elapsed="0.362574"/>
</kw>
<msg time="2026-05-25T01:55:47.714209" level="INFO">${output} = Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy DROP)
target     prot opt source               destination         
DOCKER-USER  all  -...</msg>
<var>${output}</var>
<arg>cmd=${command}</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Controller machine.</doc>
<status status="PASS" start="2026-05-25T01:55:47.350913" elapsed="0.363324"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:47.714641" level="INFO">Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy DROP)
target     prot opt source               destination         
DOCKER-USER  all  --  0.0.0.0/0            0.0.0.0/0           
DOCKER-FORWARD  all  --  0.0.0.0/0            0.0.0.0/0           

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         
DROP       all  --  10.30.170.200        10.30.171.68        

Chain DOCKER (1 references)
target     prot opt source               destination         
DROP       all  --  0.0.0.0/0            0.0.0.0/0           

Chain DOCKER-BRIDGE (1 references)
target     prot opt source               destination         
DOCKER     all  --  0.0.0.0/0            0.0.0.0/0           

Chain DOCKER-CT (1 references)
target     prot opt source               destination         
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0            ctstate RELATED,ESTABLISHED

Chain DOCKER-FORWARD (1 references)
target     prot opt source               destination         
DOCKER-CT  all  --  0.0.0.0/0            0.0.0.0/0           
DOCKER-INTERNAL  all  --  0.0.0.0/0            0.0.0.0/0           
DOCKER-BRIDGE  all  --  0.0.0.0/0            0.0.0.0/0           
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           

Chain DOCKER-INTERNAL (1 references)
target     prot opt source               destination         

Chain DOCKER-USER (1 references)
target     prot opt source               destination         </msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:47.714394" elapsed="0.000301"/>
</kw>
<doc>Break and restore controller to mininet connection via iptables.</doc>
<status status="PASS" start="2026-05-25T01:55:46.990624" elapsed="0.724130"/>
</kw>
<doc>Disconnect Mininet.</doc>
<status status="PASS" start="2026-05-25T01:55:46.990155" elapsed="0.724719"/>
</test>
<test id="s1-s5-s1-t10" name="Check No Switches After Disconnect" line="81">
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:47.722451" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:47.722786" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3118'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:55:47.723303" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:47.716648" elapsed="0.006696"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:47.726944" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:47.723619" elapsed="0.003422"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-05-25T01:55:47.733755" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</msg>
<arg>${resp.text}</arg>
<arg>openflow:${switch}</arg>
<doc>Fails if ``container`` contains ``item`` one or more times.</doc>
<status status="FAIL" start="2026-05-25T01:55:47.730466" elapsed="0.003397">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-05-25T01:55:47.730219" elapsed="0.003778">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-05-25T01:55:47.727147" elapsed="0.006962">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-05-25T01:55:47.716287" elapsed="0.017969">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:48.743782" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:48.744341" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3118'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:55:48.744622" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:48.736046" elapsed="0.008636"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:48.750171" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:48.745187" elapsed="0.005081"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-05-25T01:55:48.757155" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</msg>
<arg>${resp.text}</arg>
<arg>openflow:${switch}</arg>
<doc>Fails if ``container`` contains ``item`` one or more times.</doc>
<status status="FAIL" start="2026-05-25T01:55:48.753619" elapsed="0.003719">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-05-25T01:55:48.753373" elapsed="0.004113">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-05-25T01:55:48.750351" elapsed="0.007261">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-05-25T01:55:48.735210" elapsed="0.022636">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:49.767389" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:49.767727" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3118'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:55:49.767909" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:49.759893" elapsed="0.008054"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:49.771724" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:49.768290" elapsed="0.003619"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-05-25T01:55:49.778825" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</msg>
<arg>${resp.text}</arg>
<arg>openflow:${switch}</arg>
<doc>Fails if ``container`` contains ``item`` one or more times.</doc>
<status status="FAIL" start="2026-05-25T01:55:49.775314" elapsed="0.003651">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-05-25T01:55:49.775051" elapsed="0.004081">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-05-25T01:55:49.771995" elapsed="0.007317">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-05-25T01:55:49.758970" elapsed="0.020547">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:50.789165" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:50.789502" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3118'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:55:50.789735" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:50.781633" elapsed="0.008140"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:50.793936" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:50.790111" elapsed="0.003922"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-05-25T01:55:50.801003" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</msg>
<arg>${resp.text}</arg>
<arg>openflow:${switch}</arg>
<doc>Fails if ``container`` contains ``item`` one or more times.</doc>
<status status="FAIL" start="2026-05-25T01:55:50.797439" elapsed="0.003721">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-05-25T01:55:50.797194" elapsed="0.004150">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-05-25T01:55:50.794138" elapsed="0.007338">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-05-25T01:55:50.780685" elapsed="0.020994">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:51.811397" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:51.811765" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3118'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:55:51.811983" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:51.803743" elapsed="0.008280"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:51.815977" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:51.812407" elapsed="0.003689"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-05-25T01:55:51.823145" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</msg>
<arg>${resp.text}</arg>
<arg>openflow:${switch}</arg>
<doc>Fails if ``container`` contains ``item`` one or more times.</doc>
<status status="FAIL" start="2026-05-25T01:55:51.819476" elapsed="0.003894">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-05-25T01:55:51.819229" elapsed="0.004289">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-05-25T01:55:51.816187" elapsed="0.007460">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-05-25T01:55:51.802763" elapsed="0.021189">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:52.833938" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:52.834327" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3118'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:55:52.834507" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:52.826021" elapsed="0.008523"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:52.838352" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:52.834872" elapsed="0.003649"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-05-25T01:55:52.844443" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</msg>
<arg>${resp.text}</arg>
<arg>openflow:${switch}</arg>
<doc>Fails if ``container`` contains ``item`` one or more times.</doc>
<status status="FAIL" start="2026-05-25T01:55:52.841904" elapsed="0.002641">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-05-25T01:55:52.841699" elapsed="0.002951">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-05-25T01:55:52.838604" elapsed="0.006166">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-05-25T01:55:52.824983" elapsed="0.019935">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:53.855840" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:53.856233" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3118'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:55:53.856480" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:53.847048" elapsed="0.009470"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:53.860670" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:53.856844" elapsed="0.003924"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-05-25T01:55:53.867753" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</msg>
<arg>${resp.text}</arg>
<arg>openflow:${switch}</arg>
<doc>Fails if ``container`` contains ``item`` one or more times.</doc>
<status status="FAIL" start="2026-05-25T01:55:53.864240" elapsed="0.003650">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-05-25T01:55:53.863961" elapsed="0.004136">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-05-25T01:55:53.860851" elapsed="0.007380">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-05-25T01:55:53.845940" elapsed="0.022496">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:54.877919" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:54.878297" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3118'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:55:54.878477" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:54.870598" elapsed="0.007916"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:54.882371" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:54.878855" elapsed="0.003612"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-05-25T01:55:54.889605" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</msg>
<arg>${resp.text}</arg>
<arg>openflow:${switch}</arg>
<doc>Fails if ``container`` contains ``item`` one or more times.</doc>
<status status="FAIL" start="2026-05-25T01:55:54.885887" elapsed="0.003952">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-05-25T01:55:54.885640" elapsed="0.004348">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-05-25T01:55:54.882550" elapsed="0.007586">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-05-25T01:55:54.869611" elapsed="0.020784">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:55.899801" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:55.900377" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3118'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:55:55.900657" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:55.892348" elapsed="0.008369"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:55.906947" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:55.901232" elapsed="0.005911"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-05-25T01:55:55.914150" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</msg>
<arg>${resp.text}</arg>
<arg>openflow:${switch}</arg>
<doc>Fails if ``container`` contains ``item`` one or more times.</doc>
<status status="FAIL" start="2026-05-25T01:55:55.910519" elapsed="0.003771">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-05-25T01:55:55.910261" elapsed="0.004170">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-05-25T01:55:55.907233" elapsed="0.007364">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-05-25T01:55:55.891418" elapsed="0.023386">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:56.923984" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:56.924352" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3118'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:55:56.924596" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:56.916856" elapsed="0.007779"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:56.928753" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:56.924958" elapsed="0.003894"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-05-25T01:55:56.934700" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</msg>
<arg>${resp.text}</arg>
<arg>openflow:${switch}</arg>
<doc>Fails if ``container`` contains ``item`` one or more times.</doc>
<status status="FAIL" start="2026-05-25T01:55:56.932171" elapsed="0.002631">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-05-25T01:55:56.931977" elapsed="0.002958">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-05-25T01:55:56.928934" elapsed="0.006093">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-05-25T01:55:56.915912" elapsed="0.019277">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inv...
    [ Message content over the limit has been removed. ]
.../opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:57.943980" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:57.944296" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '222'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:55:57.944522" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:57.937146" elapsed="0.007437"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:57.950164" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:57.945063" elapsed="0.005172"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>openflow:${switch}</arg>
<doc>Fails if ``container`` contains ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:57.953593" elapsed="0.003270"/>
</kw>
<var name="${switch}">1</var>
<status status="PASS" start="2026-05-25T01:55:57.953348" elapsed="0.003574"/>
</iter>
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>openflow:${switch}</arg>
<doc>Fails if ``container`` contains ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:57.957306" elapsed="0.003234"/>
</kw>
<var name="${switch}">2</var>
<status status="PASS" start="2026-05-25T01:55:57.957039" elapsed="0.003559"/>
</iter>
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>openflow:${switch}</arg>
<doc>Fails if ``container`` contains ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:57.960946" elapsed="0.002612"/>
</kw>
<var name="${switch}">3</var>
<status status="PASS" start="2026-05-25T01:55:57.960712" elapsed="0.002887"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-05-25T01:55:57.950315" elapsed="0.013313"/>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="PASS" start="2026-05-25T01:55:57.936220" elapsed="0.027470"/>
</kw>
<arg>30s</arg>
<arg>1s</arg>
<arg>FlowLib.Check No Switches In Topology</arg>
<arg>${SWITCHES}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:47.715673" elapsed="10.248067"/>
</kw>
<doc>Check no switches in topology.</doc>
<status status="PASS" start="2026-05-25T01:55:47.715169" elapsed="10.248700"/>
</test>
<test id="s1-s5-s1-t11" name="Reconnect Mininet" line="85">
<kw name="Disconnect Controller Mininet">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:57.965573" level="INFO">${rule} = OUTPUT -p all --source 10.30.170.200 --destination 10.30.171.68 -j DROP</msg>
<var>${rule}</var>
<arg>OUTPUT -p all --source ${ODL_SYSTEM_IP} --destination ${TOOLS_SYSTEM_IP} -j DROP</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:57.965203" elapsed="0.000398"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:55:57.966171" level="INFO">${command} = sudo /sbin/iptables -D OUTPUT -p all --source 10.30.170.200 --destination 10.30.171.68 -j DROP</msg>
<var>${command}</var>
<arg>'${action}'=='restore'</arg>
<arg>sudo /sbin/iptables -D ${rule}</arg>
<arg>sudo /sbin/iptables -I ${rule}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:55:57.965773" elapsed="0.000425"/>
</kw>
<kw name="Run Command On Controller" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:57.968785" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:57.968488" elapsed="0.000356"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:57.968464" elapsed="0.000405"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:55:57.969180" level="INFO">index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:55:57.969311" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:55:57.969022" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:57.969898" level="INFO">Attempting to execute command "sudo /sbin/iptables -D OUTPUT -p all --source 10.30.170.200 --destination 10.30.171.68 -j DROP" on remote system "10.30.170.200" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:57.969495" elapsed="0.000463"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:55:57.970554" level="INFO">${conn_id} = 8</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:55:57.970143" elapsed="0.000438"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:55:57.971677" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:55:57.971756" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:55:57.971214" elapsed="0.000567"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:57.971946" elapsed="0.000347"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:55:57.973298" level="INFO">Logging into '10.30.170.200:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:55:58.296122" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-173-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:55:13 UTC 2026

  System load:  0.09               Processes:             120
  Usage of /:   11.1% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.200
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

10 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:55:47 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-0-builder-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:55:57.972896" elapsed="0.323377"/>
</kw>
<msg time="2026-05-25T01:55:58.296359" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:57.972526" elapsed="0.323916"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:55:57.970799" elapsed="0.325775"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:58.297110" level="INFO">Executing command 'sudo /sbin/iptables -D OUTPUT -p all --source 10.30.170.200 --destination 10.30.171.68 -j DROP'.</msg>
<msg time="2026-05-25T01:55:58.340151" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:58.340399" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:55:58.340520" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:58.296831" elapsed="0.043742"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:58.340950" elapsed="0.000498"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:58.342559" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:58.341910" elapsed="0.000743"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:55:58.343154" elapsed="0.000039"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:58.342832" elapsed="0.000431"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:58.342779" elapsed="0.000535"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:55:58.343666" elapsed="0.000057"/>
</return>
<status status="PASS" start="2026-05-25T01:55:58.343431" elapsed="0.000362"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:58.343398" elapsed="0.000447"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:55:58.343918" elapsed="0.000030"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:58.350480" elapsed="0.000201"/>
</kw>
<msg time="2026-05-25T01:55:58.350742" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:58.349598" elapsed="0.001229"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:58.351049" elapsed="0.000051"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:58.351301" elapsed="0.000028"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:55:58.344663" elapsed="0.006751"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:55:57.967930" elapsed="0.383610"/>
</kw>
<msg time="2026-05-25T01:55:58.351614" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:57.967345" elapsed="0.384333"/>
</kw>
<arg>cmd=${command}</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Controller machine.</doc>
<status status="PASS" start="2026-05-25T01:55:57.966576" elapsed="0.385420"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:55:58.352627" level="INFO">${command} = sudo /sbin/iptables -L -n</msg>
<var>${command}</var>
<arg>sudo /sbin/iptables -L -n</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:55:58.352235" elapsed="0.000428"/>
</kw>
<kw name="Run Command On Controller" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:58.355644" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:58.355245" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:58.355218" elapsed="0.000539"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:55:58.356151" level="INFO">index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:55:58.356364" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:55:58.355968" elapsed="0.000448"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:58.359585" level="INFO">Attempting to execute command "sudo /sbin/iptables -L -n" on remote system "10.30.170.200" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:58.356635" elapsed="0.003020"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:55:58.360465" level="INFO">${conn_id} = 9</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:55:58.359883" elapsed="0.000619"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:55:58.361543" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:55:58.361620" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:55:58.361262" elapsed="0.000383"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:58.361808" elapsed="0.000346"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:55:58.363002" level="INFO">Logging into '10.30.170.200:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:55:58.689139" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-173-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:55:13 UTC 2026

  System load:  0.09               Processes:             120
  Usage of /:   11.1% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.200
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

10 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:55:58 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-0-builder-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:55:58.362688" elapsed="0.326580"/>
</kw>
<msg time="2026-05-25T01:55:58.689346" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:58.362327" elapsed="0.327099"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:55:58.360811" elapsed="0.328720"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:55:58.690017" level="INFO">Executing command 'sudo /sbin/iptables -L -n'.</msg>
<msg time="2026-05-25T01:55:58.712987" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:55:58.713267" level="INFO">${stdout} = Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy DROP)
target     prot opt source               destination         
DOCKER-USER  all  -...</msg>
<msg time="2026-05-25T01:55:58.713369" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:55:58.689772" elapsed="0.023649"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:55:58.713787" elapsed="0.000495"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:58.715372" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:58.714734" elapsed="0.000731"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:55:58.715955" elapsed="0.000040"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:55:58.715659" elapsed="0.000434"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:58.715587" elapsed="0.000562"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:55:58.716505" elapsed="0.000057"/>
</return>
<status status="PASS" start="2026-05-25T01:55:58.716270" elapsed="0.000365"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:58.716235" elapsed="0.000453"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:55:58.716761" elapsed="0.000030"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:55:58.722889" elapsed="0.000224"/>
</kw>
<msg time="2026-05-25T01:55:58.723176" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:58.722101" elapsed="0.001161"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:58.723485" elapsed="0.000030"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:58.723729" elapsed="0.000029"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:55:58.717493" elapsed="0.006351"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:55:58.354496" elapsed="0.369473"/>
</kw>
<msg time="2026-05-25T01:55:58.724144" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:55:58.353705" elapsed="0.370507"/>
</kw>
<msg time="2026-05-25T01:55:58.724369" level="INFO">${output} = Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy DROP)
target     prot opt source               destination         
DOCKER-USER  all  -...</msg>
<var>${output}</var>
<arg>cmd=${command}</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Controller machine.</doc>
<status status="PASS" start="2026-05-25T01:55:58.352942" elapsed="0.371463"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:58.724966" level="INFO">Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy DROP)
target     prot opt source               destination         
DOCKER-USER  all  --  0.0.0.0/0            0.0.0.0/0           
DOCKER-FORWARD  all  --  0.0.0.0/0            0.0.0.0/0           

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

Chain DOCKER (1 references)
target     prot opt source               destination         
DROP       all  --  0.0.0.0/0            0.0.0.0/0           

Chain DOCKER-BRIDGE (1 references)
target     prot opt source               destination         
DOCKER     all  --  0.0.0.0/0            0.0.0.0/0           

Chain DOCKER-CT (1 references)
target     prot opt source               destination         
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0            ctstate RELATED,ESTABLISHED

Chain DOCKER-FORWARD (1 references)
target     prot opt source               destination         
DOCKER-CT  all  --  0.0.0.0/0            0.0.0.0/0           
DOCKER-INTERNAL  all  --  0.0.0.0/0            0.0.0.0/0           
DOCKER-BRIDGE  all  --  0.0.0.0/0            0.0.0.0/0           
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           

Chain DOCKER-INTERNAL (1 references)
target     prot opt source               destination         

Chain DOCKER-USER (1 references)
target     prot opt source               destination         </msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:58.724619" elapsed="0.000426"/>
</kw>
<arg>restore</arg>
<doc>Break and restore controller to mininet connection via iptables.</doc>
<status status="PASS" start="2026-05-25T01:55:57.964836" elapsed="0.760310"/>
</kw>
<doc>Connect Mininet.</doc>
<status status="PASS" start="2026-05-25T01:55:57.964351" elapsed="0.760955"/>
</test>
<test id="s1-s5-s1-t12" name="Check Linear Topology After Mininet Reconnects" line="89">
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Linear Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:58.732781" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:58.732926" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '222'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:55:58.733037" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:58.727648" elapsed="0.005435"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:58.735536" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:58.733290" elapsed="0.002308"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-05-25T01:55:58.740708" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"node-id":"openflow:1"'</msg>
<arg>${resp.text}</arg>
<arg>"node-id":"openflow:${switch}"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="FAIL" start="2026-05-25T01:55:58.738137" elapsed="0.002676">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"node-id":"openflow:1"'</status>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:1"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:58.741115" elapsed="0.000032"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:58.741394" elapsed="0.000028"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:58.741663" elapsed="0.000028"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:58.741932" elapsed="0.000027"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${edge}</var>
<arg>${switch}==1 or ${switch}==${switches}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:58.742227" elapsed="0.000029"/>
</kw>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:58.742590" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:58.742351" elapsed="0.000356"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:58.742325" elapsed="0.000418"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:58.743057" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:58.742818" elapsed="0.000337"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:58.742796" elapsed="0.000390"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:58.743494" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:58.743259" elapsed="0.000323"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:55:58.743238" elapsed="0.000376"/>
</if>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-05-25T01:55:58.737949" elapsed="0.005729">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"node-id":"openflow:1"'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-05-25T01:55:58.735661" elapsed="0.008101">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"node-id":"openflow:1"'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check Linear topology.</doc>
<status status="FAIL" start="2026-05-25T01:55:58.727179" elapsed="0.016721">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' does not contain '"node-id":"openflow:1"'</status>
</kw>
<kw name="Check Linear Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:59.753498" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:59.754365" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3118'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:55:59.754550" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:59.746355" elapsed="0.008233"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:59.758826" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']"},{"node-id":"openflow:3","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"node-id":"openflow:1","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:59.754939" elapsed="0.004090"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"node-id":"openflow:${switch}"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:59.762670" elapsed="0.003525"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:1"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:59.766473" elapsed="0.003456"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:59.770258" elapsed="0.003464"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:59.774003" elapsed="0.002514"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:59.776711" elapsed="0.002460"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:59.779830" level="INFO">${edge} = True</msg>
<var>${edge}</var>
<arg>${switch}==1 or ${switch}==${switches}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:59.779376" elapsed="0.000481"/>
</kw>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:59.780209" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:59.779938" elapsed="0.000338"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:59.779916" elapsed="0.000387"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:59.780596" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:59.780358" elapsed="0.000294"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:59.780342" elapsed="0.000332"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:59.780970" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:59.780726" elapsed="0.000313"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:59.780711" elapsed="0.000376"/>
</if>
<var name="${switch}">1</var>
<status status="PASS" start="2026-05-25T01:55:59.762424" elapsed="0.018691"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"node-id":"openflow:${switch}"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:59.781521" elapsed="0.002462"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:1"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:59.784194" elapsed="0.002501"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:59.786888" elapsed="0.002460"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:59.789889" elapsed="0.002499"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:59.792596" elapsed="0.002683"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:59.795946" level="INFO">${edge} = False</msg>
<var>${edge}</var>
<arg>${switch}==1 or ${switch}==${switches}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:59.795481" elapsed="0.000494"/>
</kw>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:59.796321" elapsed="0.002476"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:59.796055" elapsed="0.002784"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:59.796031" elapsed="0.002836"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:59.799186" elapsed="0.002479"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:59.798923" elapsed="0.002783"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:59.798907" elapsed="0.002825"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:59.802033" elapsed="0.002477"/>
</kw>
<status status="PASS" start="2026-05-25T01:55:59.801788" elapsed="0.002764"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:59.801771" elapsed="0.002807"/>
</if>
<var name="${switch}">2</var>
<status status="PASS" start="2026-05-25T01:55:59.781342" elapsed="0.023260"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"node-id":"openflow:${switch}"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:59.805020" elapsed="0.002615"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:1"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:59.807839" elapsed="0.002486"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:59.810518" elapsed="0.002447"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:59.813185" elapsed="0.002452"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:55:59.815842" elapsed="0.002504"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:55:59.819154" level="INFO">${edge} = True</msg>
<var>${edge}</var>
<arg>${switch}==1 or ${switch}==${switches}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:55:59.818672" elapsed="0.000510"/>
</kw>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:59.819498" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:59.819255" elapsed="0.000301"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:59.819236" elapsed="0.000343"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:59.819878" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:59.819633" elapsed="0.000304"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:59.819617" elapsed="0.000343"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:55:59.820265" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:55:59.820013" elapsed="0.000310"/>
</branch>
<status status="PASS" start="2026-05-25T01:55:59.819997" elapsed="0.000350"/>
</if>
<var name="${switch}">3</var>
<status status="PASS" start="2026-05-25T01:55:59.804851" elapsed="0.015518"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-05-25T01:55:59.759135" elapsed="0.061264"/>
</for>
<arg>${SWITCHES}</arg>
<doc>Check Linear topology.</doc>
<status status="PASS" start="2026-05-25T01:55:59.745323" elapsed="0.075152"/>
</kw>
<arg>30s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Linear Topology</arg>
<arg>${SWITCHES}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:58.726203" elapsed="1.094327"/>
</kw>
<doc>Check Linear Topology.</doc>
<status status="PASS" start="2026-05-25T01:55:58.725572" elapsed="1.095091"/>
</test>
<test id="s1-s5-s1-t13" name="Remove Flows And Groups After Mininet Reconnects" line="93">
<for flavor="IN RANGE">
<iter>
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:59.832175" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=1 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=1 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:59.832241" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=1 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch}/flow-node-inventory:table=0/flow=1</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:59.823676" elapsed="0.008642"/>
</kw>
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:59.839091" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:group=1 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:group=1 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:59.839155" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:group=1 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch}/flow-node-inventory:group=1</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:59.832547" elapsed="0.006693"/>
</kw>
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:59.845140" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:group=1000 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:group=1000 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:59.845203" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:group=1000 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch}/flow-node-inventory:group=1000</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:59.839465" elapsed="0.005837"/>
</kw>
<var name="${switch}">1</var>
<status status="PASS" start="2026-05-25T01:55:59.823525" elapsed="0.021833"/>
</iter>
<iter>
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:59.850715" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/flow-node-inventory:table=0/flow=1 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/flow-node-inventory:table=0/flow=1 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:59.850778" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/flow-node-inventory:table=0/flow=1 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch}/flow-node-inventory:table=0/flow=1</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:59.845736" elapsed="0.005122"/>
</kw>
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:59.856710" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/flow-node-inventory:group=1 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/flow-node-inventory:group=1 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:59.856778" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/flow-node-inventory:group=1 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch}/flow-node-inventory:group=1</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:59.851122" elapsed="0.005823"/>
</kw>
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:59.861801" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/flow-node-inventory:group=1000 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/flow-node-inventory:group=1000 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:59.861863" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/flow-node-inventory:group=1000 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch}/flow-node-inventory:group=1000</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:59.857221" elapsed="0.004727"/>
</kw>
<var name="${switch}">2</var>
<status status="PASS" start="2026-05-25T01:55:59.845539" elapsed="0.016464"/>
</iter>
<iter>
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:59.867491" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3/flow-node-inventory:table=0/flow=1 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A3/flow-node-inventory:table=0/flow=1 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:59.867554" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3/flow-node-inventory:table=0/flow=1 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch}/flow-node-inventory:table=0/flow=1</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:59.862376" elapsed="0.005261"/>
</kw>
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:59.873012" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3/flow-node-inventory:group=1 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A3/flow-node-inventory:group=1 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:59.873103" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3/flow-node-inventory:group=1 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch}/flow-node-inventory:group=1</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:59.867888" elapsed="0.005302"/>
</kw>
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:59.882584" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3/flow-node-inventory:group=1000 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A3/flow-node-inventory:group=1000 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:59.882690" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3/flow-node-inventory:group=1000 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch}/flow-node-inventory:group=1000</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:59.873444" elapsed="0.009369"/>
</kw>
<var name="${switch}">3</var>
<status status="PASS" start="2026-05-25T01:55:59.862182" elapsed="0.020713"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-05-25T01:55:59.821344" elapsed="0.061605"/>
</for>
<doc>Remove some groups and flows while network is down.</doc>
<status status="PASS" start="2026-05-25T01:55:59.820896" elapsed="0.062326"/>
</test>
<test id="s1-s5-s1-t14" name="Check Flows In Operational DS After Mininet Reconnects" line="107">
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Number Of Flows" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:55:59.927292" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:55:59.932641" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":49488,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:55:59.933312" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_NODES_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:55:59.885888" elapsed="0.047491"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:55:59.939176" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":49488,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"54","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.54/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":54}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":30000000}},"flags":""},{"id":"45","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.45/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":45}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"83","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.83/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":83}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"96","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.96/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":96}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"20","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.20/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":20}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"55","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.55/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":55}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":30000000}},"flags":""},{"id":"46","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.46/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":46}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"86","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.86/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":86}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"95","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.95/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":95}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"30","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.30/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":30}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"56","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.56/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":56}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":30000000}},"flags":""},{"id":"43","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.43/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":43}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":31000000}},"flags":""},{"id":"8","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.8/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":8}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"85","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.85/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":85}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"94","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.94/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":94}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"31","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.31/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":31}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"57","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.57/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":57}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":30000000}},"flags":""},{"id":"44","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.44/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":44}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":31000000}},"flags":""},{"id":"#UF$TABLE*0-76","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"6","byte-count":"450","duration":{"second":0,"nanosecond":26000000}},"flags":"SEND_FLOW_REM"},{"id":"5","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.5/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":5}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"88","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.88/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":88}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"75","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.75/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":75}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"32","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.32/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":32}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"23","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.23/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":23}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"50","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.50/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":50}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":30000000}},"flags":""},{"id":"41","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.41/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":41}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":31000000}},"flags":""},{"id":"6","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.6/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":6}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"87","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.87/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":87}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"74","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.74/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":74}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"33","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.33/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":33}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"24","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.24/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":24}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"51","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.51/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":51}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":30000000}},"flags":""},{"id":"42","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.42/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":42}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":31000000}},"flags":""},{"id":"3","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.3/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":3}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"99","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.99/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":99}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"73","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.73/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":73}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"34","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.34/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":34}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"21","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.21/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":21}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"52","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.52/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":52}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":30000000}},"flags":""},{"id":"4","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.4/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":4}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"89","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.89/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":89}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"98","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.98/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":98}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"72","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.72/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":72}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"35","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.35/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":35}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"22","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.22/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":22}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"53","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.53/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":53}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":30000000}},"flags":""},{"id":"40","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.40/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":40}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":31000000}},"flags":""},{"id":"37","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.37/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":37}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"28","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.28/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":28}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"36","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.36/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":36}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"27","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.27/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":27}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"39","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.39/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":39}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"38","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.38/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":38}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"59","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.59/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":59}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":31000000}},"flags":""},{"id":"58","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.58/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":58}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":31000000}},"flags":""},{"id":"49","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.49/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":49}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"48","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.48/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":48}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"47","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.47/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":47}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"18","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.18/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":18}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"19","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.19/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":19}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"14","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.14/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":14}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"15","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.15/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":15}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"1","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"16","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.16/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":16}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"2","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.2/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":2}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"17","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.17/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":17}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"17","active-flows":101,"packets-matched":"6"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s3","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:55:59.426Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"d2:3e:6c:b7:77:4e","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":19,"nanosecond":15000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"ea:2e:56:2c:59:09","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"11","received":"11"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":19,"nanosecond":19000000},"bytes":{"transmitted":"911","received":"911"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"1e:18:44:08:21:c8","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"11","received":"8"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":19,"nanosecond":19000000},"bytes":{"transmitted":"911","received":"656"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:group":[{"group-id":56,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":56000}}],"watch_group":56000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":56,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":22000}}],"watch_group":22000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":22,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":99000}}],"watch_group":99000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":99,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":34000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":89000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":60000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":91000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":57000}}],"watch_group":57000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":57,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":23000}}],"watch_group":23000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":23,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":14000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":98000}}],"watch_group":98000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":98,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":56000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":56000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":85000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":54000}}],"watch_group":54000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":54,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":24000}}],"watch_group":24000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":24,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":36000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":87000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":59000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":25000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":43000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":55000}}],"watch_group":55000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":55,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":25000}}],"watch_group":25000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":25,"duration":{"second":18,"nanosecond":450000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":100000}}],"watch_group":100000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":100,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":58000,"duration":{"second":18,"nanosecond":450000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":86000,"duration":{"second":18,"nanosecond":450000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":60000}}],"watch_group":60000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":60,"duration":{"second":18,"nanosecond":450000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":26000}}],"watch_group":26000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":26,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":41000,"duration":{"second":18,"nanosecond":450000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":95000}}],"watch_group":95000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":95,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":82000,"duration":{"second":18,"nanosecond":450000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":61000}}],"watch_group":61000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":61,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":27000}}],"watch_group":27000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":27,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":94000}}],"watch_group":94000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":94,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":98000,"duration":{"second":18,"nanosecond":450000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":27000,"duration":{"second":18,"nanosecond":450000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":57000,"duration":{"second":18,"nanosecond":450000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":16000,"duration":{"second":18,"nanosecond":449000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":83000,"duration":{"second":18,"nanosecond":449000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":58000}}],"watch_group":58000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":58,"duration":{"second":17,"nanosecond":946000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":28000}}],"watch_group":28000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":28,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":97000}}],"watch_group":97000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":97,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":100000,"duration":{"second":17,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":59000}}],"watch_group":59000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":59,"duration":{"second":17,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":38000,"duration":{"second":17,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":29000}}],"watch_group":29000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":29,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":96000}}],"watch_group":96000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":96,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":84000,"duration":{"second":17,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":64000}}],"watch_group":64000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":64,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":30000}}],"watch_group":30000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":30,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":4000}}],"watch_group":4000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":4,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":91000}}],"watch_group":91000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":91,"duration":{"second":17,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":7000,"duration":{"second":17,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":29000,"duration":{"second":17,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":65000}}],"watch_group":65000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":65,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":31000}}],"watch_group":31000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":31,"duration":{"second":15,"nanosecond":442000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":5000}}],"watch_group":5000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":5,"duration":{"second":15,"nanosecond":442000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":90000}}],"watch_group":90000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":90,"duration":{"second":15,"nanosecond":442000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":18000,"duration":{"second":17,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":62000}}],"watch_group":62000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":62,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":65000,"duration":{"second":17,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":32000}}],"watch_group":32000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":32,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":2000}}],"watch_group":2000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":2,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":93000}}],"watch_group":93000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":93,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":64000,"duration":{"second":17,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":63000}}],"watch_group":63000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":63,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":33000}}],"watch_group":33000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":33,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":3000}}],"watch_group":3000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":3,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":80000,"duration":{"second":17,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":9000,"duration":{"second":17,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":92000}}],"watch_group":92000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":92,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":5000,"duration":{"second":17,"nanosecond":943000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":20000,"duration":{"second":17,"nanosecond":943000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":81000,"duration":{"second":17,"nanosecond":943000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":97000,"duration":{"second":17,"nanosecond":943000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":31000,"duration":{"second":17,"nanosecond":942000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":68000}}],"watch_group":68000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":68,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":11000,"duration":{"second":17,"nanosecond":941000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":34000}}],"watch_group":34000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":34,"duration":{"second":17,"nanosecond":941000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":78000,"duration":{"second":17,"nanosecond":940000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":87000}}],"watch_group":87000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":87,"duration":{"second":17,"nanosecond":940000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":93000,"duration":{"second":17,"nanosecond":940000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":63000,"duration":{"second":17,"nanosecond":940000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":69000}}],"watch_group":69000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":69,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":35000}}],"watch_group":35000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":35,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":1,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":1000}}],"watch_group":1000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":1,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":33000,"duration":{"second":17,"nanosecond":940000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":79000,"duration":{"second":17,"nanosecond":940000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":86000}}],"watch_group":86000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":86,"duration":{"second":17,"nanosecond":939000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":62000,"duration":{"second":17,"nanosecond":939000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":66000}}],"watch_group":66000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":66,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":77000,"duration":{"second":17,"nanosecond":939000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":36000}}],"watch_group":36000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":36,"duration":{"second":17,"nanosecond":939000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":89000}}],"watch_group":89000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":89,"duration":{"second":17,"nanosecond":939000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":22000,"duration":{"second":17,"nanosecond":938000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":95000,"duration":{"second":17,"nanosecond":938000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":67000}}],"watch_group":67000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":67,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":37000}}],"watch_group":37000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":37,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":1000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":1000,"duration":{"second":17,"nanosecond":938000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":88000}}],"watch_group":88000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":88,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":61000,"duration":{"second":17,"nanosecond":937000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":3000,"duration":{"second":17,"nanosecond":937000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":73000}}],"watch_group":73000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":73,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":39000}}],"watch_group":39000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":39,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":13000}}],"watch_group":13000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":13,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":74000,"duration":{"second":17,"nanosecond":937000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":15000,"duration":{"second":17,"nanosecond":937000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":44000,"duration":{"second":17,"nanosecond":937000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":45000,"duration":{"second":17,"nanosecond":937000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":68000,"duration":{"second":17,"nanosecond":937000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":72000}}],"watch_group":72000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":72,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":38000}}],"watch_group":38000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":38,"duration":{"second":17,"nanosecond":450000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":75000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":12000}}],"watch_group":12000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":12,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":35000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":24000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":90000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":71000}}],"watch_group":71000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":71,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":41000}}],"watch_group":41000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":41,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":42000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":11000}}],"watch_group":11000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":11,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":92000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":46000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":67000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":70000}}],"watch_group":70000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":70,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":76000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":40000}}],"watch_group":40000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":40,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":13000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":10000}}],"watch_group":10000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":10,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":88000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":47000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":66000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":77000}}],"watch_group":77000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":77,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":43000}}],"watch_group":43000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":43,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":9000}}],"watch_group":9000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":9,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":99000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":26000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":70000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":76000}}],"watch_group":76000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":76,"duration":{"second":16,"nanosecond":949000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":42000}}],"watch_group":42000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":42,"duration":{"second":16,"nanosecond":949000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":8000}}],"watch_group":8000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":8,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":37000,"duration":{"second":16,"nanosecond":948000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":49000,"duration":{"second":16,"nanosecond":948000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":71000,"duration":{"second":16,"nanosecond":948000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":48000,"duration":{"second":16,"nanosecond":947000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":75000}}],"watch_group":75000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":75,"duration":{"second":16,"nanosecond":947000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":45000}}],"watch_group":45000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":45,"duration":{"second":16,"nanosecond":947000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":7000}}],"watch_group":7000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":7,"duration":{"second":16,"nanosecond":947000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":39000,"duration":{"second":16,"nanosecond":946000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":73000,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":69000,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":17000,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":28000,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":74000}}],"watch_group":74000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":74,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":44000}}],"watch_group":44000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":44,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":6000}}],"watch_group":6000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":6,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":40000,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":81000}}],"watch_group":81000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":81,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":47000}}],"watch_group":47000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":47,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":21000}}],"watch_group":21000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":21,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":8000,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":19000,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":96000,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":80000}}],"watch_group":80000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":80,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":46000}}],"watch_group":46000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":46,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":20000}}],"watch_group":20000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":20,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":52000,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":6000,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":79000}}],"watch_group":79000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":79,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":49000}}],"watch_group":49000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":49,"duration":{"second":16,"nanosecond":447000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":19000}}],"watch_group":19000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":19,"duration":{"second":16,"nanosecond":447000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":50000,"duration":{"second":16,"nanosecond":447000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":72000,"duration":{"second":16,"nanosecond":447000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":30000,"duration":{"second":16,"nanosecond":447000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":78000}}],"watch_group":78000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":78,"duration":{"second":16,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":48000}}],"watch_group":48000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":48,"duration":{"second":16,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":18000}}],"watch_group":18000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":18,"duration":{"second":16,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":51000,"duration":{"second":16,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":85000}}],"watch_group":85000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":85,"duration":{"second":16,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":55000,"duration":{"second":16,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":51000}}],"watch_group":51000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":51,"duration":{"second":15,"nanosecond":947000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":17000}}],"watch_group":17000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":17,"duration":{"second":15,"nanosecond":947000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":21000,"duration":{"second":15,"nanosecond":947000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":4000,"duration":{"second":15,"nanosecond":947000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":84000}}],"watch_group":84000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":84,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":50000}}],"watch_group":50000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":50,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":16000}}],"watch_group":16000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":16,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":10000,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":54000,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":83000}}],"watch_group":83000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":83,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":32000,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":53000}}],"watch_group":53000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":53,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":15000}}],"watch_group":15000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":15,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":2000,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":82000}}],"watch_group":82000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":82,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":52000}}],"watch_group":52000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":52,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":14000}}],"watch_group":14000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":14,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":53000,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":12000,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":23000,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":94000,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:55:59.481Z"}},{"id":"openflow:1","flow-node-inventory:port-number":49486,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":65000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":65000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"54","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.54/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":54}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"45","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.45/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":45}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"83","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.83/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":83}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"96","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.96/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":96}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":64000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"20","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.20/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":20}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"55","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.55/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":55}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"46","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.46/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":46}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"#UF$TABLE*0-74","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"6","byte-count":"450","duration":{"second":0,"nanosecond":25000000}},"flags":"SEND_FLOW_REM"},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"86","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.86/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":86}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"95","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.95/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":95}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":65000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"30","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.30/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":30}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"56","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.56/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":56}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"43","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.43/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":43}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"8","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.8/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":8}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"85","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.85/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":85}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"94","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.94/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":94}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":65000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"31","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.31/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":31}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"57","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.57/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":57}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"44","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.44/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":44}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"5","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.5/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":5}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"88","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.88/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":88}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":64000000}},"flags":""},{"id":"75","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.75/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":75}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"32","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.32/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":32}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"23","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.23/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":23}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"50","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.50/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":50}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"41","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.41/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":41}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"6","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.6/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":6}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"87","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.87/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":87}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":64000000}},"flags":""},{"id":"74","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.74/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":74}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"33","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.33/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":33}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"24","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.24/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":24}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"51","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.51/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":51}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"42","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.42/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":42}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"3","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.3/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":3}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"99","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.99/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":99}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":64000000}},"flags":""},{"id":"73","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.73/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":73}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"34","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.34/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":34}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"21","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.21/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":21}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"52","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.52/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":52}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"4","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.4/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":4}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"89","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.89/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":89}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"98","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.98/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":98}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":64000000}},"flags":""},{"id":"72","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.72/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":72}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"35","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.35/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":35}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"22","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.22/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":22}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"53","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.53/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":53}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"40","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.40/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":40}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"37","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.37/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":37}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"28","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.28/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":28}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"36","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.36/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":36}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"27","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.27/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":27}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"39","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.39/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":39}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"38","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.38/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":38}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":65000000}},"flags":""},{"id":"59","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.59/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":59}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"58","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.58/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":58}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"49","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.49/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":49}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"48","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.48/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":48}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"47","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.47/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":47}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"18","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.18/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":18}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"19","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.19/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":19}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"14","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.14/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":14}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"15","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.15/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":15}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"1","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"16","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.16/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":16}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"2","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.2/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":2}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"17","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.17/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":17}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"17","active-flows":101,"packets-matched":"6"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s1","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:55:59.387Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"de:fd:88:3a:0f:fe","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"11","received":"8"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":18,"nanosecond":991000000},"bytes":{"transmitted":"911","received":"656"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ee:44:6a:8a:83:4e","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":18,"nanosecond":980000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"3a:a8:41:44:b3:f9","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"11","received":"11"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":18,"nanosecond":992000000},"bytes":{"transmitted":"911","received":"911"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:group":[{"group-id":56,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":56000}}],"watch_group":56000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":56,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":22000}}],"watch_group":22000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":22,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":99000}}],"watch_group":99000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":99,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":34000,"duration":{"second":18,"nanosecond":716000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":89000,"duration":{"second":18,"nanosecond":716000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":60000,"duration":{"second":18,"nanosecond":716000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":91000,"duration":{"second":18,"nanosecond":716000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":57000}}],"watch_group":57000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":57,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":23000}}],"watch_group":23000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":23,"duration":{"second":15,"nanosecond":418000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":14000,"duration":{"second":18,"nanosecond":716000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":98000}}],"watch_group":98000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":98,"duration":{"second":15,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":56000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":56000,"duration":{"second":18,"nanosecond":715000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":85000,"duration":{"second":18,"nanosecond":714000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":54000}}],"watch_group":54000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":54,"duration":{"second":15,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":24000}}],"watch_group":24000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":24,"duration":{"second":15,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":36000,"duration":{"second":18,"nanosecond":714000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":87000,"duration":{"second":18,"nanosecond":714000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":59000,"duration":{"second":18,"nanosecond":714000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":25000,"duration":{"second":18,"nanosecond":714000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":43000,"duration":{"second":18,"nanosecond":714000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":55000}}],"watch_group":55000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":55,"duration":{"second":15,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":25000}}],"watch_group":25000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":25,"duration":{"second":18,"nanosecond":419000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":100000}}],"watch_group":100000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":100,"duration":{"second":15,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":58000,"duration":{"second":18,"nanosecond":419000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":86000,"duration":{"second":18,"nanosecond":419000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":60000}}],"watch_group":60000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":60,"duration":{"second":18,"nanosecond":418000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":26000}}],"watch_group":26000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":26,"duration":{"second":15,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":41000,"duration":{"second":18,"nanosecond":418000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":95000}}],"watch_group":95000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":95,"duration":{"second":15,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":82000,"duration":{"second":18,"nanosecond":418000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":61000}}],"watch_group":61000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":61,"duration":{"second":15,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":27000}}],"watch_group":27000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":27,"duration":{"second":15,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":94000}}],"watch_group":94000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":94,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":98000,"duration":{"second":18,"nanosecond":418000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":27000,"duration":{"second":18,"nanosecond":418000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":57000,"duration":{"second":18,"nanosecond":418000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":16000,"duration":{"second":18,"nanosecond":418000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":83000,"duration":{"second":18,"nanosecond":418000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":58000}}],"watch_group":58000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":58,"duration":{"second":17,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":28000}}],"watch_group":28000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":28,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":97000}}],"watch_group":97000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":97,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":100000,"duration":{"second":17,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":59000}}],"watch_group":59000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":59,"duration":{"second":17,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":38000,"duration":{"second":17,"nanosecond":908000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":29000}}],"watch_group":29000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":29,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":96000}}],"watch_group":96000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":96,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":84000,"duration":{"second":17,"nanosecond":908000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":64000}}],"watch_group":64000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":64,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":30000}}],"watch_group":30000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":30,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":4000}}],"watch_group":4000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":4,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":91000}}],"watch_group":91000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":91,"duration":{"second":17,"nanosecond":908000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":7000,"duration":{"second":17,"nanosecond":908000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":29000,"duration":{"second":17,"nanosecond":908000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":65000}}],"watch_group":65000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":65,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":31000}}],"watch_group":31000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":31,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":5000}}],"watch_group":5000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":5,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":90000}}],"watch_group":90000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":90,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":18000,"duration":{"second":17,"nanosecond":908000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":62000}}],"watch_group":62000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":62,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":65000,"duration":{"second":17,"nanosecond":908000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":32000}}],"watch_group":32000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":32,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":2000}}],"watch_group":2000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":2,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":93000}}],"watch_group":93000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":93,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":64000,"duration":{"second":17,"nanosecond":908000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":63000}}],"watch_group":63000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":63,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":33000}}],"watch_group":33000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":33,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":3000}}],"watch_group":3000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":3,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":80000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":9000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":92000}}],"watch_group":92000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":92,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":5000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":20000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":81000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":97000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":31000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":68000}}],"watch_group":68000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":68,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":11000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":34000}}],"watch_group":34000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":34,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":78000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":87000}}],"watch_group":87000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":87,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":93000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":63000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":69000}}],"watch_group":69000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":69,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":35000}}],"watch_group":35000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":35,"duration":{"second":15,"nanosecond":413000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":1,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":1000}}],"watch_group":1000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":1,"duration":{"second":15,"nanosecond":413000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":33000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":79000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":86000}}],"watch_group":86000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":86,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":62000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":66000}}],"watch_group":66000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":66,"duration":{"second":15,"nanosecond":413000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":77000,"duration":{"second":17,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":36000}}],"watch_group":36000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":36,"duration":{"second":17,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":89000}}],"watch_group":89000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":89,"duration":{"second":17,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":22000,"duration":{"second":17,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":95000,"duration":{"second":17,"nanosecond":905000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":67000}}],"watch_group":67000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":67,"duration":{"second":15,"nanosecond":413000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":37000}}],"watch_group":37000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":37,"duration":{"second":15,"nanosecond":413000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":1000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":1000,"duration":{"second":17,"nanosecond":905000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":88000}}],"watch_group":88000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":88,"duration":{"second":15,"nanosecond":413000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":61000,"duration":{"second":17,"nanosecond":905000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":3000,"duration":{"second":17,"nanosecond":905000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":73000}}],"watch_group":73000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":73,"duration":{"second":15,"nanosecond":413000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":39000}}],"watch_group":39000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":39,"duration":{"second":15,"nanosecond":413000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":13000}}],"watch_group":13000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":13,"duration":{"second":15,"nanosecond":413000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":74000,"duration":{"second":17,"nanosecond":904000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":15000,"duration":{"second":17,"nanosecond":904000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":44000,"duration":{"second":17,"nanosecond":904000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":45000,"duration":{"second":17,"nanosecond":904000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":68000,"duration":{"second":17,"nanosecond":904000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":72000}}],"watch_group":72000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":72,"duration":{"second":15,"nanosecond":408000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":38000}}],"watch_group":38000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":38,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":75000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":12000}}],"watch_group":12000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":12,"duration":{"second":15,"nanosecond":407000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":35000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":24000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":90000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":71000}}],"watch_group":71000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":71,"duration":{"second":15,"nanosecond":407000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":41000}}],"watch_group":41000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":41,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":42000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":11000}}],"watch_group":11000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":11,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":92000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":46000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":67000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":70000}}],"watch_group":70000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":70,"duration":{"second":15,"nanosecond":407000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":76000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":40000}}],"watch_group":40000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":40,"duration":{"second":15,"nanosecond":407000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":13000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":10000}}],"watch_group":10000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":10,"duration":{"second":15,"nanosecond":407000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":88000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":47000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":66000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":77000}}],"watch_group":77000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":77,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":43000}}],"watch_group":43000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":43,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":9000}}],"watch_group":9000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":9,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":99000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":26000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":70000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":76000}}],"watch_group":76000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":76,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":42000}}],"watch_group":42000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":42,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":8000}}],"watch_group":8000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":8,"duration":{"second":15,"nanosecond":407000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":37000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":49000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":71000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":48000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":75000}}],"watch_group":75000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":75,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":45000}}],"watch_group":45000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":45,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":7000}}],"watch_group":7000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":7,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":39000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":73000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":69000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":17000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":28000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":74000}}],"watch_group":74000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":74,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":44000}}],"watch_group":44000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":44,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":6000}}],"watch_group":6000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":6,"duration":{"second":15,"nanosecond":407000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":40000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":81000}}],"watch_group":81000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":81,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":47000}}],"watch_group":47000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":47,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":21000}}],"watch_group":21000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":21,"duration":{"second":15,"nanosecond":407000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":8000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":19000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":96000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":80000}}],"watch_group":80000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":80,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":46000}}],"watch_group":46000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":46,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":20000}}],"watch_group":20000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":20,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":52000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":6000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":79000}}],"watch_group":79000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":79,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":49000}}],"watch_group":49000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":49,"duration":{"second":16,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":19000}}],"watch_group":19000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":19,"duration":{"second":16,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":50000,"duration":{"second":16,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":72000,"duration":{"second":16,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":30000,"duration":{"second":16,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":78000}}],"watch_group":78000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":78,"duration":{"second":16,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":48000}}],"watch_group":48000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":48,"duration":{"second":16,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":18000}}],"watch_group":18000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":18,"duration":{"second":16,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":51000,"duration":{"second":16,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":85000}}],"watch_group":85000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":85,"duration":{"second":16,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":55000,"duration":{"second":16,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":51000}}],"watch_group":51000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":51,"duration":{"second":15,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":17000}}],"watch_group":17000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":17,"duration":{"second":15,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":21000,"duration":{"second":15,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":4000,"duration":{"second":15,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":84000}}],"watch_group":84000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":84,"duration":{"second":15,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":50000}}],"watch_group":50000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":50,"duration":{"second":15,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":16000}}],"watch_group":16000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":16,"duration":{"second":15,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":10000,"duration":{"second":15,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":54000,"duration":{"second":15,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":83000}}],"watch_group":83000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":83,"duration":{"second":15,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":32000,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":53000}}],"watch_group":53000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":53,"duration":{"second":15,"nanosecond":407000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":15000}}],"watch_group":15000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":15,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":2000,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":82000}}],"watch_group":82000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":82,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":52000}}],"watch_group":52000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":52,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":14000}}],"watch_group":14000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":14,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":53000,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":12000,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":23000,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":94000,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:55:59.440Z"}},{"id":"openflow:2","flow-node-inventory:port-number":49496,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":47000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":47000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":47000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":47000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":80000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":80000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":80000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":47000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":49000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"54","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.54/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":54}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"45","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.45/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":45}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"83","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.83/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":83}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":49000000}},"flags":""},{"id":"96","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.96/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":96}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"20","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.20/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":20}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"55","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.55/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":55}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"46","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.46/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":46}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"86","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.86/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":86}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":49000000}},"flags":""},{"id":"95","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.95/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":95}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"30","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.30/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":30}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"56","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.56/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":56}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"43","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.43/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":43}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"8","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.8/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":8}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"85","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.85/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":85}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":49000000}},"flags":""},{"id":"94","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.94/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":94}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"31","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.31/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":31}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"57","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.57/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":57}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"44","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.44/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":44}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"5","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.5/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":5}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"88","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.88/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":88}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":80000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"75","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.75/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":75}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"32","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.32/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":32}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"23","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.23/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":23}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"50","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.50/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":50}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"41","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.41/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":41}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"#UF$TABLE*0-75","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"12","byte-count":"930","duration":{"second":0,"nanosecond":48000000}},"flags":"SEND_FLOW_REM"},{"id":"6","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.6/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":6}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"87","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.87/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":87}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":80000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"74","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.74/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":74}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"33","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.33/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":33}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"24","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.24/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":24}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"51","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.51/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":51}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"42","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.42/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":42}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"3","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.3/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":3}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"99","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.99/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":99}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":47000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"73","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.73/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":73}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":80000000}},"flags":""},{"id":"34","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.34/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":34}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"21","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.21/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":21}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"52","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.52/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":52}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"4","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.4/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":4}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"89","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.89/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":89}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":80000000}},"flags":""},{"id":"98","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.98/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":98}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"72","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.72/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":72}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":80000000}},"flags":""},{"id":"35","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.35/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":35}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"22","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.22/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":22}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"53","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.53/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":53}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"40","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.40/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":40}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"37","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.37/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":37}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"28","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.28/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":28}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"36","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.36/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":36}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"27","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.27/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":27}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"39","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.39/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":39}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"38","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.38/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":38}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"59","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.59/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":59}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"58","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.58/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":58}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"49","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.49/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":49}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"48","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.48/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":48}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"47","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.47/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":47}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"18","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.18/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":18}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"19","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.19/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":19}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"14","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.14/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":14}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"15","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.15/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":15}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"1","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"16","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.16/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":16}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"2","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.2/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":2}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"17","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.17/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":17}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"26","active-flows":101,"packets-matched":"12"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s2","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:55:59.403Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"96:6d:7e:e3:20:cb","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"11","received":"11"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":19,"nanosecond":14000000},"bytes":{"transmitted":"911","received":"911"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"aa:85:98:60:af:45","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":19,"nanosecond":9000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"b2:63:e2:1f:6f:f5","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"11","received":"11"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":19,"nanosecond":14000000},"bytes":{"transmitted":"911","received":"911"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"6e:ec:a4:2a:50:8d","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"11","received":"8"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":19,"nanosecond":13000000},"bytes":{"transmitted":"911","received":"656"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:group":[{"group-id":56,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":56000}}],"watch_group":56000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":56,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":22000}}],"watch_group":22000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":22,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":99000}}],"watch_group":99000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":99,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":34000,"duration":{"second":18,"nanosecond":730000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":89000,"duration":{"second":18,"nanosecond":730000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":60000,"duration":{"second":18,"nanosecond":730000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":91000,"duration":{"second":18,"nanosecond":730000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":57000}}],"watch_group":57000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":57,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":23000}}],"watch_group":23000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":23,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":14000,"duration":{"second":18,"nanosecond":730000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":98000}}],"watch_group":98000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":98,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":56000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":56000,"duration":{"second":18,"nanosecond":730000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":85000,"duration":{"second":18,"nanosecond":730000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":54000}}],"watch_group":54000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":54,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":24000}}],"watch_group":24000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":24,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":36000,"duration":{"second":18,"nanosecond":730000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":87000,"duration":{"second":18,"nanosecond":730000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":59000,"duration":{"second":18,"nanosecond":729000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":25000,"duration":{"second":18,"nanosecond":729000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":43000,"duration":{"second":18,"nanosecond":729000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":55000}}],"watch_group":55000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":55,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":25000}}],"watch_group":25000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":25,"duration":{"second":18,"nanosecond":434000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":100000}}],"watch_group":100000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":100,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":58000,"duration":{"second":18,"nanosecond":434000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":86000,"duration":{"second":18,"nanosecond":434000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":60000}}],"watch_group":60000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":60,"duration":{"second":18,"nanosecond":434000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":26000}}],"watch_group":26000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":26,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":41000,"duration":{"second":18,"nanosecond":432000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":95000}}],"watch_group":95000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":95,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":82000,"duration":{"second":18,"nanosecond":432000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":61000}}],"watch_group":61000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":61,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":27000}}],"watch_group":27000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":27,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":94000}}],"watch_group":94000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":94,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":98000,"duration":{"second":18,"nanosecond":432000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":27000,"duration":{"second":18,"nanosecond":432000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":57000,"duration":{"second":18,"nanosecond":432000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":16000,"duration":{"second":18,"nanosecond":430000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":83000,"duration":{"second":18,"nanosecond":430000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":58000}}],"watch_group":58000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":58,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":28000}}],"watch_group":28000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":28,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":97000}}],"watch_group":97000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":97,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":100000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":59000}}],"watch_group":59000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":59,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":38000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":29000}}],"watch_group":29000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":29,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":96000}}],"watch_group":96000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":96,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":84000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":64000}}],"watch_group":64000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":64,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":30000}}],"watch_group":30000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":30,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":4000}}],"watch_group":4000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":4,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":91000}}],"watch_group":91000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":91,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":7000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":29000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":65000}}],"watch_group":65000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":65,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":31000}}],"watch_group":31000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":31,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":5000}}],"watch_group":5000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":5,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":90000}}],"watch_group":90000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":90,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":18000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":62000}}],"watch_group":62000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":62,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":65000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":32000}}],"watch_group":32000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":32,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":2000}}],"watch_group":2000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":2,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":93000}}],"watch_group":93000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":93,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":64000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":63000}}],"watch_group":63000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":63,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":33000}}],"watch_group":33000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":33,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":3000}}],"watch_group":3000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":3,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":80000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":9000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":92000}}],"watch_group":92000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":92,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":5000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":20000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":81000,"duration":{"second":17,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":97000,"duration":{"second":17,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":31000,"duration":{"second":17,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":68000}}],"watch_group":68000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":68,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":11000,"duration":{"second":17,"nanosecond":927000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":34000}}],"watch_group":34000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":34,"duration":{"second":17,"nanosecond":927000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":78000,"duration":{"second":17,"nanosecond":927000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":87000}}],"watch_group":87000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":87,"duration":{"second":17,"nanosecond":927000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":93000,"duration":{"second":17,"nanosecond":927000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":63000,"duration":{"second":17,"nanosecond":927000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":69000}}],"watch_group":69000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":69,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":35000}}],"watch_group":35000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":35,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":1,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":1000}}],"watch_group":1000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":1,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":33000,"duration":{"second":17,"nanosecond":927000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":79000,"duration":{"second":17,"nanosecond":927000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":86000}}],"watch_group":86000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":86,"duration":{"second":17,"nanosecond":927000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":62000,"duration":{"second":17,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":66000}}],"watch_group":66000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":66,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":77000,"duration":{"second":17,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":36000}}],"watch_group":36000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":36,"duration":{"second":17,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":89000}}],"watch_group":89000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":89,"duration":{"second":17,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":22000,"duration":{"second":17,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":95000,"duration":{"second":17,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":67000}}],"watch_group":67000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":67,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":37000}}],"watch_group":37000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":37,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":1000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":1000,"duration":{"second":17,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":88000}}],"watch_group":88000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":88,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":61000,"duration":{"second":17,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":3000,"duration":{"second":17,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":73000}}],"watch_group":73000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":73,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":39000}}],"watch_group":39000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":39,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":13000}}],"watch_group":13000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":13,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":74000,"duration":{"second":17,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":15000,"duration":{"second":17,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":44000,"duration":{"second":17,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":45000,"duration":{"second":17,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":68000,"duration":{"second":17,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":72000}}],"watch_group":72000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":72,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":38000}}],"watch_group":38000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":38,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":75000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":12000}}],"watch_group":12000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":12,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":35000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":24000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":90000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":71000}}],"watch_group":71000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":71,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":41000}}],"watch_group":41000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":41,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":42000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":11000}}],"watch_group":11000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":11,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":92000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":46000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":67000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":70000}}],"watch_group":70000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":70,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":76000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":40000}}],"watch_group":40000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":40,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":13000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":10000}}],"watch_group":10000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":10,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":88000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":47000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":66000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":77000}}],"watch_group":77000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":77,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":43000}}],"watch_group":43000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":43,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":9000}}],"watch_group":9000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":9,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":99000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":26000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":70000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":76000}}],"watch_group":76000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":76,"duration":{"second":16,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":42000}}],"watch_group":42000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":42,"duration":{"second":16,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":8000}}],"watch_group":8000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":8,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":37000,"duration":{"second":16,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":49000,"duration":{"second":16,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":71000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":48000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":75000}}],"watch_group":75000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":75,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":45000}}],"watch_group":45000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":45,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":7000}}],"watch_group":7000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":7,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":39000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":73000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":69000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":17000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":28000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":74000}}],"watch_group":74000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":74,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":44000}}],"watch_group":44000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":44,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":6000}}],"watch_group":6000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":6,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":40000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":81000}}],"watch_group":81000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":81,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":47000}}],"watch_group":47000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":47,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":21000}}],"watch_group":21000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":21,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":8000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":19000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":96000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":80000}}],"watch_group":80000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":80,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":46000}}],"watch_group":46000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":46,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":20000}}],"watch_group":20000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":20,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":52000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":6000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":79000}}],"watch_group":79000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":79,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":49000}}],"watch_group":49000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":49,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":19000}}],"watch_group":19000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":19,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":50000,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":72000,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":30000,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":78000}}],"watch_group":78000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":78,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":48000}}],"watch_group":48000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":48,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":18000}}],"watch_group":18000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":18,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":51000,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":85000}}],"watch_group":85000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":85,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":55000,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":51000}}],"watch_group":51000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":51,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":17000}}],"watch_group":17000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":17,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":21000,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":4000,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":84000}}],"watch_group":84000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":84,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":50000}}],"watch_group":50000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":50,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":16000}}],"watch_group":16000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":16,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":10000,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":54000,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":83000}}],"watch_group":83000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":83,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":32000,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":53000}}],"watch_group":53000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":53,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":15000}}],"watch_group":15000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":15,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":2000,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":82000}}],"watch_group":82000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":82,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":52000}}],"watch_group":52000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":52,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":14000}}],"watch_group":14000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":14,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":53000,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":12000,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":23000,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":94000,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:55:59.480Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:55:59.933961" elapsed="0.009719"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-05-25T01:55:59.947177" level="INFO">Item found from container 303 times.</msg>
<msg time="2026-05-25T01:55:59.947262" level="INFO">${count} = 303</msg>
<var>${count}</var>
<arg>${resp.text}</arg>
<arg>"priority"</arg>
<doc>Returns and logs how many times ``item`` is found from ``container``.</doc>
<status status="PASS" start="2026-05-25T01:55:59.943878" elapsed="0.003408"/>
</kw>
<kw name="Should Be Equal As Integers" owner="BuiltIn">
<msg time="2026-05-25T01:55:59.947862" level="FAIL">303 != 300</msg>
<arg>${count}</arg>
<arg>${flows}</arg>
<doc>Fails if objects are unequal after converting them to integers.</doc>
<status status="FAIL" start="2026-05-25T01:55:59.947489" elapsed="0.000447">303 != 300</status>
</kw>
<arg>${less_flows}</arg>
<doc>Check number of flows in the inventory.</doc>
<status status="FAIL" start="2026-05-25T01:55:59.885385" elapsed="0.062672">303 != 300</status>
</kw>
<kw name="Check Number Of Flows" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:00.995529" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:00.997667" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":49488,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:56:00.998277" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_NODES_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:00.949913" elapsed="0.048431"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:01.005560" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":49488,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"54","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.54/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":54}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":30000000}},"flags":""},{"id":"45","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.45/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":45}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"83","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.83/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":83}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"96","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.96/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":96}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"20","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.20/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":20}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"55","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.55/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":55}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":30000000}},"flags":""},{"id":"46","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.46/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":46}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"86","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.86/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":86}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"95","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.95/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":95}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"30","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.30/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":30}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"56","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.56/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":56}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":30000000}},"flags":""},{"id":"43","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.43/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":43}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":31000000}},"flags":""},{"id":"8","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.8/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":8}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"85","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.85/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":85}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"94","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.94/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":94}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"31","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.31/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":31}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"57","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.57/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":57}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":30000000}},"flags":""},{"id":"44","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.44/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":44}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":31000000}},"flags":""},{"id":"#UF$TABLE*0-76","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"6","byte-count":"450","duration":{"second":0,"nanosecond":26000000}},"flags":"SEND_FLOW_REM"},{"id":"5","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.5/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":5}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"88","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.88/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":88}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"75","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.75/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":75}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"32","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.32/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":32}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"23","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.23/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":23}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"50","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.50/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":50}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":30000000}},"flags":""},{"id":"41","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.41/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":41}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":31000000}},"flags":""},{"id":"6","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.6/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":6}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"87","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.87/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":87}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"74","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.74/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":74}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"33","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.33/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":33}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"24","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.24/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":24}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"51","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.51/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":51}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":30000000}},"flags":""},{"id":"42","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.42/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":42}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":31000000}},"flags":""},{"id":"3","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.3/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":3}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"99","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.99/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":99}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"73","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.73/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":73}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"34","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.34/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":34}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"21","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.21/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":21}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"52","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.52/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":52}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":30000000}},"flags":""},{"id":"4","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.4/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":4}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"89","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.89/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":89}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"98","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.98/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":98}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"72","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.72/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":72}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"35","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.35/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":35}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"22","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.22/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":22}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"53","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.53/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":53}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":30000000}},"flags":""},{"id":"40","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.40/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":40}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":31000000}},"flags":""},{"id":"37","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.37/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":37}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"28","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.28/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":28}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"36","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.36/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":36}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"27","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.27/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":27}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"39","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.39/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":39}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"38","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.38/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":38}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"59","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.59/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":59}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":31000000}},"flags":""},{"id":"58","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.58/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":58}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":31000000}},"flags":""},{"id":"49","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.49/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":49}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"48","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.48/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":48}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"47","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.47/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":47}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"18","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.18/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":18}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"19","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.19/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":19}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"14","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.14/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":14}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"15","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.15/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":15}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"1","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"16","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.16/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":16}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"2","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.2/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":2}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"17","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.17/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":17}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"17","active-flows":101,"packets-matched":"6"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s3","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:55:59.426Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"d2:3e:6c:b7:77:4e","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":19,"nanosecond":15000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"ea:2e:56:2c:59:09","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"11","received":"11"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":19,"nanosecond":19000000},"bytes":{"transmitted":"911","received":"911"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"1e:18:44:08:21:c8","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"11","received":"8"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":19,"nanosecond":19000000},"bytes":{"transmitted":"911","received":"656"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:group":[{"group-id":56,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":56000}}],"watch_group":56000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":56,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":22000}}],"watch_group":22000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":22,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":99000}}],"watch_group":99000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":99,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":34000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":89000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":60000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":91000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":57000}}],"watch_group":57000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":57,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":23000}}],"watch_group":23000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":23,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":14000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":98000}}],"watch_group":98000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":98,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":56000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":56000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":85000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":54000}}],"watch_group":54000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":54,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":24000}}],"watch_group":24000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":24,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":36000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":87000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":59000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":25000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":43000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":55000}}],"watch_group":55000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":55,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":25000}}],"watch_group":25000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":25,"duration":{"second":18,"nanosecond":450000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":100000}}],"watch_group":100000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":100,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":58000,"duration":{"second":18,"nanosecond":450000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":86000,"duration":{"second":18,"nanosecond":450000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":60000}}],"watch_group":60000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":60,"duration":{"second":18,"nanosecond":450000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":26000}}],"watch_group":26000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":26,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":41000,"duration":{"second":18,"nanosecond":450000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":95000}}],"watch_group":95000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":95,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":82000,"duration":{"second":18,"nanosecond":450000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":61000}}],"watch_group":61000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":61,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":27000}}],"watch_group":27000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":27,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":94000}}],"watch_group":94000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":94,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":98000,"duration":{"second":18,"nanosecond":450000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":27000,"duration":{"second":18,"nanosecond":450000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":57000,"duration":{"second":18,"nanosecond":450000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":16000,"duration":{"second":18,"nanosecond":449000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":83000,"duration":{"second":18,"nanosecond":449000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":58000}}],"watch_group":58000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":58,"duration":{"second":17,"nanosecond":946000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":28000}}],"watch_group":28000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":28,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":97000}}],"watch_group":97000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":97,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":100000,"duration":{"second":17,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":59000}}],"watch_group":59000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":59,"duration":{"second":17,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":38000,"duration":{"second":17,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":29000}}],"watch_group":29000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":29,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":96000}}],"watch_group":96000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":96,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":84000,"duration":{"second":17,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":64000}}],"watch_group":64000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":64,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":30000}}],"watch_group":30000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":30,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":4000}}],"watch_group":4000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":4,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":91000}}],"watch_group":91000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":91,"duration":{"second":17,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":7000,"duration":{"second":17,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":29000,"duration":{"second":17,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":65000}}],"watch_group":65000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":65,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":31000}}],"watch_group":31000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":31,"duration":{"second":15,"nanosecond":442000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":5000}}],"watch_group":5000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":5,"duration":{"second":15,"nanosecond":442000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":90000}}],"watch_group":90000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":90,"duration":{"second":15,"nanosecond":442000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":18000,"duration":{"second":17,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":62000}}],"watch_group":62000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":62,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":65000,"duration":{"second":17,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":32000}}],"watch_group":32000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":32,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":2000}}],"watch_group":2000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":2,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":93000}}],"watch_group":93000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":93,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":64000,"duration":{"second":17,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":63000}}],"watch_group":63000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":63,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":33000}}],"watch_group":33000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":33,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":3000}}],"watch_group":3000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":3,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":80000,"duration":{"second":17,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":9000,"duration":{"second":17,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":92000}}],"watch_group":92000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":92,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":5000,"duration":{"second":17,"nanosecond":943000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":20000,"duration":{"second":17,"nanosecond":943000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":81000,"duration":{"second":17,"nanosecond":943000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":97000,"duration":{"second":17,"nanosecond":943000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":31000,"duration":{"second":17,"nanosecond":942000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":68000}}],"watch_group":68000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":68,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":11000,"duration":{"second":17,"nanosecond":941000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":34000}}],"watch_group":34000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":34,"duration":{"second":17,"nanosecond":941000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":78000,"duration":{"second":17,"nanosecond":940000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":87000}}],"watch_group":87000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":87,"duration":{"second":17,"nanosecond":940000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":93000,"duration":{"second":17,"nanosecond":940000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":63000,"duration":{"second":17,"nanosecond":940000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":69000}}],"watch_group":69000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":69,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":35000}}],"watch_group":35000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":35,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":1,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":1000}}],"watch_group":1000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":1,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":33000,"duration":{"second":17,"nanosecond":940000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":79000,"duration":{"second":17,"nanosecond":940000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":86000}}],"watch_group":86000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":86,"duration":{"second":17,"nanosecond":939000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":62000,"duration":{"second":17,"nanosecond":939000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":66000}}],"watch_group":66000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":66,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":77000,"duration":{"second":17,"nanosecond":939000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":36000}}],"watch_group":36000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":36,"duration":{"second":17,"nanosecond":939000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":89000}}],"watch_group":89000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":89,"duration":{"second":17,"nanosecond":939000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":22000,"duration":{"second":17,"nanosecond":938000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":95000,"duration":{"second":17,"nanosecond":938000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":67000}}],"watch_group":67000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":67,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":37000}}],"watch_group":37000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":37,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":1000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":1000,"duration":{"second":17,"nanosecond":938000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":88000}}],"watch_group":88000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":88,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":61000,"duration":{"second":17,"nanosecond":937000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":3000,"duration":{"second":17,"nanosecond":937000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":73000}}],"watch_group":73000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":73,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":39000}}],"watch_group":39000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":39,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":13000}}],"watch_group":13000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":13,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":74000,"duration":{"second":17,"nanosecond":937000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":15000,"duration":{"second":17,"nanosecond":937000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":44000,"duration":{"second":17,"nanosecond":937000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":45000,"duration":{"second":17,"nanosecond":937000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":68000,"duration":{"second":17,"nanosecond":937000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":72000}}],"watch_group":72000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":72,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":38000}}],"watch_group":38000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":38,"duration":{"second":17,"nanosecond":450000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":75000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":12000}}],"watch_group":12000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":12,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":35000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":24000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":90000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":71000}}],"watch_group":71000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":71,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":41000}}],"watch_group":41000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":41,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":42000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":11000}}],"watch_group":11000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":11,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":92000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":46000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":67000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":70000}}],"watch_group":70000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":70,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":76000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":40000}}],"watch_group":40000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":40,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":13000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":10000}}],"watch_group":10000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":10,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":88000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":47000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":66000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":77000}}],"watch_group":77000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":77,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":43000}}],"watch_group":43000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":43,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":9000}}],"watch_group":9000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":9,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":99000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":26000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":70000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":76000}}],"watch_group":76000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":76,"duration":{"second":16,"nanosecond":949000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":42000}}],"watch_group":42000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":42,"duration":{"second":16,"nanosecond":949000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":8000}}],"watch_group":8000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":8,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":37000,"duration":{"second":16,"nanosecond":948000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":49000,"duration":{"second":16,"nanosecond":948000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":71000,"duration":{"second":16,"nanosecond":948000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":48000,"duration":{"second":16,"nanosecond":947000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":75000}}],"watch_group":75000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":75,"duration":{"second":16,"nanosecond":947000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":45000}}],"watch_group":45000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":45,"duration":{"second":16,"nanosecond":947000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":7000}}],"watch_group":7000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":7,"duration":{"second":16,"nanosecond":947000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":39000,"duration":{"second":16,"nanosecond":946000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":73000,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":69000,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":17000,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":28000,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":74000}}],"watch_group":74000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":74,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":44000}}],"watch_group":44000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":44,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":6000}}],"watch_group":6000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":6,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":40000,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":81000}}],"watch_group":81000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":81,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":47000}}],"watch_group":47000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":47,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":21000}}],"watch_group":21000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":21,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":8000,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":19000,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":96000,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":80000}}],"watch_group":80000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":80,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":46000}}],"watch_group":46000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":46,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":20000}}],"watch_group":20000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":20,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":52000,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":6000,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":79000}}],"watch_group":79000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":79,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":49000}}],"watch_group":49000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":49,"duration":{"second":16,"nanosecond":447000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":19000}}],"watch_group":19000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":19,"duration":{"second":16,"nanosecond":447000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":50000,"duration":{"second":16,"nanosecond":447000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":72000,"duration":{"second":16,"nanosecond":447000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":30000,"duration":{"second":16,"nanosecond":447000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":78000}}],"watch_group":78000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":78,"duration":{"second":16,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":48000}}],"watch_group":48000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":48,"duration":{"second":16,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":18000}}],"watch_group":18000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":18,"duration":{"second":16,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":51000,"duration":{"second":16,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":85000}}],"watch_group":85000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":85,"duration":{"second":16,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":55000,"duration":{"second":16,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":51000}}],"watch_group":51000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":51,"duration":{"second":15,"nanosecond":947000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":17000}}],"watch_group":17000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":17,"duration":{"second":15,"nanosecond":947000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":21000,"duration":{"second":15,"nanosecond":947000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":4000,"duration":{"second":15,"nanosecond":947000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":84000}}],"watch_group":84000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":84,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":50000}}],"watch_group":50000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":50,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":16000}}],"watch_group":16000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":16,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":10000,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":54000,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":83000}}],"watch_group":83000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":83,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":32000,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":53000}}],"watch_group":53000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":53,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":15000}}],"watch_group":15000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":15,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":2000,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":82000}}],"watch_group":82000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":82,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":52000}}],"watch_group":52000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":52,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":14000}}],"watch_group":14000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":14,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":53000,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":12000,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":23000,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":94000,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:55:59.481Z"}},{"id":"openflow:1","flow-node-inventory:port-number":49486,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":65000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":65000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"54","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.54/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":54}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"45","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.45/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":45}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"83","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.83/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":83}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"96","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.96/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":96}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":64000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"20","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.20/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":20}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"55","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.55/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":55}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"46","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.46/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":46}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"#UF$TABLE*0-74","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"6","byte-count":"450","duration":{"second":0,"nanosecond":25000000}},"flags":"SEND_FLOW_REM"},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"86","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.86/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":86}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"95","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.95/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":95}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":65000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"30","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.30/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":30}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"56","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.56/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":56}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"43","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.43/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":43}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"8","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.8/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":8}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"85","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.85/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":85}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"94","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.94/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":94}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":65000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"31","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.31/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":31}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"57","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.57/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":57}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"44","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.44/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":44}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"5","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.5/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":5}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"88","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.88/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":88}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":64000000}},"flags":""},{"id":"75","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.75/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":75}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"32","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.32/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":32}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"23","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.23/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":23}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"50","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.50/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":50}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"41","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.41/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":41}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"6","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.6/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":6}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"87","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.87/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":87}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":64000000}},"flags":""},{"id":"74","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.74/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":74}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"33","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.33/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":33}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"24","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.24/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":24}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"51","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.51/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":51}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"42","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.42/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":42}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"3","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.3/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":3}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"99","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.99/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":99}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":64000000}},"flags":""},{"id":"73","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.73/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":73}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"34","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.34/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":34}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"21","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.21/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":21}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"52","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.52/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":52}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"4","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.4/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":4}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"89","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.89/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":89}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"98","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.98/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":98}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":64000000}},"flags":""},{"id":"72","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.72/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":72}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"35","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.35/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":35}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"22","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.22/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":22}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"53","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.53/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":53}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"40","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.40/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":40}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"37","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.37/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":37}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"28","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.28/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":28}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"36","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.36/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":36}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"27","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.27/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":27}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"39","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.39/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":39}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"38","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.38/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":38}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":65000000}},"flags":""},{"id":"59","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.59/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":59}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"58","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.58/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":58}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"49","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.49/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":49}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"48","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.48/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":48}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"47","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.47/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":47}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"18","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.18/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":18}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"19","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.19/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":19}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"14","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.14/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":14}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"15","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.15/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":15}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"1","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"16","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.16/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":16}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"2","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.2/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":2}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"17","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.17/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":17}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"17","active-flows":101,"packets-matched":"6"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s1","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:55:59.387Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"de:fd:88:3a:0f:fe","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"11","received":"8"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":18,"nanosecond":991000000},"bytes":{"transmitted":"911","received":"656"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ee:44:6a:8a:83:4e","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":18,"nanosecond":980000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"3a:a8:41:44:b3:f9","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"11","received":"11"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":18,"nanosecond":992000000},"bytes":{"transmitted":"911","received":"911"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:group":[{"group-id":56,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":56000}}],"watch_group":56000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":56,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":22000}}],"watch_group":22000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":22,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":99000}}],"watch_group":99000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":99,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":34000,"duration":{"second":18,"nanosecond":716000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":89000,"duration":{"second":18,"nanosecond":716000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":60000,"duration":{"second":18,"nanosecond":716000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":91000,"duration":{"second":18,"nanosecond":716000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":57000}}],"watch_group":57000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":57,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":23000}}],"watch_group":23000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":23,"duration":{"second":15,"nanosecond":418000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":14000,"duration":{"second":18,"nanosecond":716000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":98000}}],"watch_group":98000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":98,"duration":{"second":15,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":56000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":56000,"duration":{"second":18,"nanosecond":715000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":85000,"duration":{"second":18,"nanosecond":714000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":54000}}],"watch_group":54000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":54,"duration":{"second":15,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":24000}}],"watch_group":24000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":24,"duration":{"second":15,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":36000,"duration":{"second":18,"nanosecond":714000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":87000,"duration":{"second":18,"nanosecond":714000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":59000,"duration":{"second":18,"nanosecond":714000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":25000,"duration":{"second":18,"nanosecond":714000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":43000,"duration":{"second":18,"nanosecond":714000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":55000}}],"watch_group":55000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":55,"duration":{"second":15,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":25000}}],"watch_group":25000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":25,"duration":{"second":18,"nanosecond":419000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":100000}}],"watch_group":100000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":100,"duration":{"second":15,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":58000,"duration":{"second":18,"nanosecond":419000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":86000,"duration":{"second":18,"nanosecond":419000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":60000}}],"watch_group":60000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":60,"duration":{"second":18,"nanosecond":418000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":26000}}],"watch_group":26000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":26,"duration":{"second":15,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":41000,"duration":{"second":18,"nanosecond":418000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":95000}}],"watch_group":95000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":95,"duration":{"second":15,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":82000,"duration":{"second":18,"nanosecond":418000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":61000}}],"watch_group":61000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":61,"duration":{"second":15,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":27000}}],"watch_group":27000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":27,"duration":{"second":15,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":94000}}],"watch_group":94000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":94,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":98000,"duration":{"second":18,"nanosecond":418000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":27000,"duration":{"second":18,"nanosecond":418000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":57000,"duration":{"second":18,"nanosecond":418000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":16000,"duration":{"second":18,"nanosecond":418000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":83000,"duration":{"second":18,"nanosecond":418000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":58000}}],"watch_group":58000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":58,"duration":{"second":17,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":28000}}],"watch_group":28000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":28,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":97000}}],"watch_group":97000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":97,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":100000,"duration":{"second":17,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":59000}}],"watch_group":59000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":59,"duration":{"second":17,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":38000,"duration":{"second":17,"nanosecond":908000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":29000}}],"watch_group":29000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":29,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":96000}}],"watch_group":96000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":96,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":84000,"duration":{"second":17,"nanosecond":908000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":64000}}],"watch_group":64000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":64,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":30000}}],"watch_group":30000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":30,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":4000}}],"watch_group":4000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":4,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":91000}}],"watch_group":91000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":91,"duration":{"second":17,"nanosecond":908000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":7000,"duration":{"second":17,"nanosecond":908000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":29000,"duration":{"second":17,"nanosecond":908000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":65000}}],"watch_group":65000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":65,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":31000}}],"watch_group":31000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":31,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":5000}}],"watch_group":5000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":5,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":90000}}],"watch_group":90000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":90,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":18000,"duration":{"second":17,"nanosecond":908000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":62000}}],"watch_group":62000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":62,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":65000,"duration":{"second":17,"nanosecond":908000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":32000}}],"watch_group":32000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":32,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":2000}}],"watch_group":2000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":2,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":93000}}],"watch_group":93000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":93,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":64000,"duration":{"second":17,"nanosecond":908000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":63000}}],"watch_group":63000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":63,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":33000}}],"watch_group":33000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":33,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":3000}}],"watch_group":3000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":3,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":80000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":9000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":92000}}],"watch_group":92000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":92,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":5000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":20000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":81000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":97000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":31000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":68000}}],"watch_group":68000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":68,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":11000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":34000}}],"watch_group":34000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":34,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":78000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":87000}}],"watch_group":87000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":87,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":93000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":63000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":69000}}],"watch_group":69000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":69,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":35000}}],"watch_group":35000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":35,"duration":{"second":15,"nanosecond":413000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":1,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":1000}}],"watch_group":1000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":1,"duration":{"second":15,"nanosecond":413000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":33000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":79000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":86000}}],"watch_group":86000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":86,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":62000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":66000}}],"watch_group":66000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":66,"duration":{"second":15,"nanosecond":413000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":77000,"duration":{"second":17,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":36000}}],"watch_group":36000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":36,"duration":{"second":17,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":89000}}],"watch_group":89000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":89,"duration":{"second":17,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":22000,"duration":{"second":17,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":95000,"duration":{"second":17,"nanosecond":905000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":67000}}],"watch_group":67000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":67,"duration":{"second":15,"nanosecond":413000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":37000}}],"watch_group":37000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":37,"duration":{"second":15,"nanosecond":413000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":1000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":1000,"duration":{"second":17,"nanosecond":905000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":88000}}],"watch_group":88000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":88,"duration":{"second":15,"nanosecond":413000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":61000,"duration":{"second":17,"nanosecond":905000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":3000,"duration":{"second":17,"nanosecond":905000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":73000}}],"watch_group":73000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":73,"duration":{"second":15,"nanosecond":413000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":39000}}],"watch_group":39000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":39,"duration":{"second":15,"nanosecond":413000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":13000}}],"watch_group":13000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":13,"duration":{"second":15,"nanosecond":413000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":74000,"duration":{"second":17,"nanosecond":904000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":15000,"duration":{"second":17,"nanosecond":904000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":44000,"duration":{"second":17,"nanosecond":904000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":45000,"duration":{"second":17,"nanosecond":904000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":68000,"duration":{"second":17,"nanosecond":904000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":72000}}],"watch_group":72000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":72,"duration":{"second":15,"nanosecond":408000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":38000}}],"watch_group":38000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":38,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":75000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":12000}}],"watch_group":12000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":12,"duration":{"second":15,"nanosecond":407000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":35000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":24000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":90000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":71000}}],"watch_group":71000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":71,"duration":{"second":15,"nanosecond":407000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":41000}}],"watch_group":41000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":41,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":42000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":11000}}],"watch_group":11000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":11,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":92000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":46000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":67000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":70000}}],"watch_group":70000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":70,"duration":{"second":15,"nanosecond":407000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":76000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":40000}}],"watch_group":40000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":40,"duration":{"second":15,"nanosecond":407000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":13000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":10000}}],"watch_group":10000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":10,"duration":{"second":15,"nanosecond":407000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":88000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":47000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":66000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":77000}}],"watch_group":77000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":77,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":43000}}],"watch_group":43000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":43,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":9000}}],"watch_group":9000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":9,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":99000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":26000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":70000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":76000}}],"watch_group":76000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":76,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":42000}}],"watch_group":42000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":42,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":8000}}],"watch_group":8000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":8,"duration":{"second":15,"nanosecond":407000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":37000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":49000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":71000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":48000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":75000}}],"watch_group":75000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":75,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":45000}}],"watch_group":45000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":45,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":7000}}],"watch_group":7000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":7,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":39000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":73000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":69000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":17000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":28000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":74000}}],"watch_group":74000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":74,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":44000}}],"watch_group":44000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":44,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":6000}}],"watch_group":6000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":6,"duration":{"second":15,"nanosecond":407000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":40000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":81000}}],"watch_group":81000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":81,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":47000}}],"watch_group":47000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":47,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":21000}}],"watch_group":21000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":21,"duration":{"second":15,"nanosecond":407000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":8000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":19000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":96000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":80000}}],"watch_group":80000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":80,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":46000}}],"watch_group":46000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":46,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":20000}}],"watch_group":20000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":20,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":52000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":6000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":79000}}],"watch_group":79000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":79,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":49000}}],"watch_group":49000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":49,"duration":{"second":16,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":19000}}],"watch_group":19000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":19,"duration":{"second":16,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":50000,"duration":{"second":16,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":72000,"duration":{"second":16,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":30000,"duration":{"second":16,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":78000}}],"watch_group":78000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":78,"duration":{"second":16,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":48000}}],"watch_group":48000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":48,"duration":{"second":16,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":18000}}],"watch_group":18000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":18,"duration":{"second":16,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":51000,"duration":{"second":16,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":85000}}],"watch_group":85000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":85,"duration":{"second":16,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":55000,"duration":{"second":16,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":51000}}],"watch_group":51000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":51,"duration":{"second":15,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":17000}}],"watch_group":17000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":17,"duration":{"second":15,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":21000,"duration":{"second":15,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":4000,"duration":{"second":15,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":84000}}],"watch_group":84000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":84,"duration":{"second":15,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":50000}}],"watch_group":50000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":50,"duration":{"second":15,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":16000}}],"watch_group":16000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":16,"duration":{"second":15,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":10000,"duration":{"second":15,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":54000,"duration":{"second":15,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":83000}}],"watch_group":83000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":83,"duration":{"second":15,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":32000,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":53000}}],"watch_group":53000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":53,"duration":{"second":15,"nanosecond":407000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":15000}}],"watch_group":15000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":15,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":2000,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":82000}}],"watch_group":82000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":82,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":52000}}],"watch_group":52000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":52,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":14000}}],"watch_group":14000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":14,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":53000,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":12000,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":23000,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":94000,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:55:59.440Z"}},{"id":"openflow:2","flow-node-inventory:port-number":49496,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":47000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":47000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":47000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":47000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":80000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":80000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":80000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":47000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":49000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"54","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.54/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":54}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"45","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.45/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":45}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"83","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.83/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":83}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":49000000}},"flags":""},{"id":"96","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.96/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":96}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"20","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.20/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":20}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"55","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.55/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":55}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"46","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.46/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":46}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"86","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.86/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":86}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":49000000}},"flags":""},{"id":"95","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.95/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":95}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"30","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.30/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":30}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"56","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.56/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":56}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"43","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.43/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":43}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"8","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.8/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":8}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"85","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.85/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":85}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":49000000}},"flags":""},{"id":"94","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.94/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":94}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"31","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.31/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":31}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"57","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.57/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":57}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"44","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.44/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":44}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"5","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.5/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":5}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"88","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.88/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":88}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":80000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"75","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.75/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":75}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"32","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.32/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":32}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"23","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.23/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":23}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"50","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.50/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":50}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"41","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.41/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":41}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"#UF$TABLE*0-75","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"12","byte-count":"930","duration":{"second":0,"nanosecond":48000000}},"flags":"SEND_FLOW_REM"},{"id":"6","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.6/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":6}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"87","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.87/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":87}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":80000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"74","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.74/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":74}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"33","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.33/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":33}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"24","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.24/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":24}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"51","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.51/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":51}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"42","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.42/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":42}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"3","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.3/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":3}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"99","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.99/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":99}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":47000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"73","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.73/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":73}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":80000000}},"flags":""},{"id":"34","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.34/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":34}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"21","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.21/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":21}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"52","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.52/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":52}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"4","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.4/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":4}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"89","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.89/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":89}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":80000000}},"flags":""},{"id":"98","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.98/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":98}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"72","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.72/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":72}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":80000000}},"flags":""},{"id":"35","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.35/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":35}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"22","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.22/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":22}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"53","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.53/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":53}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"40","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.40/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":40}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"37","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.37/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":37}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"28","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.28/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":28}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"36","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.36/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":36}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"27","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.27/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":27}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"39","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.39/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":39}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"38","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.38/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":38}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"59","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.59/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":59}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"58","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.58/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":58}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"49","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.49/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":49}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"48","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.48/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":48}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"47","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.47/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":47}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"18","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.18/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":18}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"19","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.19/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":19}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"14","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.14/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":14}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"15","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.15/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":15}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"1","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"16","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.16/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":16}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"2","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.2/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":2}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"17","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.17/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":17}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"26","active-flows":101,"packets-matched":"12"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s2","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:55:59.403Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"96:6d:7e:e3:20:cb","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"11","received":"11"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":19,"nanosecond":14000000},"bytes":{"transmitted":"911","received":"911"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"aa:85:98:60:af:45","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":19,"nanosecond":9000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"b2:63:e2:1f:6f:f5","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"11","received":"11"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":19,"nanosecond":14000000},"bytes":{"transmitted":"911","received":"911"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"6e:ec:a4:2a:50:8d","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"11","received":"8"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":19,"nanosecond":13000000},"bytes":{"transmitted":"911","received":"656"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:group":[{"group-id":56,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":56000}}],"watch_group":56000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":56,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":22000}}],"watch_group":22000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":22,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":99000}}],"watch_group":99000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":99,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":34000,"duration":{"second":18,"nanosecond":730000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":89000,"duration":{"second":18,"nanosecond":730000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":60000,"duration":{"second":18,"nanosecond":730000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":91000,"duration":{"second":18,"nanosecond":730000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":57000}}],"watch_group":57000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":57,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":23000}}],"watch_group":23000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":23,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":14000,"duration":{"second":18,"nanosecond":730000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":98000}}],"watch_group":98000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":98,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":56000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":56000,"duration":{"second":18,"nanosecond":730000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":85000,"duration":{"second":18,"nanosecond":730000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":54000}}],"watch_group":54000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":54,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":24000}}],"watch_group":24000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":24,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":36000,"duration":{"second":18,"nanosecond":730000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":87000,"duration":{"second":18,"nanosecond":730000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":59000,"duration":{"second":18,"nanosecond":729000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":25000,"duration":{"second":18,"nanosecond":729000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":43000,"duration":{"second":18,"nanosecond":729000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":55000}}],"watch_group":55000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":55,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":25000}}],"watch_group":25000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":25,"duration":{"second":18,"nanosecond":434000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":100000}}],"watch_group":100000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":100,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":58000,"duration":{"second":18,"nanosecond":434000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":86000,"duration":{"second":18,"nanosecond":434000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":60000}}],"watch_group":60000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":60,"duration":{"second":18,"nanosecond":434000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":26000}}],"watch_group":26000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":26,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":41000,"duration":{"second":18,"nanosecond":432000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":95000}}],"watch_group":95000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":95,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":82000,"duration":{"second":18,"nanosecond":432000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":61000}}],"watch_group":61000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":61,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":27000}}],"watch_group":27000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":27,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":94000}}],"watch_group":94000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":94,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":98000,"duration":{"second":18,"nanosecond":432000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":27000,"duration":{"second":18,"nanosecond":432000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":57000,"duration":{"second":18,"nanosecond":432000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":16000,"duration":{"second":18,"nanosecond":430000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":83000,"duration":{"second":18,"nanosecond":430000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":58000}}],"watch_group":58000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":58,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":28000}}],"watch_group":28000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":28,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":97000}}],"watch_group":97000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":97,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":100000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":59000}}],"watch_group":59000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":59,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":38000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":29000}}],"watch_group":29000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":29,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":96000}}],"watch_group":96000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":96,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":84000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":64000}}],"watch_group":64000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":64,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":30000}}],"watch_group":30000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":30,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":4000}}],"watch_group":4000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":4,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":91000}}],"watch_group":91000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":91,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":7000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":29000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":65000}}],"watch_group":65000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":65,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":31000}}],"watch_group":31000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":31,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":5000}}],"watch_group":5000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":5,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":90000}}],"watch_group":90000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":90,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":18000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":62000}}],"watch_group":62000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":62,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":65000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":32000}}],"watch_group":32000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":32,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":2000}}],"watch_group":2000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":2,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":93000}}],"watch_group":93000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":93,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":64000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":63000}}],"watch_group":63000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":63,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":33000}}],"watch_group":33000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":33,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":3000}}],"watch_group":3000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":3,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":80000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":9000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":92000}}],"watch_group":92000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":92,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":5000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":20000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":81000,"duration":{"second":17,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":97000,"duration":{"second":17,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":31000,"duration":{"second":17,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":68000}}],"watch_group":68000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":68,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":11000,"duration":{"second":17,"nanosecond":927000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":34000}}],"watch_group":34000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":34,"duration":{"second":17,"nanosecond":927000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":78000,"duration":{"second":17,"nanosecond":927000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":87000}}],"watch_group":87000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":87,"duration":{"second":17,"nanosecond":927000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":93000,"duration":{"second":17,"nanosecond":927000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":63000,"duration":{"second":17,"nanosecond":927000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":69000}}],"watch_group":69000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":69,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":35000}}],"watch_group":35000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":35,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":1,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":1000}}],"watch_group":1000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":1,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":33000,"duration":{"second":17,"nanosecond":927000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":79000,"duration":{"second":17,"nanosecond":927000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":86000}}],"watch_group":86000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":86,"duration":{"second":17,"nanosecond":927000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":62000,"duration":{"second":17,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":66000}}],"watch_group":66000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":66,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":77000,"duration":{"second":17,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":36000}}],"watch_group":36000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":36,"duration":{"second":17,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":89000}}],"watch_group":89000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":89,"duration":{"second":17,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":22000,"duration":{"second":17,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":95000,"duration":{"second":17,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":67000}}],"watch_group":67000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":67,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":37000}}],"watch_group":37000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":37,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":1000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":1000,"duration":{"second":17,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":88000}}],"watch_group":88000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":88,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":61000,"duration":{"second":17,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":3000,"duration":{"second":17,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":73000}}],"watch_group":73000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":73,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":39000}}],"watch_group":39000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":39,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":13000}}],"watch_group":13000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":13,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":74000,"duration":{"second":17,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":15000,"duration":{"second":17,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":44000,"duration":{"second":17,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":45000,"duration":{"second":17,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":68000,"duration":{"second":17,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":72000}}],"watch_group":72000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":72,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":38000}}],"watch_group":38000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":38,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":75000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":12000}}],"watch_group":12000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":12,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":35000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":24000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":90000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":71000}}],"watch_group":71000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":71,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":41000}}],"watch_group":41000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":41,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":42000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":11000}}],"watch_group":11000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":11,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":92000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":46000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":67000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":70000}}],"watch_group":70000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":70,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":76000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":40000}}],"watch_group":40000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":40,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":13000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":10000}}],"watch_group":10000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":10,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":88000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":47000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":66000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":77000}}],"watch_group":77000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":77,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":43000}}],"watch_group":43000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":43,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":9000}}],"watch_group":9000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":9,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":99000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":26000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":70000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":76000}}],"watch_group":76000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":76,"duration":{"second":16,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":42000}}],"watch_group":42000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":42,"duration":{"second":16,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":8000}}],"watch_group":8000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":8,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":37000,"duration":{"second":16,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":49000,"duration":{"second":16,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":71000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":48000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":75000}}],"watch_group":75000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":75,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":45000}}],"watch_group":45000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":45,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":7000}}],"watch_group":7000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":7,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":39000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":73000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":69000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":17000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":28000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":74000}}],"watch_group":74000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":74,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":44000}}],"watch_group":44000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":44,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":6000}}],"watch_group":6000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":6,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":40000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":81000}}],"watch_group":81000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":81,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":47000}}],"watch_group":47000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":47,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":21000}}],"watch_group":21000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":21,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":8000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":19000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":96000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":80000}}],"watch_group":80000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":80,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":46000}}],"watch_group":46000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":46,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":20000}}],"watch_group":20000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":20,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":52000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":6000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":79000}}],"watch_group":79000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":79,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":49000}}],"watch_group":49000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":49,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":19000}}],"watch_group":19000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":19,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":50000,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":72000,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":30000,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":78000}}],"watch_group":78000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":78,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":48000}}],"watch_group":48000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":48,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":18000}}],"watch_group":18000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":18,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":51000,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":85000}}],"watch_group":85000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":85,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":55000,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":51000}}],"watch_group":51000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":51,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":17000}}],"watch_group":17000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":17,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":21000,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":4000,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":84000}}],"watch_group":84000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":84,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":50000}}],"watch_group":50000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":50,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":16000}}],"watch_group":16000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":16,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":10000,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":54000,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":83000}}],"watch_group":83000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":83,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":32000,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":53000}}],"watch_group":53000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":53,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":15000}}],"watch_group":15000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":15,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":2000,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":82000}}],"watch_group":82000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":82,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":52000}}],"watch_group":52000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":52,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":14000}}],"watch_group":14000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":14,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":53000,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":12000,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":23000,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":94000,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:55:59.480Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:00.998977" elapsed="0.013756"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-05-25T01:56:01.015936" level="INFO">Item found from container 303 times.</msg>
<msg time="2026-05-25T01:56:01.016019" level="INFO">${count} = 303</msg>
<var>${count}</var>
<arg>${resp.text}</arg>
<arg>"priority"</arg>
<doc>Returns and logs how many times ``item`` is found from ``container``.</doc>
<status status="PASS" start="2026-05-25T01:56:01.012935" elapsed="0.003109"/>
</kw>
<kw name="Should Be Equal As Integers" owner="BuiltIn">
<msg time="2026-05-25T01:56:01.016629" level="FAIL">303 != 300</msg>
<arg>${count}</arg>
<arg>${flows}</arg>
<doc>Fails if objects are unequal after converting them to integers.</doc>
<status status="FAIL" start="2026-05-25T01:56:01.016259" elapsed="0.000445">303 != 300</status>
</kw>
<arg>${less_flows}</arg>
<doc>Check number of flows in the inventory.</doc>
<status status="FAIL" start="2026-05-25T01:56:00.948985" elapsed="0.067844">303 != 300</status>
</kw>
<kw name="Check Number Of Flows" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:02.069651" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:02.071688" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":49488,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:56:02.072210" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_NODES_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:02.018721" elapsed="0.053552"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:02.078456" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":49488,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"54","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.54/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":54}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":30000000}},"flags":""},{"id":"45","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.45/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":45}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"83","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.83/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":83}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"96","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.96/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":96}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"20","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.20/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":20}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"55","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.55/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":55}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":30000000}},"flags":""},{"id":"46","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.46/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":46}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"86","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.86/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":86}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"95","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.95/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":95}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"30","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.30/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":30}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"56","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.56/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":56}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":30000000}},"flags":""},{"id":"43","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.43/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":43}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":31000000}},"flags":""},{"id":"8","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.8/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":8}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"85","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.85/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":85}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"94","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.94/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":94}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"31","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.31/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":31}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"57","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.57/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":57}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":30000000}},"flags":""},{"id":"44","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.44/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":44}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":31000000}},"flags":""},{"id":"#UF$TABLE*0-76","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"6","byte-count":"450","duration":{"second":0,"nanosecond":26000000}},"flags":"SEND_FLOW_REM"},{"id":"5","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.5/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":5}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"88","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.88/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":88}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"75","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.75/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":75}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"32","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.32/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":32}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"23","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.23/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":23}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"50","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.50/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":50}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":30000000}},"flags":""},{"id":"41","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.41/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":41}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":31000000}},"flags":""},{"id":"6","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.6/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":6}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"87","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.87/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":87}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"74","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.74/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":74}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"33","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.33/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":33}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"24","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.24/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":24}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"51","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.51/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":51}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":30000000}},"flags":""},{"id":"42","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.42/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":42}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":31000000}},"flags":""},{"id":"3","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.3/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":3}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"99","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.99/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":99}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"73","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.73/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":73}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"34","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.34/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":34}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"21","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.21/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":21}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"52","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.52/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":52}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":30000000}},"flags":""},{"id":"4","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.4/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":4}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"89","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.89/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":89}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"98","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.98/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":98}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"72","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.72/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":72}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"35","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.35/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":35}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"22","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.22/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":22}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"53","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.53/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":53}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":30000000}},"flags":""},{"id":"40","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.40/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":40}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":31000000}},"flags":""},{"id":"37","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.37/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":37}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"28","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.28/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":28}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"36","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.36/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":36}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"27","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.27/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":27}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"39","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.39/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":39}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"38","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.38/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":38}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"59","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.59/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":59}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":31000000}},"flags":""},{"id":"58","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.58/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":58}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":31000000}},"flags":""},{"id":"49","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.49/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":49}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"48","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.48/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":48}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"47","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.47/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":47}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":34000000}},"flags":""},{"id":"18","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.18/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":18}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"19","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.19/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":19}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"14","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.14/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":14}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"15","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.15/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":15}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"1","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"16","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.16/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":16}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"2","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.2/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":2}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"17","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.17/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":17}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"17","active-flows":101,"packets-matched":"6"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s3","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:55:59.426Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"d2:3e:6c:b7:77:4e","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":19,"nanosecond":15000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"ea:2e:56:2c:59:09","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"11","received":"11"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":19,"nanosecond":19000000},"bytes":{"transmitted":"911","received":"911"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"1e:18:44:08:21:c8","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"11","received":"8"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":19,"nanosecond":19000000},"bytes":{"transmitted":"911","received":"656"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:group":[{"group-id":56,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":56000}}],"watch_group":56000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":56,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":22000}}],"watch_group":22000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":22,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":99000}}],"watch_group":99000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":99,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":34000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":89000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":60000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":91000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":57000}}],"watch_group":57000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":57,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":23000}}],"watch_group":23000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":23,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":14000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":98000}}],"watch_group":98000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":98,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":56000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":56000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":85000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":54000}}],"watch_group":54000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":54,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":24000}}],"watch_group":24000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":24,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":36000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":87000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":59000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":25000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":43000,"duration":{"second":18,"nanosecond":746000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":55000}}],"watch_group":55000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":55,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":25000}}],"watch_group":25000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":25,"duration":{"second":18,"nanosecond":450000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":100000}}],"watch_group":100000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":100,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":58000,"duration":{"second":18,"nanosecond":450000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":86000,"duration":{"second":18,"nanosecond":450000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":60000}}],"watch_group":60000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":60,"duration":{"second":18,"nanosecond":450000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":26000}}],"watch_group":26000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":26,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":41000,"duration":{"second":18,"nanosecond":450000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":95000}}],"watch_group":95000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":95,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":82000,"duration":{"second":18,"nanosecond":450000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":61000}}],"watch_group":61000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":61,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":27000}}],"watch_group":27000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":27,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":94000}}],"watch_group":94000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":94,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":98000,"duration":{"second":18,"nanosecond":450000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":27000,"duration":{"second":18,"nanosecond":450000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":57000,"duration":{"second":18,"nanosecond":450000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":16000,"duration":{"second":18,"nanosecond":449000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":83000,"duration":{"second":18,"nanosecond":449000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":58000}}],"watch_group":58000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":58,"duration":{"second":17,"nanosecond":946000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":28000}}],"watch_group":28000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":28,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":97000}}],"watch_group":97000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":97,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":100000,"duration":{"second":17,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":59000}}],"watch_group":59000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":59,"duration":{"second":17,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":38000,"duration":{"second":17,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":29000}}],"watch_group":29000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":29,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":96000}}],"watch_group":96000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":96,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":84000,"duration":{"second":17,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":64000}}],"watch_group":64000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":64,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":30000}}],"watch_group":30000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":30,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":4000}}],"watch_group":4000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":4,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":91000}}],"watch_group":91000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":91,"duration":{"second":17,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":7000,"duration":{"second":17,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":29000,"duration":{"second":17,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":65000}}],"watch_group":65000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":65,"duration":{"second":15,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":31000}}],"watch_group":31000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":31,"duration":{"second":15,"nanosecond":442000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":5000}}],"watch_group":5000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":5,"duration":{"second":15,"nanosecond":442000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":90000}}],"watch_group":90000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":90,"duration":{"second":15,"nanosecond":442000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":18000,"duration":{"second":17,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":62000}}],"watch_group":62000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":62,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":65000,"duration":{"second":17,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":32000}}],"watch_group":32000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":32,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":2000}}],"watch_group":2000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":2,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":93000}}],"watch_group":93000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":93,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":64000,"duration":{"second":17,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":63000}}],"watch_group":63000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":63,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":33000}}],"watch_group":33000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":33,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":3000}}],"watch_group":3000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":3,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":80000,"duration":{"second":17,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":9000,"duration":{"second":17,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":92000}}],"watch_group":92000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":92,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":5000,"duration":{"second":17,"nanosecond":943000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":20000,"duration":{"second":17,"nanosecond":943000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":81000,"duration":{"second":17,"nanosecond":943000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":97000,"duration":{"second":17,"nanosecond":943000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":31000,"duration":{"second":17,"nanosecond":942000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":68000}}],"watch_group":68000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":68,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":11000,"duration":{"second":17,"nanosecond":941000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":34000}}],"watch_group":34000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":34,"duration":{"second":17,"nanosecond":941000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":78000,"duration":{"second":17,"nanosecond":940000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":87000}}],"watch_group":87000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":87,"duration":{"second":17,"nanosecond":940000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":93000,"duration":{"second":17,"nanosecond":940000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":63000,"duration":{"second":17,"nanosecond":940000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":69000}}],"watch_group":69000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":69,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":35000}}],"watch_group":35000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":35,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":1,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":1000}}],"watch_group":1000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":1,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":33000,"duration":{"second":17,"nanosecond":940000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":79000,"duration":{"second":17,"nanosecond":940000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":86000}}],"watch_group":86000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":86,"duration":{"second":17,"nanosecond":939000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":62000,"duration":{"second":17,"nanosecond":939000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":66000}}],"watch_group":66000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":66,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":77000,"duration":{"second":17,"nanosecond":939000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":36000}}],"watch_group":36000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":36,"duration":{"second":17,"nanosecond":939000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":89000}}],"watch_group":89000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":89,"duration":{"second":17,"nanosecond":939000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":22000,"duration":{"second":17,"nanosecond":938000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":95000,"duration":{"second":17,"nanosecond":938000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":67000}}],"watch_group":67000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":67,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":37000}}],"watch_group":37000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":37,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":1000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":1000,"duration":{"second":17,"nanosecond":938000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":88000}}],"watch_group":88000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":88,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":61000,"duration":{"second":17,"nanosecond":937000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":3000,"duration":{"second":17,"nanosecond":937000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":73000}}],"watch_group":73000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":73,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":39000}}],"watch_group":39000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":39,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":13000}}],"watch_group":13000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":13,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":74000,"duration":{"second":17,"nanosecond":937000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":15000,"duration":{"second":17,"nanosecond":937000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":44000,"duration":{"second":17,"nanosecond":937000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":45000,"duration":{"second":17,"nanosecond":937000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":68000,"duration":{"second":17,"nanosecond":937000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":72000}}],"watch_group":72000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":72,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":38000}}],"watch_group":38000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":38,"duration":{"second":17,"nanosecond":450000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":75000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":12000}}],"watch_group":12000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":12,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":35000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":24000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":90000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":71000}}],"watch_group":71000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":71,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":41000}}],"watch_group":41000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":41,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":42000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":11000}}],"watch_group":11000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":11,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":92000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":46000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":67000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":70000}}],"watch_group":70000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":70,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":76000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":40000}}],"watch_group":40000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":40,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":13000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":10000}}],"watch_group":10000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":10,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":88000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":47000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":66000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":77000}}],"watch_group":77000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":77,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":43000}}],"watch_group":43000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":43,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":9000}}],"watch_group":9000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":9,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":99000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":26000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":70000,"duration":{"second":17,"nanosecond":448000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":76000}}],"watch_group":76000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":76,"duration":{"second":16,"nanosecond":949000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":42000}}],"watch_group":42000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":42,"duration":{"second":16,"nanosecond":949000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":8000}}],"watch_group":8000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":8,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":37000,"duration":{"second":16,"nanosecond":948000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":49000,"duration":{"second":16,"nanosecond":948000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":71000,"duration":{"second":16,"nanosecond":948000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":48000,"duration":{"second":16,"nanosecond":947000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":75000}}],"watch_group":75000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":75,"duration":{"second":16,"nanosecond":947000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":45000}}],"watch_group":45000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":45,"duration":{"second":16,"nanosecond":947000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":7000}}],"watch_group":7000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":7,"duration":{"second":16,"nanosecond":947000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":39000,"duration":{"second":16,"nanosecond":946000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":73000,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":69000,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":17000,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":28000,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":74000}}],"watch_group":74000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":74,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":44000}}],"watch_group":44000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":44,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":6000}}],"watch_group":6000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":6,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":40000,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":81000}}],"watch_group":81000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":81,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":47000}}],"watch_group":47000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":47,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":21000}}],"watch_group":21000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":21,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":8000,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":19000,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":96000,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":80000}}],"watch_group":80000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":80,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":46000}}],"watch_group":46000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":46,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":20000}}],"watch_group":20000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":20,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":52000,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":6000,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":79000}}],"watch_group":79000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":79,"duration":{"second":16,"nanosecond":945000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":49000}}],"watch_group":49000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":49,"duration":{"second":16,"nanosecond":447000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":19000}}],"watch_group":19000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":19,"duration":{"second":16,"nanosecond":447000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":50000,"duration":{"second":16,"nanosecond":447000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":72000,"duration":{"second":16,"nanosecond":447000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":30000,"duration":{"second":16,"nanosecond":447000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":78000}}],"watch_group":78000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":78,"duration":{"second":16,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":48000}}],"watch_group":48000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":48,"duration":{"second":16,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":18000}}],"watch_group":18000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":18,"duration":{"second":16,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":51000,"duration":{"second":16,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":85000}}],"watch_group":85000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":85,"duration":{"second":16,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":55000,"duration":{"second":16,"nanosecond":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":51000}}],"watch_group":51000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":51,"duration":{"second":15,"nanosecond":947000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":17000}}],"watch_group":17000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":17,"duration":{"second":15,"nanosecond":947000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":21000,"duration":{"second":15,"nanosecond":947000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":4000,"duration":{"second":15,"nanosecond":947000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":84000}}],"watch_group":84000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":84,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":50000}}],"watch_group":50000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":50,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":16000}}],"watch_group":16000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":16,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":10000,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":54000,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":83000}}],"watch_group":83000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":83,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":32000,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":53000}}],"watch_group":53000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":53,"duration":{"second":15,"nanosecond":437000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":15000}}],"watch_group":15000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":15,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":2000,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":82000}}],"watch_group":82000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":82,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":52000}}],"watch_group":52000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":52,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":14000}}],"watch_group":14000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":14,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":53000,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":12000,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":23000,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":94000,"duration":{"second":15,"nanosecond":944000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:55:59.481Z"}},{"id":"openflow:1","flow-node-inventory:port-number":49486,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":65000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":65000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"54","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.54/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":54}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"45","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.45/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":45}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"83","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.83/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":83}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"96","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.96/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":96}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":64000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"20","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.20/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":20}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"55","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.55/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":55}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"46","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.46/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":46}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"#UF$TABLE*0-74","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"6","byte-count":"450","duration":{"second":0,"nanosecond":25000000}},"flags":"SEND_FLOW_REM"},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"86","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.86/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":86}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"95","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.95/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":95}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":65000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"30","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.30/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":30}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"56","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.56/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":56}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"43","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.43/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":43}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"8","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.8/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":8}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"85","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.85/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":85}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"94","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.94/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":94}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":65000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"31","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.31/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":31}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"57","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.57/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":57}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"44","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.44/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":44}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"5","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.5/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":5}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"88","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.88/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":88}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":64000000}},"flags":""},{"id":"75","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.75/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":75}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"32","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.32/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":32}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"23","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.23/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":23}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"50","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.50/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":50}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"41","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.41/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":41}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"6","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.6/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":6}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"87","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.87/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":87}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":64000000}},"flags":""},{"id":"74","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.74/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":74}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"33","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.33/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":33}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"24","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.24/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":24}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"51","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.51/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":51}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"42","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.42/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":42}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"3","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.3/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":3}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"99","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.99/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":99}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":64000000}},"flags":""},{"id":"73","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.73/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":73}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"34","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.34/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":34}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"21","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.21/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":21}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"52","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.52/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":52}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"4","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.4/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":4}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"89","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.89/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":89}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"98","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.98/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":98}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":64000000}},"flags":""},{"id":"72","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.72/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":72}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"35","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.35/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":35}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"22","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.22/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":22}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"53","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.53/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":53}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"40","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.40/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":40}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"37","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.37/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":37}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"28","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.28/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":28}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"36","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.36/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":36}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"27","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.27/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":27}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"39","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.39/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":39}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"38","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.38/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":38}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":65000000}},"flags":""},{"id":"59","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.59/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":59}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"58","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.58/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":58}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":24000000}},"flags":""},{"id":"49","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.49/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":49}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"48","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.48/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":48}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"47","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.47/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":47}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":25000000}},"flags":""},{"id":"18","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.18/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":18}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"19","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.19/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":19}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"14","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.14/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":14}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"15","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.15/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":15}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"1","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"16","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.16/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":16}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"2","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.2/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":2}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""},{"id":"17","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.17/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":17}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":45000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"17","active-flows":101,"packets-matched":"6"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s1","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:55:59.387Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"de:fd:88:3a:0f:fe","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"11","received":"8"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":18,"nanosecond":991000000},"bytes":{"transmitted":"911","received":"656"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ee:44:6a:8a:83:4e","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":18,"nanosecond":980000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"3a:a8:41:44:b3:f9","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"11","received":"11"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":18,"nanosecond":992000000},"bytes":{"transmitted":"911","received":"911"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:group":[{"group-id":56,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":56000}}],"watch_group":56000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":56,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":22000}}],"watch_group":22000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":22,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":99000}}],"watch_group":99000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":99,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":34000,"duration":{"second":18,"nanosecond":716000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":89000,"duration":{"second":18,"nanosecond":716000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":60000,"duration":{"second":18,"nanosecond":716000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":91000,"duration":{"second":18,"nanosecond":716000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":57000}}],"watch_group":57000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":57,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":23000}}],"watch_group":23000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":23,"duration":{"second":15,"nanosecond":418000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":14000,"duration":{"second":18,"nanosecond":716000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":98000}}],"watch_group":98000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":98,"duration":{"second":15,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":56000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":56000,"duration":{"second":18,"nanosecond":715000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":85000,"duration":{"second":18,"nanosecond":714000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":54000}}],"watch_group":54000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":54,"duration":{"second":15,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":24000}}],"watch_group":24000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":24,"duration":{"second":15,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":36000,"duration":{"second":18,"nanosecond":714000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":87000,"duration":{"second":18,"nanosecond":714000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":59000,"duration":{"second":18,"nanosecond":714000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":25000,"duration":{"second":18,"nanosecond":714000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":43000,"duration":{"second":18,"nanosecond":714000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":55000}}],"watch_group":55000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":55,"duration":{"second":15,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":25000}}],"watch_group":25000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":25,"duration":{"second":18,"nanosecond":419000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":100000}}],"watch_group":100000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":100,"duration":{"second":15,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":58000,"duration":{"second":18,"nanosecond":419000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":86000,"duration":{"second":18,"nanosecond":419000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":60000}}],"watch_group":60000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":60,"duration":{"second":18,"nanosecond":418000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":26000}}],"watch_group":26000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":26,"duration":{"second":15,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":41000,"duration":{"second":18,"nanosecond":418000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":95000}}],"watch_group":95000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":95,"duration":{"second":15,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":82000,"duration":{"second":18,"nanosecond":418000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":61000}}],"watch_group":61000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":61,"duration":{"second":15,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":27000}}],"watch_group":27000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":27,"duration":{"second":15,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":94000}}],"watch_group":94000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":94,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":98000,"duration":{"second":18,"nanosecond":418000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":27000,"duration":{"second":18,"nanosecond":418000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":57000,"duration":{"second":18,"nanosecond":418000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":16000,"duration":{"second":18,"nanosecond":418000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":83000,"duration":{"second":18,"nanosecond":418000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":58000}}],"watch_group":58000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":58,"duration":{"second":17,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":28000}}],"watch_group":28000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":28,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":97000}}],"watch_group":97000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":97,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":100000,"duration":{"second":17,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":59000}}],"watch_group":59000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":59,"duration":{"second":17,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":38000,"duration":{"second":17,"nanosecond":908000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":29000}}],"watch_group":29000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":29,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":96000}}],"watch_group":96000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":96,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":84000,"duration":{"second":17,"nanosecond":908000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":64000}}],"watch_group":64000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":64,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":30000}}],"watch_group":30000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":30,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":4000}}],"watch_group":4000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":4,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":91000}}],"watch_group":91000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":91,"duration":{"second":17,"nanosecond":908000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":7000,"duration":{"second":17,"nanosecond":908000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":29000,"duration":{"second":17,"nanosecond":908000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":65000}}],"watch_group":65000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":65,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":31000}}],"watch_group":31000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":31,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":5000}}],"watch_group":5000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":5,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":90000}}],"watch_group":90000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":90,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":18000,"duration":{"second":17,"nanosecond":908000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":62000}}],"watch_group":62000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":62,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":65000,"duration":{"second":17,"nanosecond":908000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":32000}}],"watch_group":32000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":32,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":2000}}],"watch_group":2000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":2,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":93000}}],"watch_group":93000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":93,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":64000,"duration":{"second":17,"nanosecond":908000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":63000}}],"watch_group":63000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":63,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":33000}}],"watch_group":33000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":33,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":3000}}],"watch_group":3000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":3,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":80000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":9000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":92000}}],"watch_group":92000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":92,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":5000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":20000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":81000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":97000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":31000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":68000}}],"watch_group":68000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":68,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":11000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":34000}}],"watch_group":34000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":34,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":78000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":87000}}],"watch_group":87000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":87,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":93000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":63000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":69000}}],"watch_group":69000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":69,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":35000}}],"watch_group":35000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":35,"duration":{"second":15,"nanosecond":413000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":1,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":1000}}],"watch_group":1000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":1,"duration":{"second":15,"nanosecond":413000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":33000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":79000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":86000}}],"watch_group":86000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":86,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":62000,"duration":{"second":17,"nanosecond":907000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":66000}}],"watch_group":66000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":66,"duration":{"second":15,"nanosecond":413000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":77000,"duration":{"second":17,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":36000}}],"watch_group":36000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":36,"duration":{"second":17,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":89000}}],"watch_group":89000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":89,"duration":{"second":17,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":22000,"duration":{"second":17,"nanosecond":906000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":95000,"duration":{"second":17,"nanosecond":905000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":67000}}],"watch_group":67000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":67,"duration":{"second":15,"nanosecond":413000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":37000}}],"watch_group":37000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":37,"duration":{"second":15,"nanosecond":413000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":1000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":1000,"duration":{"second":17,"nanosecond":905000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":88000}}],"watch_group":88000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":88,"duration":{"second":15,"nanosecond":413000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":61000,"duration":{"second":17,"nanosecond":905000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":3000,"duration":{"second":17,"nanosecond":905000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":73000}}],"watch_group":73000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":73,"duration":{"second":15,"nanosecond":413000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":39000}}],"watch_group":39000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":39,"duration":{"second":15,"nanosecond":413000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":13000}}],"watch_group":13000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":13,"duration":{"second":15,"nanosecond":413000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":74000,"duration":{"second":17,"nanosecond":904000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":15000,"duration":{"second":17,"nanosecond":904000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":44000,"duration":{"second":17,"nanosecond":904000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":45000,"duration":{"second":17,"nanosecond":904000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":68000,"duration":{"second":17,"nanosecond":904000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":72000}}],"watch_group":72000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":72,"duration":{"second":15,"nanosecond":408000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":38000}}],"watch_group":38000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":38,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":75000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":12000}}],"watch_group":12000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":12,"duration":{"second":15,"nanosecond":407000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":35000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":24000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":90000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":71000}}],"watch_group":71000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":71,"duration":{"second":15,"nanosecond":407000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":41000}}],"watch_group":41000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":41,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":42000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":11000}}],"watch_group":11000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":11,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":92000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":46000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":67000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":70000}}],"watch_group":70000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":70,"duration":{"second":15,"nanosecond":407000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":76000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":40000}}],"watch_group":40000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":40,"duration":{"second":15,"nanosecond":407000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":13000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":10000}}],"watch_group":10000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":10,"duration":{"second":15,"nanosecond":407000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":88000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":47000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":66000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":77000}}],"watch_group":77000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":77,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":43000}}],"watch_group":43000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":43,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":9000}}],"watch_group":9000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":9,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":99000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":26000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":70000,"duration":{"second":17,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":76000}}],"watch_group":76000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":76,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":42000}}],"watch_group":42000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":42,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":8000}}],"watch_group":8000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":8,"duration":{"second":15,"nanosecond":407000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":37000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":49000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":71000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":48000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":75000}}],"watch_group":75000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":75,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":45000}}],"watch_group":45000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":45,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":7000}}],"watch_group":7000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":7,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":39000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":73000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":69000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":17000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":28000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":74000}}],"watch_group":74000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":74,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":44000}}],"watch_group":44000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":44,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":6000}}],"watch_group":6000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":6,"duration":{"second":15,"nanosecond":407000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":40000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":81000}}],"watch_group":81000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":81,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":47000}}],"watch_group":47000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":47,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":21000}}],"watch_group":21000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":21,"duration":{"second":15,"nanosecond":407000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":8000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":19000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":96000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":80000}}],"watch_group":80000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":80,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":46000}}],"watch_group":46000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":46,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":20000}}],"watch_group":20000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":20,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":52000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":6000,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":79000}}],"watch_group":79000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":79,"duration":{"second":16,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":49000}}],"watch_group":49000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":49,"duration":{"second":16,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":19000}}],"watch_group":19000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":19,"duration":{"second":16,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":50000,"duration":{"second":16,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":72000,"duration":{"second":16,"nanosecond":417000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":30000,"duration":{"second":16,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":78000}}],"watch_group":78000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":78,"duration":{"second":16,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":48000}}],"watch_group":48000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":48,"duration":{"second":16,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":18000}}],"watch_group":18000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":18,"duration":{"second":16,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":51000,"duration":{"second":16,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":85000}}],"watch_group":85000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":85,"duration":{"second":16,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":55000,"duration":{"second":16,"nanosecond":416000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":51000}}],"watch_group":51000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":51,"duration":{"second":15,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":17000}}],"watch_group":17000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":17,"duration":{"second":15,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":21000,"duration":{"second":15,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":4000,"duration":{"second":15,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":84000}}],"watch_group":84000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":84,"duration":{"second":15,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":50000}}],"watch_group":50000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":50,"duration":{"second":15,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":16000}}],"watch_group":16000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":16,"duration":{"second":15,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":10000,"duration":{"second":15,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":54000,"duration":{"second":15,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":83000}}],"watch_group":83000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":83,"duration":{"second":15,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":32000,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":53000}}],"watch_group":53000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":53,"duration":{"second":15,"nanosecond":407000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":15000}}],"watch_group":15000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":15,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":2000,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":82000}}],"watch_group":82000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":82,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":52000}}],"watch_group":52000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":52,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":14000}}],"watch_group":14000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":14,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":53000,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":12000,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":23000,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":94000,"duration":{"second":15,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:55:59.440Z"}},{"id":"openflow:2","flow-node-inventory:port-number":49496,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":47000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":47000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":47000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":47000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":80000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":80000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":80000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":47000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":49000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"54","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.54/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":54}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"45","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.45/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":45}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"83","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.83/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":83}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":49000000}},"flags":""},{"id":"96","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.96/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":96}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"20","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.20/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":20}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"55","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.55/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":55}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"46","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.46/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":46}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"86","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.86/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":86}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":49000000}},"flags":""},{"id":"95","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.95/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":95}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"30","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.30/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":30}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"56","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.56/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":56}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"43","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.43/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":43}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"8","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.8/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":8}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"85","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.85/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":85}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":49000000}},"flags":""},{"id":"94","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.94/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":94}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"31","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.31/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":31}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"57","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.57/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":57}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"44","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.44/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":44}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"5","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.5/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":5}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"88","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.88/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":88}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":80000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"75","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.75/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":75}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"32","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.32/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":32}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"23","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.23/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":23}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"50","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.50/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":50}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"41","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.41/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":41}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"#UF$TABLE*0-75","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"12","byte-count":"930","duration":{"second":0,"nanosecond":48000000}},"flags":"SEND_FLOW_REM"},{"id":"6","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.6/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":6}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"87","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.87/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":87}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":80000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"74","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.74/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":74}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"33","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.33/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":33}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"24","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.24/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":24}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"51","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.51/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":51}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"42","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.42/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":42}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"3","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.3/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":3}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"99","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.99/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":99}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":47000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"73","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.73/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":73}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":80000000}},"flags":""},{"id":"34","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.34/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":34}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"21","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.21/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":21}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"52","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.52/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":52}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"4","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.4/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":4}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"89","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.89/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":89}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":80000000}},"flags":""},{"id":"98","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.98/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":98}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"72","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.72/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":72}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":80000000}},"flags":""},{"id":"35","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.35/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":35}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"22","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.22/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":22}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"53","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.53/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":53}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"40","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.40/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":40}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"37","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.37/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":37}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"28","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.28/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":28}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"36","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.36/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":36}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"27","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.27/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":27}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"39","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.39/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":39}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"38","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.38/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":38}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":81000000}},"flags":""},{"id":"59","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.59/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":59}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"58","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.58/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":58}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":36000000}},"flags":""},{"id":"49","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.49/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":49}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"48","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.48/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":48}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":38000000}},"flags":""},{"id":"47","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.47/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":47}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":37000000}},"flags":""},{"id":"18","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.18/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":18}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"19","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.19/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":19}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"14","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.14/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":14}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"15","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.15/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":15}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"1","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.1/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":1}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"16","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.16/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":16}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"2","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.2/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":2}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""},{"id":"17","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.17/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":17}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":48000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"26","active-flows":101,"packets-matched":"12"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s2","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:55:59.403Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"96:6d:7e:e3:20:cb","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"11","received":"11"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":19,"nanosecond":14000000},"bytes":{"transmitted":"911","received":"911"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"aa:85:98:60:af:45","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":19,"nanosecond":9000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"b2:63:e2:1f:6f:f5","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"11","received":"11"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":19,"nanosecond":14000000},"bytes":{"transmitted":"911","received":"911"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"6e:ec:a4:2a:50:8d","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"11","received":"8"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":19,"nanosecond":13000000},"bytes":{"transmitted":"911","received":"656"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:group":[{"group-id":56,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":56000}}],"watch_group":56000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":56,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":22000}}],"watch_group":22000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":22,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":99000}}],"watch_group":99000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":99,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":34000,"duration":{"second":18,"nanosecond":730000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":89000,"duration":{"second":18,"nanosecond":730000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":60000,"duration":{"second":18,"nanosecond":730000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":91000,"duration":{"second":18,"nanosecond":730000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":57000}}],"watch_group":57000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":57,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":23000}}],"watch_group":23000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":23,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":14000,"duration":{"second":18,"nanosecond":730000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":98000}}],"watch_group":98000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":98,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":56000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":56000,"duration":{"second":18,"nanosecond":730000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":85000,"duration":{"second":18,"nanosecond":730000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":54000}}],"watch_group":54000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":54,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":24000}}],"watch_group":24000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":24,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":36000,"duration":{"second":18,"nanosecond":730000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":87000,"duration":{"second":18,"nanosecond":730000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":59000,"duration":{"second":18,"nanosecond":729000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":25000,"duration":{"second":18,"nanosecond":729000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":43000,"duration":{"second":18,"nanosecond":729000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":55000}}],"watch_group":55000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":55,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":25000}}],"watch_group":25000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":25,"duration":{"second":18,"nanosecond":434000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":100000}}],"watch_group":100000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":100,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":58000,"duration":{"second":18,"nanosecond":434000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":86000,"duration":{"second":18,"nanosecond":434000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":60000}}],"watch_group":60000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":60,"duration":{"second":18,"nanosecond":434000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":26000}}],"watch_group":26000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":26,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":41000,"duration":{"second":18,"nanosecond":432000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":95000}}],"watch_group":95000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":95,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":82000,"duration":{"second":18,"nanosecond":432000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":61000}}],"watch_group":61000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":61,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":27000}}],"watch_group":27000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":27,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":94000}}],"watch_group":94000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":94,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":98000,"duration":{"second":18,"nanosecond":432000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":27000,"duration":{"second":18,"nanosecond":432000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":57000,"duration":{"second":18,"nanosecond":432000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":16000,"duration":{"second":18,"nanosecond":430000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":83000,"duration":{"second":18,"nanosecond":430000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":58000}}],"watch_group":58000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":58,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":28000}}],"watch_group":28000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":28,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":97000}}],"watch_group":97000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":97,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":100000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":59000}}],"watch_group":59000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":59,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":38000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":29000}}],"watch_group":29000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":29,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":96000}}],"watch_group":96000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":96,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":84000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":64000}}],"watch_group":64000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":64,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":30000}}],"watch_group":30000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":30,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":4000}}],"watch_group":4000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":4,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":91000}}],"watch_group":91000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":91,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":7000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":29000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":65000}}],"watch_group":65000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":65,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":31000}}],"watch_group":31000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":31,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":5000}}],"watch_group":5000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":5,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":90000}}],"watch_group":90000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":90,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":18000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":62000}}],"watch_group":62000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":62,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":65000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":32000}}],"watch_group":32000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":32,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":2000}}],"watch_group":2000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":2,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":93000}}],"watch_group":93000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":93,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":64000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":63000}}],"watch_group":63000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":63,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":33000}}],"watch_group":33000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":33,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":3000}}],"watch_group":3000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":3,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":80000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":9000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":92000}}],"watch_group":92000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":92,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":5000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":20000,"duration":{"second":17,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":81000,"duration":{"second":17,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":97000,"duration":{"second":17,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":31000,"duration":{"second":17,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":68000}}],"watch_group":68000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":68,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":11000,"duration":{"second":17,"nanosecond":927000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":34000}}],"watch_group":34000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":34,"duration":{"second":17,"nanosecond":927000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":78000,"duration":{"second":17,"nanosecond":927000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":87000}}],"watch_group":87000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":87,"duration":{"second":17,"nanosecond":927000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":93000,"duration":{"second":17,"nanosecond":927000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":63000,"duration":{"second":17,"nanosecond":927000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":69000}}],"watch_group":69000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":69,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":35000}}],"watch_group":35000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":35,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":1,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":1000}}],"watch_group":1000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":1,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":33000,"duration":{"second":17,"nanosecond":927000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":79000,"duration":{"second":17,"nanosecond":927000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":86000}}],"watch_group":86000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":86,"duration":{"second":17,"nanosecond":927000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":62000,"duration":{"second":17,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":66000}}],"watch_group":66000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":66,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":77000,"duration":{"second":17,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":36000}}],"watch_group":36000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":36,"duration":{"second":17,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":89000}}],"watch_group":89000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":89,"duration":{"second":17,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":22000,"duration":{"second":17,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":95000,"duration":{"second":17,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":67000}}],"watch_group":67000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":67,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":37000}}],"watch_group":37000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":37,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":1000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":1000,"duration":{"second":17,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":88000}}],"watch_group":88000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":88,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":61000,"duration":{"second":17,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":3000,"duration":{"second":17,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":73000}}],"watch_group":73000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":73,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":39000}}],"watch_group":39000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":39,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":13000}}],"watch_group":13000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":13,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":74000,"duration":{"second":17,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":15000,"duration":{"second":17,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":44000,"duration":{"second":17,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":45000,"duration":{"second":17,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":68000,"duration":{"second":17,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":72000}}],"watch_group":72000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":72,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":38000}}],"watch_group":38000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":38,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":75000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":12000}}],"watch_group":12000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":12,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":35000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":24000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":90000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":71000}}],"watch_group":71000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":71,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":41000}}],"watch_group":41000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":41,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":42000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":11000}}],"watch_group":11000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":11,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":92000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":46000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":67000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":70000}}],"watch_group":70000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":70,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":76000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":40000}}],"watch_group":40000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":40,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":13000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":10000}}],"watch_group":10000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":10,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":88000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":47000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":66000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":77000}}],"watch_group":77000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":77,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":43000}}],"watch_group":43000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":43,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":9000}}],"watch_group":9000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":9,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":99000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":26000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":70000,"duration":{"second":17,"nanosecond":431000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":76000}}],"watch_group":76000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":76,"duration":{"second":16,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":42000}}],"watch_group":42000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":42,"duration":{"second":16,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":8000}}],"watch_group":8000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":8,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":37000,"duration":{"second":16,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":49000,"duration":{"second":16,"nanosecond":929000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":71000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":48000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":75000}}],"watch_group":75000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":75,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":45000}}],"watch_group":45000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":45,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":7000}}],"watch_group":7000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":7,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":39000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":73000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":69000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":17000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":28000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":74000}}],"watch_group":74000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":74,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":44000}}],"watch_group":44000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":44,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":6000}}],"watch_group":6000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":6,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":40000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":81000}}],"watch_group":81000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":81,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":47000}}],"watch_group":47000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":47,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":21000}}],"watch_group":21000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":21,"duration":{"second":15,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":8000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":19000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":96000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":80000}}],"watch_group":80000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":80,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":46000}}],"watch_group":46000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":46,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":20000}}],"watch_group":20000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":20,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":52000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":6000,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":79000}}],"watch_group":79000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":79,"duration":{"second":16,"nanosecond":928000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":49000}}],"watch_group":49000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":49,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":19000}}],"watch_group":19000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":19,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":50000,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":72000,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":30000,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":78000}}],"watch_group":78000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":78,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":48000}}],"watch_group":48000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":48,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":18000}}],"watch_group":18000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":18,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":51000,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":85000}}],"watch_group":85000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":85,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":55000,"duration":{"second":16,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":51000}}],"watch_group":51000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":51,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":17000}}],"watch_group":17000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":17,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":21000,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":4000,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":84000}}],"watch_group":84000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":84,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":50000}}],"watch_group":50000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":50,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":16000}}],"watch_group":16000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":16,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":10000,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":54000,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":83000}}],"watch_group":83000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":83,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":32000,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":53000}}],"watch_group":53000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":53,"duration":{"second":15,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":15000}}],"watch_group":15000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":15,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":2000,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":82000}}],"watch_group":82000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":82,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":52000}}],"watch_group":52000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":52,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":14000}}],"watch_group":14000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":14,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":53000,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":12000,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":23000,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":94000,"duration":{"second":15,"nanosecond":926000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:55:59.480Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:02.072763" elapsed="0.012092"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-05-25T01:56:02.089986" level="INFO">Item found from container 303 times.</msg>
<msg time="2026-05-25T01:56:02.090156" level="INFO">${count} = 303</msg>
<var>${count}</var>
<arg>${resp.text}</arg>
<arg>"priority"</arg>
<doc>Returns and logs how many times ``item`` is found from ``container``.</doc>
<status status="PASS" start="2026-05-25T01:56:02.085158" elapsed="0.005027"/>
</kw>
<kw name="Should Be Equal As Integers" owner="BuiltIn">
<msg time="2026-05-25T01:56:02.090977" level="FAIL">303 != 300</msg>
<arg>${count}</arg>
<arg>${flows}</arg>
<doc>Fails if objects are unequal after converting them to integers.</doc>
<status status="FAIL" start="2026-05-25T01:56:02.090519" elapsed="0.000536">303 != 300</status>
</kw>
<arg>${less_flows}</arg>
<doc>Check number of flows in the inventory.</doc>
<status status="FAIL" start="2026-05-25T01:56:02.017790" elapsed="0.073412">303 != 300</status>
</kw>
<kw name="Check Number Of Flows" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:03.135594" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:03.139794" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":49488,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-cou... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:56:03.140156" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_NODES_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:03.093110" elapsed="0.047086"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:03.145127" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":49488,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"75","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.75/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":75}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"74","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.74/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":74}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"73","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.73/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":73}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"72","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.72/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":72}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"89","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.89/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":89}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"88","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.88/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":88}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"87","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.87/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":87}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"86","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.86/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":86}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"85","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.85/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":85}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"83","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.83/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":83}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"19","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.19/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":19}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"18","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.18/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":18}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"17","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.17/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":17}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"16","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.16/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":16}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"15","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.15/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":15}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"14","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.14/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":14}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"2","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.2/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":2}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"#UF$TABLE*0-76","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"7","byte-count":"535","duration":{"second":3,"nanosecond":46000000}},"flags":"SEND_FLOW_REM"},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"99","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.99/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":99}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"98","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.98/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":98}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"96","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.96/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":96}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"95","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.95/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":95}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"94","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.94/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":94}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"28","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.28/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":28}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"27","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.27/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":27}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"8","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.8/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":8}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"6","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.6/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":6}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"5","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.5/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":5}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"4","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.4/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":4}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"3","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.3/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":3}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"24","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.24/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":24}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"23","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.23/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":23}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"22","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.22/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":22}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"21","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.21/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":21}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"20","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.20/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":20}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"39","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.39/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":39}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"38","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.38/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":38}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"37","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.37/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":37}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"36","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.36/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":36}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"35","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.35/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":35}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"34","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.34/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":34}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"33","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.33/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":33}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"32","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.32/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":32}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"31","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.31/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":31}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"30","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.30/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":30}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"49","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.49/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":49}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"48","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.48/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":48}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"47","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.47/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":47}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"46","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.46/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":46}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"45","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.45/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":45}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"44","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.44/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":44}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":51000000}},"flags":""},{"id":"43","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.43/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":43}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":51000000}},"flags":""},{"id":"42","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.42/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":42}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":51000000}},"flags":""},{"id":"41","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.41/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":41}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":51000000}},"flags":""},{"id":"40","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.40/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":40}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":51000000}},"flags":""},{"id":"59","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.59/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":59}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":51000000}},"flags":""},{"id":"58","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.58/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":58}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":51000000}},"flags":""},{"id":"57","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.57/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":57}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":50000000}},"flags":""},{"id":"56","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.56/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":56}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":50000000}},"flags":""},{"id":"55","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.55/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":55}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":50000000}},"flags":""},{"id":"54","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.54/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":54}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":50000000}},"flags":""},{"id":"53","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.53/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":53}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":50000000}},"flags":""},{"id":"52","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.52/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":52}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":50000000}},"flags":""},{"id":"51","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.51/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":51}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":50000000}},"flags":""},{"id":"50","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.50/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":50}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":50000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"18","active-flows":100,"packets-matched":"7"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s3","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:56:02.456Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"d2:3e:6c:b7:77:4e","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":22,"nanosecond":34000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"ea:2e:56:2c:59:09","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"12","received":"12"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":22,"nanosecond":38000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"1e:18:44:08:21:c8","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"12","received":"8"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":22,"nanosecond":38000000},"bytes":{"transmitted":"996","received":"656"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:group":[{"group-id":56,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":56000}}],"watch_group":56000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":56,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":22000}}],"watch_group":22000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":22,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":99000}}],"watch_group":99000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":99,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":34000,"duration":{"second":21,"nanosecond":768000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":89000,"duration":{"second":21,"nanosecond":768000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":60000,"duration":{"second":21,"nanosecond":768000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":91000,"duration":{"second":21,"nanosecond":768000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":57000}}],"watch_group":57000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":57,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":23000}}],"watch_group":23000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":23,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":14000,"duration":{"second":21,"nanosecond":768000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":98000}}],"watch_group":98000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":98,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":56000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":56000,"duration":{"second":21,"nanosecond":768000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":85000,"duration":{"second":21,"nanosecond":768000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":54000}}],"watch_group":54000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":54,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":24000}}],"watch_group":24000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":24,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":36000,"duration":{"second":21,"nanosecond":768000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":87000,"duration":{"second":21,"nanosecond":768000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":59000,"duration":{"second":21,"nanosecond":768000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":25000,"duration":{"second":21,"nanosecond":768000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":43000,"duration":{"second":21,"nanosecond":768000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":55000}}],"watch_group":55000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":55,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":25000}}],"watch_group":25000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":25,"duration":{"second":21,"nanosecond":472000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":100000}}],"watch_group":100000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":100,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":58000,"duration":{"second":21,"nanosecond":472000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":86000,"duration":{"second":21,"nanosecond":472000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":60000}}],"watch_group":60000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":60,"duration":{"second":21,"nanosecond":472000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":26000}}],"watch_group":26000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":26,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":41000,"duration":{"second":21,"nanosecond":472000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":95000}}],"watch_group":95000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":95,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":82000,"duration":{"second":21,"nanosecond":472000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":61000}}],"watch_group":61000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":61,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":27000}}],"watch_group":27000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":27,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":94000}}],"watch_group":94000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":94,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":98000,"duration":{"second":21,"nanosecond":472000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":27000,"duration":{"second":21,"nanosecond":472000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":57000,"duration":{"second":21,"nanosecond":472000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":16000,"duration":{"second":21,"nanosecond":471000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":83000,"duration":{"second":21,"nanosecond":471000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":58000}}],"watch_group":58000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":58,"duration":{"second":20,"nanosecond":968000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":28000}}],"watch_group":28000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":28,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":97000}}],"watch_group":97000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":97,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":100000,"duration":{"second":20,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":59000}}],"watch_group":59000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":59,"duration":{"second":20,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":38000,"duration":{"second":20,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":29000}}],"watch_group":29000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":29,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":96000}}],"watch_group":96000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":96,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":84000,"duration":{"second":20,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":64000}}],"watch_group":64000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":64,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":30000}}],"watch_group":30000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":30,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":4000}}],"watch_group":4000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":4,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":91000}}],"watch_group":91000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":91,"duration":{"second":20,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":7000,"duration":{"second":20,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":29000,"duration":{"second":20,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":65000}}],"watch_group":65000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":65,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":31000}}],"watch_group":31000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":31,"duration":{"second":18,"nanosecond":464000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":5000}}],"watch_group":5000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":5,"duration":{"second":18,"nanosecond":464000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":90000}}],"watch_group":90000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":90,"duration":{"second":18,"nanosecond":464000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":18000,"duration":{"second":20,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":62000}}],"watch_group":62000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":62,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":65000,"duration":{"second":20,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":32000}}],"watch_group":32000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":32,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":2000}}],"watch_group":2000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":2,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":93000}}],"watch_group":93000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":93,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":64000,"duration":{"second":20,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":63000}}],"watch_group":63000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":63,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":33000}}],"watch_group":33000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":33,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":3000}}],"watch_group":3000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":3,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":80000,"duration":{"second":20,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":9000,"duration":{"second":20,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":92000}}],"watch_group":92000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":92,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":5000,"duration":{"second":20,"nanosecond":965000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":20000,"duration":{"second":20,"nanosecond":965000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":81000,"duration":{"second":20,"nanosecond":965000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":97000,"duration":{"second":20,"nanosecond":965000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":31000,"duration":{"second":20,"nanosecond":964000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":68000}}],"watch_group":68000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":68,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":11000,"duration":{"second":20,"nanosecond":963000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":34000}}],"watch_group":34000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":34,"duration":{"second":20,"nanosecond":963000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":78000,"duration":{"second":20,"nanosecond":962000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":87000}}],"watch_group":87000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":87,"duration":{"second":20,"nanosecond":962000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":93000,"duration":{"second":20,"nanosecond":962000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":63000,"duration":{"second":20,"nanosecond":962000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":69000}}],"watch_group":69000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":69,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":35000}}],"watch_group":35000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":35,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":33000,"duration":{"second":20,"nanosecond":962000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":79000,"duration":{"second":20,"nanosecond":962000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":86000}}],"watch_group":86000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":86,"duration":{"second":20,"nanosecond":961000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":62000,"duration":{"second":20,"nanosecond":961000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":66000}}],"watch_group":66000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":66,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":77000,"duration":{"second":20,"nanosecond":961000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":36000}}],"watch_group":36000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":36,"duration":{"second":20,"nanosecond":961000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":89000}}],"watch_group":89000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":89,"duration":{"second":20,"nanosecond":961000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":22000,"duration":{"second":20,"nanosecond":960000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":95000,"duration":{"second":20,"nanosecond":960000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":67000}}],"watch_group":67000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":67,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":37000}}],"watch_group":37000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":37,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":88000}}],"watch_group":88000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":88,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":61000,"duration":{"second":20,"nanosecond":959000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":3000,"duration":{"second":20,"nanosecond":959000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":73000}}],"watch_group":73000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":73,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":39000}}],"watch_group":39000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":39,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":13000}}],"watch_group":13000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":13,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":74000,"duration":{"second":20,"nanosecond":959000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":15000,"duration":{"second":20,"nanosecond":959000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":44000,"duration":{"second":20,"nanosecond":959000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":45000,"duration":{"second":20,"nanosecond":959000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":68000,"duration":{"second":20,"nanosecond":959000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":72000}}],"watch_group":72000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":72,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":38000}}],"watch_group":38000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":38,"duration":{"second":20,"nanosecond":472000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":75000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":12000}}],"watch_group":12000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":12,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":35000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":24000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":90000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":71000}}],"watch_group":71000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":71,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":41000}}],"watch_group":41000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":41,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":42000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":11000}}],"watch_group":11000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":11,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":92000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":46000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":67000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":70000}}],"watch_group":70000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":70,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":76000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":40000}}],"watch_group":40000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":40,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":13000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":10000}}],"watch_group":10000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":10,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":88000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":47000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":66000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":77000}}],"watch_group":77000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":77,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":43000}}],"watch_group":43000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":43,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":9000}}],"watch_group":9000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":9,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":99000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":26000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":70000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":76000}}],"watch_group":76000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":76,"duration":{"second":19,"nanosecond":971000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":42000}}],"watch_group":42000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":42,"duration":{"second":19,"nanosecond":971000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":8000}}],"watch_group":8000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":8,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":37000,"duration":{"second":19,"nanosecond":970000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":49000,"duration":{"second":19,"nanosecond":970000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":71000,"duration":{"second":19,"nanosecond":970000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":48000,"duration":{"second":19,"nanosecond":969000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":75000}}],"watch_group":75000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":75,"duration":{"second":19,"nanosecond":969000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":45000}}],"watch_group":45000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":45,"duration":{"second":19,"nanosecond":969000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":7000}}],"watch_group":7000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":7,"duration":{"second":19,"nanosecond":969000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":39000,"duration":{"second":19,"nanosecond":968000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":73000,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":69000,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":17000,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":28000,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":74000}}],"watch_group":74000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":74,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":44000}}],"watch_group":44000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":44,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":6000}}],"watch_group":6000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":6,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":40000,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":81000}}],"watch_group":81000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":81,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":47000}}],"watch_group":47000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":47,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":21000}}],"watch_group":21000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":21,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":8000,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":19000,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":96000,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":80000}}],"watch_group":80000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":80,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":46000}}],"watch_group":46000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":46,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":20000}}],"watch_group":20000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":20,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":52000,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":6000,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":79000}}],"watch_group":79000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":79,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":49000}}],"watch_group":49000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":49,"duration":{"second":19,"nanosecond":469000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":19000}}],"watch_group":19000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":19,"duration":{"second":19,"nanosecond":469000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":50000,"duration":{"second":19,"nanosecond":469000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":72000,"duration":{"second":19,"nanosecond":469000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":30000,"duration":{"second":19,"nanosecond":469000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":78000}}],"watch_group":78000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":78,"duration":{"second":19,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":48000}}],"watch_group":48000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":48,"duration":{"second":19,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":18000}}],"watch_group":18000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":18,"duration":{"second":19,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":51000,"duration":{"second":19,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":85000}}],"watch_group":85000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":85,"duration":{"second":19,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":55000,"duration":{"second":19,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":51000}}],"watch_group":51000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":51,"duration":{"second":18,"nanosecond":969000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":17000}}],"watch_group":17000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":17,"duration":{"second":18,"nanosecond":969000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":21000,"duration":{"second":18,"nanosecond":969000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":4000,"duration":{"second":18,"nanosecond":969000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":84000}}],"watch_group":84000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":84,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":50000}}],"watch_group":50000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":50,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":16000}}],"watch_group":16000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":16,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":10000,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":54000,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":83000}}],"watch_group":83000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":83,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":32000,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":53000}}],"watch_group":53000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":53,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":15000}}],"watch_group":15000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":15,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":2000,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":82000}}],"watch_group":82000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":82,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":52000}}],"watch_group":52000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":52,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":14000}}],"watch_group":14000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":14,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":53000,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":12000,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":23000,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":94000,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:56:02.499Z"}},{"id":"openflow:1","flow-node-inventory:port-number":49486,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":101000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":101000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":101000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":101000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":101000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":100000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":100000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":100000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":100000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":100000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"75","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.75/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":75}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"74","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.74/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":74}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"73","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.73/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":73}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"72","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.72/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":72}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"89","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.89/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":89}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"88","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.88/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":88}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"87","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.87/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":87}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"86","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.86/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":86}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"85","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.85/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":85}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"83","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.83/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":83}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"19","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.19/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":19}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"18","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.18/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":18}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"17","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.17/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":17}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"16","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.16/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":16}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"15","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.15/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":15}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"14","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.14/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":14}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"2","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.2/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":2}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"99","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.99/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":99}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"98","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.98/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":98}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"96","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.96/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":96}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"95","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.95/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":95}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"94","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.94/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":94}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"#UF$TABLE*0-74","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"7","byte-count":"535","duration":{"second":3,"nanosecond":61000000}},"flags":"SEND_FLOW_REM"},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"28","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.28/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":28}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"27","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.27/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":27}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"8","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.8/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":8}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"6","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.6/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":6}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"5","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.5/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":5}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"4","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.4/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":4}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"3","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.3/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":3}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"24","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.24/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":24}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"23","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.23/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":23}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"22","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.22/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":22}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"21","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.21/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":21}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"20","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.20/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":20}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"39","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.39/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":39}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"38","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.38/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":38}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"37","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.37/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":37}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"36","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.36/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":36}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"35","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.35/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":35}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"34","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.34/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":34}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"33","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.33/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":33}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"32","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.32/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":32}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"31","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.31/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":31}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"30","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.30/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":30}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"49","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.49/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":49}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"48","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.48/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":48}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"47","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.47/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":47}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"46","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.46/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":46}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"45","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.45/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":45}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"44","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.44/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":44}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"43","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.43/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":43}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":60000000}},"flags":""},{"id":"42","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.42/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":42}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":60000000}},"flags":""},{"id":"41","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.41/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":41}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":60000000}},"flags":""},{"id":"40","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.40/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":40}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":60000000}},"flags":""},{"id":"59","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.59/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":59}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":60000000}},"flags":""},{"id":"58","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.58/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":58}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":60000000}},"flags":""},{"id":"57","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.57/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":57}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":60000000}},"flags":""},{"id":"56","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.56/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":56}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":60000000}},"flags":""},{"id":"55","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.55/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":55}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":60000000}},"flags":""},{"id":"54","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.54/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":54}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":60000000}},"flags":""},{"id":"53","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.53/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":53}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":60000000}},"flags":""},{"id":"52","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.52/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":52}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":60000000}},"flags":""},{"id":"51","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.51/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":51}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":60000000}},"flags":""},{"id":"50","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.50/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":50}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":60000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"18","active-flows":100,"packets-matched":"7"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s1","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:56:02.401Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"de:fd:88:3a:0f:fe","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"12","received":"8"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":22,"nanosecond":27000000},"bytes":{"transmitted":"996","received":"656"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ee:44:6a:8a:83:4e","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":22,"nanosecond":16000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"3a:a8:41:44:b3:f9","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"12","received":"12"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":22,"nanosecond":28000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:group":[{"group-id":56,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":56000}}],"watch_group":56000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":56,"duration":{"second":18,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":22000}}],"watch_group":22000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":22,"duration":{"second":18,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":99000}}],"watch_group":99000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":99,"duration":{"second":18,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":34000,"duration":{"second":21,"nanosecond":723000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":89000,"duration":{"second":21,"nanosecond":723000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":60000,"duration":{"second":21,"nanosecond":723000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":91000,"duration":{"second":21,"nanosecond":723000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":57000}}],"watch_group":57000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":57,"duration":{"second":18,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":23000}}],"watch_group":23000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":23,"duration":{"second":18,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":14000,"duration":{"second":21,"nanosecond":723000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":98000}}],"watch_group":98000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":98,"duration":{"second":18,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":56000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":56000,"duration":{"second":21,"nanosecond":722000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":85000,"duration":{"second":21,"nanosecond":721000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":54000}}],"watch_group":54000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":54,"duration":{"second":18,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":24000}}],"watch_group":24000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":24,"duration":{"second":18,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":36000,"duration":{"second":21,"nanosecond":721000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":87000,"duration":{"second":21,"nanosecond":721000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":59000,"duration":{"second":21,"nanosecond":721000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":25000,"duration":{"second":21,"nanosecond":721000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":43000,"duration":{"second":21,"nanosecond":721000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":55000}}],"watch_group":55000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":55,"duration":{"second":18,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":25000}}],"watch_group":25000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":25,"duration":{"second":21,"nanosecond":426000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":100000}}],"watch_group":100000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":100,"duration":{"second":18,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":58000,"duration":{"second":21,"nanosecond":426000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":86000,"duration":{"second":21,"nanosecond":426000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":60000}}],"watch_group":60000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":60,"duration":{"second":21,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":26000}}],"watch_group":26000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":26,"duration":{"second":18,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":41000,"duration":{"second":21,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":95000}}],"watch_group":95000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":95,"duration":{"second":18,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":82000,"duration":{"second":21,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":61000}}],"watch_group":61000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":61,"duration":{"second":18,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":27000}}],"watch_group":27000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":27,"duration":{"second":18,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":94000}}],"watch_group":94000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":94,"duration":{"second":18,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":98000,"duration":{"second":21,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":27000,"duration":{"second":21,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":57000,"duration":{"second":21,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":16000,"duration":{"second":21,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":83000,"duration":{"second":21,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":58000}}],"watch_group":58000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":58,"duration":{"second":20,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":28000}}],"watch_group":28000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":28,"duration":{"second":18,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":97000}}],"watch_group":97000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":97,"duration":{"second":18,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":100000,"duration":{"second":20,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":59000}}],"watch_group":59000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":59,"duration":{"second":20,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":38000,"duration":{"second":20,"nanosecond":915000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":29000}}],"watch_group":29000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":29,"duration":{"second":18,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":96000}}],"watch_group":96000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":96,"duration":{"second":18,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":84000,"duration":{"second":20,"nanosecond":915000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":64000}}],"watch_group":64000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":64,"duration":{"second":18,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":30000}}],"watch_group":30000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":30,"duration":{"second":18,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":4000}}],"watch_group":4000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":4,"duration":{"second":18,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":91000}}],"watch_group":91000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":91,"duration":{"second":20,"nanosecond":915000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":7000,"duration":{"second":20,"nanosecond":915000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":29000,"duration":{"second":20,"nanosecond":915000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":65000}}],"watch_group":65000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":65,"duration":{"second":18,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":31000}}],"watch_group":31000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":31,"duration":{"second":18,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":5000}}],"watch_group":5000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":5,"duration":{"second":18,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":90000}}],"watch_group":90000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":90,"duration":{"second":18,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":18000,"duration":{"second":20,"nanosecond":915000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":62000}}],"watch_group":62000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":62,"duration":{"second":18,"nanosecond":421000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":65000,"duration":{"second":20,"nanosecond":915000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":32000}}],"watch_group":32000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":32,"duration":{"second":18,"nanosecond":421000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":2000}}],"watch_group":2000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":2,"duration":{"second":18,"nanosecond":421000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":93000}}],"watch_group":93000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":93,"duration":{"second":18,"nanosecond":421000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":64000,"duration":{"second":20,"nanosecond":915000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":63000}}],"watch_group":63000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":63,"duration":{"second":18,"nanosecond":421000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":33000}}],"watch_group":33000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":33,"duration":{"second":18,"nanosecond":421000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":3000}}],"watch_group":3000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":3,"duration":{"second":18,"nanosecond":421000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":80000,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":9000,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":92000}}],"watch_group":92000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":92,"duration":{"second":18,"nanosecond":421000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":5000,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":20000,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":81000,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":97000,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":31000,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":68000}}],"watch_group":68000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":68,"duration":{"second":18,"nanosecond":421000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":11000,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":34000}}],"watch_group":34000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":34,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":78000,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":87000}}],"watch_group":87000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":87,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":93000,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":63000,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":69000}}],"watch_group":69000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":69,"duration":{"second":18,"nanosecond":421000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":35000}}],"watch_group":35000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":35,"duration":{"second":18,"nanosecond":420000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":33000,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":79000,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":86000}}],"watch_group":86000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":86,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":62000,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":66000}}],"watch_group":66000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":66,"duration":{"second":18,"nanosecond":420000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":77000,"duration":{"second":20,"nanosecond":913000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":36000}}],"watch_group":36000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":36,"duration":{"second":20,"nanosecond":913000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":89000}}],"watch_group":89000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":89,"duration":{"second":20,"nanosecond":913000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":22000,"duration":{"second":20,"nanosecond":913000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":95000,"duration":{"second":20,"nanosecond":912000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":67000}}],"watch_group":67000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":67,"duration":{"second":18,"nanosecond":420000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":37000}}],"watch_group":37000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":37,"duration":{"second":18,"nanosecond":420000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":88000}}],"watch_group":88000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":88,"duration":{"second":18,"nanosecond":420000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":61000,"duration":{"second":20,"nanosecond":912000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":3000,"duration":{"second":20,"nanosecond":912000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":73000}}],"watch_group":73000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":73,"duration":{"second":18,"nanosecond":420000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":39000}}],"watch_group":39000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":39,"duration":{"second":18,"nanosecond":420000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":13000}}],"watch_group":13000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":13,"duration":{"second":18,"nanosecond":420000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":74000,"duration":{"second":20,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":15000,"duration":{"second":20,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":44000,"duration":{"second":20,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":45000,"duration":{"second":20,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":68000,"duration":{"second":20,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":72000}}],"watch_group":72000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":72,"duration":{"second":18,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":38000}}],"watch_group":38000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":38,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":75000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":12000}}],"watch_group":12000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":12,"duration":{"second":18,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":35000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":24000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":90000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":71000}}],"watch_group":71000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":71,"duration":{"second":18,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":41000}}],"watch_group":41000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":41,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":42000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":11000}}],"watch_group":11000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":11,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":92000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":46000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":67000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":70000}}],"watch_group":70000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":70,"duration":{"second":18,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":76000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":40000}}],"watch_group":40000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":40,"duration":{"second":18,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":13000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":10000}}],"watch_group":10000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":10,"duration":{"second":18,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":88000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":47000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":66000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":77000}}],"watch_group":77000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":77,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":43000}}],"watch_group":43000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":43,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":9000}}],"watch_group":9000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":9,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":99000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":26000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":70000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":76000}}],"watch_group":76000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":76,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":42000}}],"watch_group":42000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":42,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":8000}}],"watch_group":8000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":8,"duration":{"second":18,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":37000,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":49000,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":71000,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":48000,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":75000}}],"watch_group":75000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":75,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":45000}}],"watch_group":45000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":45,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":7000}}],"watch_group":7000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":7,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":39000,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":73000,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":69000,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":17000,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":28000,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":74000}}],"watch_group":74000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":74,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":44000}}],"watch_group":44000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":44,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":6000}}],"watch_group":6000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":6,"duration":{"second":18,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":40000,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":81000}}],"watch_group":81000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":81,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":47000}}],"watch_group":47000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":47,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":21000}}],"watch_group":21000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":21,"duration":{"second":18,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":8000,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":19000,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":96000,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":80000}}],"watch_group":80000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":80,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":46000}}],"watch_group":46000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":46,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":20000}}],"watch_group":20000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":20,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":52000,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":6000,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":79000}}],"watch_group":79000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":79,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":49000}}],"watch_group":49000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":49,"duration":{"second":19,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":19000}}],"watch_group":19000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":19,"duration":{"second":19,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":50000,"duration":{"second":19,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":72000,"duration":{"second":19,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":30000,"duration":{"second":19,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":78000}}],"watch_group":78000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":78,"duration":{"second":19,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":48000}}],"watch_group":48000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":48,"duration":{"second":19,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":18000}}],"watch_group":18000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":18,"duration":{"second":19,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":51000,"duration":{"second":19,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":85000}}],"watch_group":85000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":85,"duration":{"second":19,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":55000,"duration":{"second":19,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":51000}}],"watch_group":51000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":51,"duration":{"second":18,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":17000}}],"watch_group":17000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":17,"duration":{"second":18,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":21000,"duration":{"second":18,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":4000,"duration":{"second":18,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":84000}}],"watch_group":84000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":84,"duration":{"second":18,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":50000}}],"watch_group":50000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":50,"duration":{"second":18,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":16000}}],"watch_group":16000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":16,"duration":{"second":18,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":10000,"duration":{"second":18,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":54000,"duration":{"second":18,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":83000}}],"watch_group":83000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":83,"duration":{"second":18,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":32000,"duration":{"second":18,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":53000}}],"watch_group":53000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":53,"duration":{"second":18,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":15000}}],"watch_group":15000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":15,"duration":{"second":18,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":2000,"duration":{"second":18,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":82000}}],"watch_group":82000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":82,"duration":{"second":18,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":52000}}],"watch_group":52000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":52,"duration":{"second":18,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":14000}}],"watch_group":14000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":14,"duration":{"second":18,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":53000,"duration":{"second":18,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":12000,"duration":{"second":18,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":23000,"duration":{"second":18,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":94000,"duration":{"second":18,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:56:02.477Z"}},{"id":"openflow:2","flow-node-inventory:port-number":49496,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"75","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.75/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":75}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"74","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.74/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":74}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"73","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.73/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":73}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":87000000}},"flags":""},{"id":"72","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.72/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":72}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":87000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":87000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":87000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":87000000}},"flags":""},{"id":"89","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.89/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":89}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":87000000}},"flags":""},{"id":"88","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.88/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":88}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":87000000}},"flags":""},{"id":"87","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.87/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":87}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":87000000}},"flags":""},{"id":"86","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.86/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":86}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":56000000}},"flags":""},{"id":"85","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.85/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":85}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":56000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":56000000}},"flags":""},{"id":"83","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.83/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":83}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":56000000}},"flags":""},{"id":"19","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.19/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":19}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":55000000}},"flags":""},{"id":"18","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.18/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":18}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":55000000}},"flags":""},{"id":"17","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.17/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":17}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":55000000}},"flags":""},{"id":"16","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.16/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":16}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":55000000}},"flags":""},{"id":"15","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.15/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":15}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":55000000}},"flags":""},{"id":"14","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.14/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":14}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":55000000}},"flags":""},{"id":"2","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.2/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":2}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":55000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":55000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":55000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":55000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"#UF$TABLE*0-75","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"14","byte-count":"1100","duration":{"second":3,"nanosecond":55000000}},"flags":"SEND_FLOW_REM"},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"99","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.99/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":99}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"98","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.98/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":98}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":45000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":45000000}},"flags":""},{"id":"96","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.96/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":96}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":45000000}},"flags":""},{"id":"95","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.95/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":95}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":45000000}},"flags":""},{"id":"94","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.94/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":94}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":45000000}},"flags":""},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":45000000}},"flags":""},{"id":"28","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.28/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":28}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":45000000}},"flags":""},{"id":"27","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.27/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":27}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"8","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.8/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":8}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"6","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.6/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":6}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"5","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.5/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":5}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"4","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.4/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":4}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"3","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.3/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":3}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"24","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.24/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":24}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"23","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.23/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":23}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"22","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.22/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":22}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"21","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.21/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":21}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"20","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.20/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":20}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"39","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.39/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":39}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"38","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.38/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":38}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"37","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.37/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":37}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"36","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.36/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":36}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"35","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.35/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":35}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"34","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.34/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":34}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"33","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.33/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":33}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"32","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.32/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":32}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"31","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.31/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":31}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"30","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.30/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":30}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"49","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.49/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":49}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"48","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.48/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":48}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"47","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.47/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":47}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"46","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.46/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":46}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"45","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.45/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":45}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"44","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.44/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":44}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"43","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.43/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":43}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"42","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.42/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":42}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"41","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.41/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":41}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":43000000}},"flags":""},{"id":"40","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.40/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":40}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":43000000}},"flags":""},{"id":"59","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.59/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":59}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":43000000}},"flags":""},{"id":"58","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.58/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":58}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":43000000}},"flags":""},{"id":"57","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.57/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":57}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":43000000}},"flags":""},{"id":"56","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.56/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":56}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":43000000}},"flags":""},{"id":"55","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.55/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":55}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":43000000}},"flags":""},{"id":"54","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.54/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":54}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":43000000}},"flags":""},{"id":"53","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.53/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":53}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":43000000}},"flags":""},{"id":"52","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.52/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":52}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":43000000}},"flags":""},{"id":"51","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.51/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":51}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":43000000}},"flags":""},{"id":"50","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.50/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":50}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":43000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"28","active-flows":100,"packets-matched":"14"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s2","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:56:02.409Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"96:6d:7e:e3:20:cb","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"12","received":"12"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":22,"nanosecond":16000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"aa:85:98:60:af:45","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":22,"nanosecond":12000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"b2:63:e2:1f:6f:f5","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"12","received":"12"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":22,"nanosecond":16000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"6e:ec:a4:2a:50:8d","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"12","received":"8"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":22,"nanosecond":16000000},"bytes":{"transmitted":"996","received":"656"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:group":[{"group-id":56,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":56000}}],"watch_group":56000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":56,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":22000}}],"watch_group":22000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":22,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":99000}}],"watch_group":99000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":99,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":34000,"duration":{"second":21,"nanosecond":724000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":89000,"duration":{"second":21,"nanosecond":724000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":60000,"duration":{"second":21,"nanosecond":724000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":91000,"duration":{"second":21,"nanosecond":724000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":57000}}],"watch_group":57000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":57,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":23000}}],"watch_group":23000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":23,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":14000,"duration":{"second":21,"nanosecond":724000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":98000}}],"watch_group":98000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":98,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":56000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":56000,"duration":{"second":21,"nanosecond":724000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":85000,"duration":{"second":21,"nanosecond":724000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":54000}}],"watch_group":54000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":54,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":24000}}],"watch_group":24000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":24,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":36000,"duration":{"second":21,"nanosecond":724000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":87000,"duration":{"second":21,"nanosecond":724000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":59000,"duration":{"second":21,"nanosecond":723000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":25000,"duration":{"second":21,"nanosecond":723000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":43000,"duration":{"second":21,"nanosecond":723000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":55000}}],"watch_group":55000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":55,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":25000}}],"watch_group":25000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":25,"duration":{"second":21,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":100000}}],"watch_group":100000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":100,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":58000,"duration":{"second":21,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":86000,"duration":{"second":21,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":60000}}],"watch_group":60000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":60,"duration":{"second":21,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":26000}}],"watch_group":26000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":26,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":41000,"duration":{"second":21,"nanosecond":426000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":95000}}],"watch_group":95000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":95,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":82000,"duration":{"second":21,"nanosecond":426000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":61000}}],"watch_group":61000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":61,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":27000}}],"watch_group":27000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":27,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":94000}}],"watch_group":94000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":94,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":98000,"duration":{"second":21,"nanosecond":426000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":27000,"duration":{"second":21,"nanosecond":426000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":57000,"duration":{"second":21,"nanosecond":426000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":16000,"duration":{"second":21,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":83000,"duration":{"second":21,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":58000}}],"watch_group":58000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":58,"duration":{"second":20,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":28000}}],"watch_group":28000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":28,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":97000}}],"watch_group":97000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":97,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":100000,"duration":{"second":20,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":59000}}],"watch_group":59000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":59,"duration":{"second":20,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":38000,"duration":{"second":20,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":29000}}],"watch_group":29000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":29,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":96000}}],"watch_group":96000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":96,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":84000,"duration":{"second":20,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":64000}}],"watch_group":64000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":64,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":30000}}],"watch_group":30000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":30,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":4000}}],"watch_group":4000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":4,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":91000}}],"watch_group":91000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":91,"duration":{"second":20,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":7000,"duration":{"second":20,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":29000,"duration":{"second":20,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":65000}}],"watch_group":65000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":65,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":31000}}],"watch_group":31000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":31,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":5000}}],"watch_group":5000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":5,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":90000}}],"watch_group":90000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":90,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":18000,"duration":{"second":20,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":62000}}],"watch_group":62000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":62,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":65000,"duration":{"second":20,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":32000}}],"watch_group":32000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":32,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":2000}}],"watch_group":2000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":2,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":93000}}],"watch_group":93000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":93,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":64000,"duration":{"second":20,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":63000}}],"watch_group":63000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":63,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":33000}}],"watch_group":33000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":33,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":3000}}],"watch_group":3000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":3,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":80000,"duration":{"second":20,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":9000,"duration":{"second":20,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":92000}}],"watch_group":92000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":92,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":5000,"duration":{"second":20,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":20000,"duration":{"second":20,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":81000,"duration":{"second":20,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":97000,"duration":{"second":20,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":31000,"duration":{"second":20,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":68000}}],"watch_group":68000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":68,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":11000,"duration":{"second":20,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":34000}}],"watch_group":34000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":34,"duration":{"second":20,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":78000,"duration":{"second":20,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":87000}}],"watch_group":87000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":87,"duration":{"second":20,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":93000,"duration":{"second":20,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":63000,"duration":{"second":20,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":69000}}],"watch_group":69000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":69,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":35000}}],"watch_group":35000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":35,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":33000,"duration":{"second":20,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":79000,"duration":{"second":20,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":86000}}],"watch_group":86000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":86,"duration":{"second":20,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":62000,"duration":{"second":20,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":66000}}],"watch_group":66000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":66,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":77000,"duration":{"second":20,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":36000}}],"watch_group":36000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":36,"duration":{"second":20,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":89000}}],"watch_group":89000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":89,"duration":{"second":20,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":22000,"duration":{"second":20,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":95000,"duration":{"second":20,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":67000}}],"watch_group":67000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":67,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":37000}}],"watch_group":37000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":37,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":88000}}],"watch_group":88000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":88,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":61000,"duration":{"second":20,"nanosecond":919000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":3000,"duration":{"second":20,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":73000}}],"watch_group":73000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":73,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":39000}}],"watch_group":39000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":39,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":13000}}],"watch_group":13000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":13,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":74000,"duration":{"second":20,"nanosecond":915000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":15000,"duration":{"second":20,"nanosecond":915000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":44000,"duration":{"second":20,"nanosecond":915000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":45000,"duration":{"second":20,"nanosecond":915000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":68000,"duration":{"second":20,"nanosecond":915000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":72000}}],"watch_group":72000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":72,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":38000}}],"watch_group":38000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":38,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":75000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":12000}}],"watch_group":12000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":12,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":35000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":24000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":90000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":71000}}],"watch_group":71000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":71,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":41000}}],"watch_group":41000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":41,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":42000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":11000}}],"watch_group":11000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":11,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":92000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":46000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":67000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":70000}}],"watch_group":70000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":70,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":76000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":40000}}],"watch_group":40000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":40,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":13000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":10000}}],"watch_group":10000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":10,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":88000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":47000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":66000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":77000}}],"watch_group":77000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":77,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":43000}}],"watch_group":43000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":43,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":9000}}],"watch_group":9000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":9,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":99000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":26000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":70000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":76000}}],"watch_group":76000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":76,"duration":{"second":19,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":42000}}],"watch_group":42000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":42,"duration":{"second":19,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":8000}}],"watch_group":8000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":8,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":37000,"duration":{"second":19,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":49000,"duration":{"second":19,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":71000,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":48000,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":75000}}],"watch_group":75000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":75,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":45000}}],"watch_group":45000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":45,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":7000}}],"watch_group":7000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":7,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":39000,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":73000,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":69000,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":17000,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":28000,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":74000}}],"watch_group":74000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":74,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":44000}}],"watch_group":44000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":44,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":6000}}],"watch_group":6000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":6,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":40000,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":81000}}],"watch_group":81000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":81,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":47000}}],"watch_group":47000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":47,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":21000}}],"watch_group":21000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":21,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":8000,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":19000,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":96000,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":80000}}],"watch_group":80000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":80,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":46000}}],"watch_group":46000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":46,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":20000}}],"watch_group":20000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":20,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":52000,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":6000,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":79000}}],"watch_group":79000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":79,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":49000}}],"watch_group":49000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":49,"duration":{"second":19,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":19000}}],"watch_group":19000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":19,"duration":{"second":19,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":50000,"duration":{"second":19,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":72000,"duration":{"second":19,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":30000,"duration":{"second":19,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":78000}}],"watch_group":78000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":78,"duration":{"second":19,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":48000}}],"watch_group":48000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":48,"duration":{"second":19,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":18000}}],"watch_group":18000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":18,"duration":{"second":19,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":51000,"duration":{"second":19,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":85000}}],"watch_group":85000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":85,"duration":{"second":19,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":55000,"duration":{"second":19,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":51000}}],"watch_group":51000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":51,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":17000}}],"watch_group":17000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":17,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":21000,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":4000,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":84000}}],"watch_group":84000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":84,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":50000}}],"watch_group":50000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":50,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":16000}}],"watch_group":16000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":16,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":10000,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":54000,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":83000}}],"watch_group":83000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":83,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":32000,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":53000}}],"watch_group":53000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":53,"duration":{"second":18,"nanosecond":408000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":15000}}],"watch_group":15000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":15,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":2000,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":82000}}],"watch_group":82000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":82,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":52000}}],"watch_group":52000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":52,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":14000}}],"watch_group":14000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":14,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":53000,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":12000,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":23000,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":94000,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:56:02.480Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:03.140545" elapsed="0.010501"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-05-25T01:56:03.154391" level="INFO">Item found from container 300 times.</msg>
<msg time="2026-05-25T01:56:03.154475" level="INFO">${count} = 300</msg>
<var>${count}</var>
<arg>${resp.text}</arg>
<arg>"priority"</arg>
<doc>Returns and logs how many times ``item`` is found from ``container``.</doc>
<status status="PASS" start="2026-05-25T01:56:03.151346" elapsed="0.003155"/>
</kw>
<kw name="Should Be Equal As Integers" owner="BuiltIn">
<arg>${count}</arg>
<arg>${flows}</arg>
<doc>Fails if objects are unequal after converting them to integers.</doc>
<status status="PASS" start="2026-05-25T01:56:03.154702" elapsed="0.000331"/>
</kw>
<arg>${less_flows}</arg>
<doc>Check number of flows in the inventory.</doc>
<status status="PASS" start="2026-05-25T01:56:03.092177" elapsed="0.062940"/>
</kw>
<arg>30s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Number Of Flows</arg>
<arg>${less_flows}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:55:59.884377" elapsed="3.270790"/>
</kw>
<doc>Check Flows after mininet starts.</doc>
<status status="PASS" start="2026-05-25T01:55:59.883553" elapsed="3.271740"/>
</test>
<test id="s1-s5-s1-t15" name="Check Groups In Operational DS After Mininet Reconnects" line="111">
<kw name="Check Number Of Groups" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:03.195680" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:03.197152" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":49488,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-cou... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:56:03.197630" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_NODES_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:03.156410" elapsed="0.041329"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:03.204402" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":49488,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"75","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.75/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":75}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"74","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.74/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":74}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"73","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.73/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":73}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"72","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.72/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":72}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"89","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.89/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":89}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"88","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.88/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":88}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"87","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.87/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":87}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"86","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.86/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":86}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"85","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.85/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":85}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"83","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.83/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":83}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"19","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.19/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":19}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"18","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.18/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":18}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"17","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.17/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":17}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"16","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.16/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":16}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"15","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.15/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":15}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"14","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.14/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":14}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"2","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.2/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":2}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"#UF$TABLE*0-76","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"7","byte-count":"535","duration":{"second":3,"nanosecond":46000000}},"flags":"SEND_FLOW_REM"},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"99","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.99/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":99}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":58000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"98","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.98/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":98}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"96","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.96/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":96}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"95","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.95/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":95}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"94","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.94/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":94}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"28","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.28/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":28}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"27","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.27/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":27}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"8","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.8/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":8}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"6","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.6/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":6}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"5","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.5/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":5}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"4","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.4/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":4}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"3","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.3/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":3}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"24","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.24/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":24}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":57000000}},"flags":""},{"id":"23","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.23/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":23}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"22","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.22/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":22}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"21","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.21/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":21}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"20","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.20/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":20}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"39","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.39/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":39}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"38","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.38/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":38}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"37","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.37/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":37}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"36","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.36/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":36}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"35","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.35/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":35}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"34","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.34/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":34}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"33","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.33/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":33}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"32","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.32/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":32}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"31","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.31/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":31}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"30","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.30/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":30}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"49","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.49/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":49}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"48","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.48/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":48}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"47","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.47/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":47}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"46","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.46/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":46}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"45","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.45/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":45}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"44","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.44/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":44}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":51000000}},"flags":""},{"id":"43","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.43/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":43}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":51000000}},"flags":""},{"id":"42","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.42/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":42}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":51000000}},"flags":""},{"id":"41","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.41/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":41}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":51000000}},"flags":""},{"id":"40","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.40/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":40}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":51000000}},"flags":""},{"id":"59","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.59/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":59}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":51000000}},"flags":""},{"id":"58","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.58/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":58}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":51000000}},"flags":""},{"id":"57","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.57/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":57}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":50000000}},"flags":""},{"id":"56","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.56/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":56}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":50000000}},"flags":""},{"id":"55","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.55/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":55}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":50000000}},"flags":""},{"id":"54","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.54/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":54}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":50000000}},"flags":""},{"id":"53","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.53/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":53}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":50000000}},"flags":""},{"id":"52","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.52/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":52}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":50000000}},"flags":""},{"id":"51","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.51/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":51}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":50000000}},"flags":""},{"id":"50","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.50/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":50}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":50000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"18","active-flows":100,"packets-matched":"7"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s3","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:56:02.456Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"d2:3e:6c:b7:77:4e","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":22,"nanosecond":34000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"ea:2e:56:2c:59:09","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"12","received":"12"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":22,"nanosecond":38000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"1e:18:44:08:21:c8","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"12","received":"8"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":22,"nanosecond":38000000},"bytes":{"transmitted":"996","received":"656"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:group":[{"group-id":56,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":56000}}],"watch_group":56000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":56,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":22000}}],"watch_group":22000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":22,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":99000}}],"watch_group":99000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":99,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":34000,"duration":{"second":21,"nanosecond":768000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":89000,"duration":{"second":21,"nanosecond":768000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":60000,"duration":{"second":21,"nanosecond":768000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":91000,"duration":{"second":21,"nanosecond":768000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":57000}}],"watch_group":57000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":57,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":23000}}],"watch_group":23000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":23,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":14000,"duration":{"second":21,"nanosecond":768000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":98000}}],"watch_group":98000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":98,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":56000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":56000,"duration":{"second":21,"nanosecond":768000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":85000,"duration":{"second":21,"nanosecond":768000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":54000}}],"watch_group":54000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":54,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":24000}}],"watch_group":24000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":24,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":36000,"duration":{"second":21,"nanosecond":768000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":87000,"duration":{"second":21,"nanosecond":768000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":59000,"duration":{"second":21,"nanosecond":768000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":25000,"duration":{"second":21,"nanosecond":768000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":43000,"duration":{"second":21,"nanosecond":768000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":55000}}],"watch_group":55000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":55,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":25000}}],"watch_group":25000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":25,"duration":{"second":21,"nanosecond":472000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":100000}}],"watch_group":100000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":100,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":58000,"duration":{"second":21,"nanosecond":472000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":86000,"duration":{"second":21,"nanosecond":472000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":60000}}],"watch_group":60000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":60,"duration":{"second":21,"nanosecond":472000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":26000}}],"watch_group":26000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":26,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":41000,"duration":{"second":21,"nanosecond":472000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":95000}}],"watch_group":95000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":95,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":82000,"duration":{"second":21,"nanosecond":472000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":61000}}],"watch_group":61000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":61,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":27000}}],"watch_group":27000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":27,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":94000}}],"watch_group":94000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":94,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":98000,"duration":{"second":21,"nanosecond":472000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":27000,"duration":{"second":21,"nanosecond":472000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":57000,"duration":{"second":21,"nanosecond":472000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":16000,"duration":{"second":21,"nanosecond":471000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":83000,"duration":{"second":21,"nanosecond":471000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":58000}}],"watch_group":58000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":58,"duration":{"second":20,"nanosecond":968000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":28000}}],"watch_group":28000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":28,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":97000}}],"watch_group":97000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":97,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":100000,"duration":{"second":20,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":59000}}],"watch_group":59000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":59,"duration":{"second":20,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":38000,"duration":{"second":20,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":29000}}],"watch_group":29000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":29,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":96000}}],"watch_group":96000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":96,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":84000,"duration":{"second":20,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":64000}}],"watch_group":64000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":64,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":30000}}],"watch_group":30000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":30,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":4000}}],"watch_group":4000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":4,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":91000}}],"watch_group":91000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":91,"duration":{"second":20,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":7000,"duration":{"second":20,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":29000,"duration":{"second":20,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":65000}}],"watch_group":65000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":65,"duration":{"second":18,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":31000}}],"watch_group":31000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":31,"duration":{"second":18,"nanosecond":464000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":5000}}],"watch_group":5000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":5,"duration":{"second":18,"nanosecond":464000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":90000}}],"watch_group":90000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":90,"duration":{"second":18,"nanosecond":464000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":18000,"duration":{"second":20,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":62000}}],"watch_group":62000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":62,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":65000,"duration":{"second":20,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":32000}}],"watch_group":32000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":32,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":2000}}],"watch_group":2000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":2,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":93000}}],"watch_group":93000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":93,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":64000,"duration":{"second":20,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":63000}}],"watch_group":63000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":63,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":33000}}],"watch_group":33000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":33,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":3000}}],"watch_group":3000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":3,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":80000,"duration":{"second":20,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":9000,"duration":{"second":20,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":92000}}],"watch_group":92000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":92,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":5000,"duration":{"second":20,"nanosecond":965000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":20000,"duration":{"second":20,"nanosecond":965000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":81000,"duration":{"second":20,"nanosecond":965000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":97000,"duration":{"second":20,"nanosecond":965000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":31000,"duration":{"second":20,"nanosecond":964000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":68000}}],"watch_group":68000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":68,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":11000,"duration":{"second":20,"nanosecond":963000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":34000}}],"watch_group":34000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":34,"duration":{"second":20,"nanosecond":963000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":78000,"duration":{"second":20,"nanosecond":962000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":87000}}],"watch_group":87000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":87,"duration":{"second":20,"nanosecond":962000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":93000,"duration":{"second":20,"nanosecond":962000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":63000,"duration":{"second":20,"nanosecond":962000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":69000}}],"watch_group":69000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":69,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":35000}}],"watch_group":35000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":35,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":33000,"duration":{"second":20,"nanosecond":962000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":79000,"duration":{"second":20,"nanosecond":962000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":86000}}],"watch_group":86000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":86,"duration":{"second":20,"nanosecond":961000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":62000,"duration":{"second":20,"nanosecond":961000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":66000}}],"watch_group":66000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":66,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":77000,"duration":{"second":20,"nanosecond":961000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":36000}}],"watch_group":36000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":36,"duration":{"second":20,"nanosecond":961000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":89000}}],"watch_group":89000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":89,"duration":{"second":20,"nanosecond":961000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":22000,"duration":{"second":20,"nanosecond":960000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":95000,"duration":{"second":20,"nanosecond":960000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":67000}}],"watch_group":67000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":67,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":37000}}],"watch_group":37000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":37,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":88000}}],"watch_group":88000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":88,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":61000,"duration":{"second":20,"nanosecond":959000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":3000,"duration":{"second":20,"nanosecond":959000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":73000}}],"watch_group":73000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":73,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":39000}}],"watch_group":39000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":39,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":13000}}],"watch_group":13000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":13,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":74000,"duration":{"second":20,"nanosecond":959000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":15000,"duration":{"second":20,"nanosecond":959000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":44000,"duration":{"second":20,"nanosecond":959000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":45000,"duration":{"second":20,"nanosecond":959000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":68000,"duration":{"second":20,"nanosecond":959000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":72000}}],"watch_group":72000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":72,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":38000}}],"watch_group":38000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":38,"duration":{"second":20,"nanosecond":472000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":75000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":12000}}],"watch_group":12000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":12,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":35000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":24000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":90000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":71000}}],"watch_group":71000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":71,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":41000}}],"watch_group":41000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":41,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":42000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":11000}}],"watch_group":11000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":11,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":92000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":46000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":67000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":70000}}],"watch_group":70000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":70,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":76000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":40000}}],"watch_group":40000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":40,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":13000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":10000}}],"watch_group":10000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":10,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":88000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":47000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":66000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":77000}}],"watch_group":77000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":77,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":43000}}],"watch_group":43000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":43,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":9000}}],"watch_group":9000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":9,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":99000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":26000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":70000,"duration":{"second":20,"nanosecond":470000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":76000}}],"watch_group":76000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":76,"duration":{"second":19,"nanosecond":971000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":42000}}],"watch_group":42000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":42,"duration":{"second":19,"nanosecond":971000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":8000}}],"watch_group":8000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":8,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":37000,"duration":{"second":19,"nanosecond":970000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":49000,"duration":{"second":19,"nanosecond":970000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":71000,"duration":{"second":19,"nanosecond":970000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":48000,"duration":{"second":19,"nanosecond":969000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":75000}}],"watch_group":75000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":75,"duration":{"second":19,"nanosecond":969000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":45000}}],"watch_group":45000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":45,"duration":{"second":19,"nanosecond":969000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":7000}}],"watch_group":7000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":7,"duration":{"second":19,"nanosecond":969000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":39000,"duration":{"second":19,"nanosecond":968000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":73000,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":69000,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":17000,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":28000,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":74000}}],"watch_group":74000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":74,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":44000}}],"watch_group":44000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":44,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":6000}}],"watch_group":6000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":6,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":40000,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":81000}}],"watch_group":81000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":81,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":47000}}],"watch_group":47000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":47,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":21000}}],"watch_group":21000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":21,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":8000,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":19000,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":96000,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":80000}}],"watch_group":80000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":80,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":46000}}],"watch_group":46000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":46,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":20000}}],"watch_group":20000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":20,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":52000,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":6000,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":79000}}],"watch_group":79000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":79,"duration":{"second":19,"nanosecond":967000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":49000}}],"watch_group":49000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":49,"duration":{"second":19,"nanosecond":469000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":19000}}],"watch_group":19000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":19,"duration":{"second":19,"nanosecond":469000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":50000,"duration":{"second":19,"nanosecond":469000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":72000,"duration":{"second":19,"nanosecond":469000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":30000,"duration":{"second":19,"nanosecond":469000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":78000}}],"watch_group":78000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":78,"duration":{"second":19,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":48000}}],"watch_group":48000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":48,"duration":{"second":19,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":18000}}],"watch_group":18000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":18,"duration":{"second":19,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":51000,"duration":{"second":19,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":85000}}],"watch_group":85000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":85,"duration":{"second":19,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":55000,"duration":{"second":19,"nanosecond":468000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":51000}}],"watch_group":51000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":51,"duration":{"second":18,"nanosecond":969000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":17000}}],"watch_group":17000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":17,"duration":{"second":18,"nanosecond":969000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":21000,"duration":{"second":18,"nanosecond":969000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":4000,"duration":{"second":18,"nanosecond":969000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":84000}}],"watch_group":84000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":84,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":50000}}],"watch_group":50000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":50,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":16000}}],"watch_group":16000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":16,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":10000,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":54000,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":83000}}],"watch_group":83000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":83,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":32000,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":53000}}],"watch_group":53000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":53,"duration":{"second":18,"nanosecond":459000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":15000}}],"watch_group":15000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":15,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":2000,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":82000}}],"watch_group":82000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":82,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":52000}}],"watch_group":52000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":52,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":14000}}],"watch_group":14000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":14,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":53000,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":12000,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":23000,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":94000,"duration":{"second":18,"nanosecond":966000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:56:02.499Z"}},{"id":"openflow:1","flow-node-inventory:port-number":49486,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":101000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":101000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":101000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":101000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":101000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":100000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":100000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":100000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":100000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":100000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"75","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.75/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":75}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"74","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.74/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":74}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"73","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.73/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":73}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"72","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.72/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":72}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"89","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.89/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":89}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"88","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.88/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":88}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"87","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.87/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":87}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"86","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.86/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":86}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"85","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.85/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":85}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"83","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.83/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":83}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"19","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.19/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":19}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"18","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.18/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":18}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"17","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.17/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":17}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"16","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.16/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":16}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"15","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.15/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":15}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"14","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.14/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":14}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"2","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.2/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":2}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":81000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"99","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.99/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":99}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"98","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.98/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":98}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"96","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.96/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":96}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"95","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.95/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":95}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"94","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.94/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":94}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"#UF$TABLE*0-74","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"7","byte-count":"535","duration":{"second":3,"nanosecond":61000000}},"flags":"SEND_FLOW_REM"},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"28","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.28/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":28}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"27","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.27/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":27}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"8","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.8/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":8}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"6","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.6/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":6}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"5","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.5/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":5}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"4","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.4/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":4}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"3","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.3/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":3}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"24","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.24/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":24}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"23","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.23/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":23}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"22","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.22/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":22}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"21","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.21/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":21}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"20","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.20/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":20}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"39","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.39/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":39}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"38","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.38/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":38}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"37","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.37/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":37}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"36","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.36/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":36}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"35","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.35/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":35}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"34","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.34/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":34}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"33","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.33/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":33}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"32","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.32/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":32}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"31","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.31/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":31}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"30","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.30/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":30}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"49","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.49/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":49}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"48","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.48/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":48}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"47","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.47/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":47}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"46","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.46/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":46}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"45","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.45/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":45}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"44","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.44/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":44}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":61000000}},"flags":""},{"id":"43","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.43/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":43}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":60000000}},"flags":""},{"id":"42","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.42/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":42}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":60000000}},"flags":""},{"id":"41","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.41/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":41}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":60000000}},"flags":""},{"id":"40","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.40/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":40}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":60000000}},"flags":""},{"id":"59","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.59/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":59}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":60000000}},"flags":""},{"id":"58","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.58/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":58}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":60000000}},"flags":""},{"id":"57","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.57/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":57}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":60000000}},"flags":""},{"id":"56","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.56/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":56}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":60000000}},"flags":""},{"id":"55","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.55/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":55}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":60000000}},"flags":""},{"id":"54","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.54/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":54}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":60000000}},"flags":""},{"id":"53","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.53/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":53}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":60000000}},"flags":""},{"id":"52","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.52/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":52}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":60000000}},"flags":""},{"id":"51","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.51/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":51}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":60000000}},"flags":""},{"id":"50","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.50/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":50}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":60000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"18","active-flows":100,"packets-matched":"7"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s1","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:56:02.401Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"de:fd:88:3a:0f:fe","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"12","received":"8"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":22,"nanosecond":27000000},"bytes":{"transmitted":"996","received":"656"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ee:44:6a:8a:83:4e","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":22,"nanosecond":16000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"3a:a8:41:44:b3:f9","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"12","received":"12"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":22,"nanosecond":28000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:group":[{"group-id":56,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":56000}}],"watch_group":56000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":56,"duration":{"second":18,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":22000}}],"watch_group":22000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":22,"duration":{"second":18,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":99000}}],"watch_group":99000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":99,"duration":{"second":18,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":34000,"duration":{"second":21,"nanosecond":723000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":89000,"duration":{"second":21,"nanosecond":723000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":60000,"duration":{"second":21,"nanosecond":723000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":91000,"duration":{"second":21,"nanosecond":723000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":57000}}],"watch_group":57000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":57,"duration":{"second":18,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":23000}}],"watch_group":23000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":23,"duration":{"second":18,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":14000,"duration":{"second":21,"nanosecond":723000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":98000}}],"watch_group":98000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":98,"duration":{"second":18,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":56000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":56000,"duration":{"second":21,"nanosecond":722000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":85000,"duration":{"second":21,"nanosecond":721000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":54000}}],"watch_group":54000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":54,"duration":{"second":18,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":24000}}],"watch_group":24000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":24,"duration":{"second":18,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":36000,"duration":{"second":21,"nanosecond":721000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":87000,"duration":{"second":21,"nanosecond":721000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":59000,"duration":{"second":21,"nanosecond":721000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":25000,"duration":{"second":21,"nanosecond":721000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":43000,"duration":{"second":21,"nanosecond":721000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":55000}}],"watch_group":55000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":55,"duration":{"second":18,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":25000}}],"watch_group":25000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":25,"duration":{"second":21,"nanosecond":426000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":100000}}],"watch_group":100000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":100,"duration":{"second":18,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":58000,"duration":{"second":21,"nanosecond":426000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":86000,"duration":{"second":21,"nanosecond":426000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":60000}}],"watch_group":60000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":60,"duration":{"second":21,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":26000}}],"watch_group":26000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":26,"duration":{"second":18,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":41000,"duration":{"second":21,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":95000}}],"watch_group":95000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":95,"duration":{"second":18,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":82000,"duration":{"second":21,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":61000}}],"watch_group":61000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":61,"duration":{"second":18,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":27000}}],"watch_group":27000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":27,"duration":{"second":18,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":94000}}],"watch_group":94000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":94,"duration":{"second":18,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":98000,"duration":{"second":21,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":27000,"duration":{"second":21,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":57000,"duration":{"second":21,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":16000,"duration":{"second":21,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":83000,"duration":{"second":21,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":58000}}],"watch_group":58000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":58,"duration":{"second":20,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":28000}}],"watch_group":28000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":28,"duration":{"second":18,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":97000}}],"watch_group":97000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":97,"duration":{"second":18,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":100000,"duration":{"second":20,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":59000}}],"watch_group":59000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":59,"duration":{"second":20,"nanosecond":918000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":38000,"duration":{"second":20,"nanosecond":915000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":29000}}],"watch_group":29000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":29,"duration":{"second":18,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":96000}}],"watch_group":96000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":96,"duration":{"second":18,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":84000,"duration":{"second":20,"nanosecond":915000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":64000}}],"watch_group":64000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":64,"duration":{"second":18,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":30000}}],"watch_group":30000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":30,"duration":{"second":18,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":4000}}],"watch_group":4000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":4,"duration":{"second":18,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":91000}}],"watch_group":91000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":91,"duration":{"second":20,"nanosecond":915000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":7000,"duration":{"second":20,"nanosecond":915000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":29000,"duration":{"second":20,"nanosecond":915000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":65000}}],"watch_group":65000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":65,"duration":{"second":18,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":31000}}],"watch_group":31000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":31,"duration":{"second":18,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":5000}}],"watch_group":5000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":5,"duration":{"second":18,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":90000}}],"watch_group":90000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":90,"duration":{"second":18,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":18000,"duration":{"second":20,"nanosecond":915000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":62000}}],"watch_group":62000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":62,"duration":{"second":18,"nanosecond":421000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":65000,"duration":{"second":20,"nanosecond":915000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":32000}}],"watch_group":32000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":32,"duration":{"second":18,"nanosecond":421000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":2000}}],"watch_group":2000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":2,"duration":{"second":18,"nanosecond":421000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":93000}}],"watch_group":93000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":93,"duration":{"second":18,"nanosecond":421000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":64000,"duration":{"second":20,"nanosecond":915000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":63000}}],"watch_group":63000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":63,"duration":{"second":18,"nanosecond":421000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":33000}}],"watch_group":33000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":33,"duration":{"second":18,"nanosecond":421000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":3000}}],"watch_group":3000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":3,"duration":{"second":18,"nanosecond":421000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":80000,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":9000,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":92000}}],"watch_group":92000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":92,"duration":{"second":18,"nanosecond":421000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":5000,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":20000,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":81000,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":97000,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":31000,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":68000}}],"watch_group":68000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":68,"duration":{"second":18,"nanosecond":421000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":11000,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":34000}}],"watch_group":34000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":34,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":78000,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":87000}}],"watch_group":87000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":87,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":93000,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":63000,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":69000}}],"watch_group":69000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":69,"duration":{"second":18,"nanosecond":421000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":35000}}],"watch_group":35000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":35,"duration":{"second":18,"nanosecond":420000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":33000,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":79000,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":86000}}],"watch_group":86000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":86,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":62000,"duration":{"second":20,"nanosecond":914000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":66000}}],"watch_group":66000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":66,"duration":{"second":18,"nanosecond":420000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":77000,"duration":{"second":20,"nanosecond":913000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":36000}}],"watch_group":36000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":36,"duration":{"second":20,"nanosecond":913000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":89000}}],"watch_group":89000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":89,"duration":{"second":20,"nanosecond":913000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":22000,"duration":{"second":20,"nanosecond":913000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":95000,"duration":{"second":20,"nanosecond":912000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":67000}}],"watch_group":67000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":67,"duration":{"second":18,"nanosecond":420000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":37000}}],"watch_group":37000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":37,"duration":{"second":18,"nanosecond":420000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":88000}}],"watch_group":88000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":88,"duration":{"second":18,"nanosecond":420000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":61000,"duration":{"second":20,"nanosecond":912000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":3000,"duration":{"second":20,"nanosecond":912000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":73000}}],"watch_group":73000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":73,"duration":{"second":18,"nanosecond":420000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":39000}}],"watch_group":39000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":39,"duration":{"second":18,"nanosecond":420000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":13000}}],"watch_group":13000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":13,"duration":{"second":18,"nanosecond":420000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":74000,"duration":{"second":20,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":15000,"duration":{"second":20,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":44000,"duration":{"second":20,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":45000,"duration":{"second":20,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":68000,"duration":{"second":20,"nanosecond":911000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":72000}}],"watch_group":72000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":72,"duration":{"second":18,"nanosecond":415000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":38000}}],"watch_group":38000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":38,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":75000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":12000}}],"watch_group":12000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":12,"duration":{"second":18,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":35000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":24000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":90000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":71000}}],"watch_group":71000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":71,"duration":{"second":18,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":41000}}],"watch_group":41000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":41,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":42000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":11000}}],"watch_group":11000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":11,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":92000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":46000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":67000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":70000}}],"watch_group":70000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":70,"duration":{"second":18,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":76000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":40000}}],"watch_group":40000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":40,"duration":{"second":18,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":13000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":10000}}],"watch_group":10000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":10,"duration":{"second":18,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":88000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":47000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":66000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":77000}}],"watch_group":77000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":77,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":43000}}],"watch_group":43000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":43,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":9000}}],"watch_group":9000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":9,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":99000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":26000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":70000,"duration":{"second":20,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":76000}}],"watch_group":76000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":76,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":42000}}],"watch_group":42000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":42,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":8000}}],"watch_group":8000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":8,"duration":{"second":18,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":37000,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":49000,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":71000,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":48000,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":75000}}],"watch_group":75000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":75,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":45000}}],"watch_group":45000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":45,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":7000}}],"watch_group":7000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":7,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":39000,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":73000,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":69000,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":17000,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":28000,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":74000}}],"watch_group":74000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":74,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":44000}}],"watch_group":44000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":44,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":6000}}],"watch_group":6000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":6,"duration":{"second":18,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":40000,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":81000}}],"watch_group":81000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":81,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":47000}}],"watch_group":47000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":47,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":21000}}],"watch_group":21000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":21,"duration":{"second":18,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":8000,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":19000,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":96000,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":80000}}],"watch_group":80000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":80,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":46000}}],"watch_group":46000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":46,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":20000}}],"watch_group":20000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":20,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":52000,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":6000,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":79000}}],"watch_group":79000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":79,"duration":{"second":19,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":49000}}],"watch_group":49000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":49,"duration":{"second":19,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":19000}}],"watch_group":19000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":19,"duration":{"second":19,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":50000,"duration":{"second":19,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":72000,"duration":{"second":19,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":30000,"duration":{"second":19,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":78000}}],"watch_group":78000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":78,"duration":{"second":19,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":48000}}],"watch_group":48000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":48,"duration":{"second":19,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":18000}}],"watch_group":18000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":18,"duration":{"second":19,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":51000,"duration":{"second":19,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":85000}}],"watch_group":85000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":85,"duration":{"second":19,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":55000,"duration":{"second":19,"nanosecond":423000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":51000}}],"watch_group":51000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":51,"duration":{"second":18,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":17000}}],"watch_group":17000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":17,"duration":{"second":18,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":21000,"duration":{"second":18,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":4000,"duration":{"second":18,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":84000}}],"watch_group":84000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":84,"duration":{"second":18,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":50000}}],"watch_group":50000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":50,"duration":{"second":18,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":16000}}],"watch_group":16000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":16,"duration":{"second":18,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":10000,"duration":{"second":18,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":54000,"duration":{"second":18,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":83000}}],"watch_group":83000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":83,"duration":{"second":18,"nanosecond":925000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":32000,"duration":{"second":18,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":53000}}],"watch_group":53000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":53,"duration":{"second":18,"nanosecond":414000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":15000}}],"watch_group":15000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":15,"duration":{"second":18,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":2000,"duration":{"second":18,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":82000}}],"watch_group":82000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":82,"duration":{"second":18,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":52000}}],"watch_group":52000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":52,"duration":{"second":18,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":14000}}],"watch_group":14000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":14,"duration":{"second":18,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":53000,"duration":{"second":18,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":12000,"duration":{"second":18,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":23000,"duration":{"second":18,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":94000,"duration":{"second":18,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:56:02.477Z"}},{"id":"openflow:2","flow-node-inventory:port-number":49496,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"75","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.75/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":75}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"74","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.74/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":74}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":88000000}},"flags":""},{"id":"73","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.73/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":73}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":87000000}},"flags":""},{"id":"72","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.72/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":72}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":87000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":87000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":87000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":87000000}},"flags":""},{"id":"89","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.89/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":89}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":87000000}},"flags":""},{"id":"88","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.88/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":88}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":87000000}},"flags":""},{"id":"87","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.87/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":87}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":87000000}},"flags":""},{"id":"86","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.86/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":86}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":56000000}},"flags":""},{"id":"85","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.85/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":85}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":56000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":56000000}},"flags":""},{"id":"83","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.83/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":83}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":56000000}},"flags":""},{"id":"19","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.19/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":19}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":55000000}},"flags":""},{"id":"18","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.18/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":18}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":55000000}},"flags":""},{"id":"17","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.17/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":17}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":55000000}},"flags":""},{"id":"16","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.16/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":16}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":55000000}},"flags":""},{"id":"15","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.15/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":15}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":55000000}},"flags":""},{"id":"14","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.14/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":14}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":55000000}},"flags":""},{"id":"2","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.2/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":2}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":55000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":55000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":55000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":55000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"#UF$TABLE*0-75","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"14","byte-count":"1100","duration":{"second":3,"nanosecond":55000000}},"flags":"SEND_FLOW_REM"},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"99","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.99/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":99}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":54000000}},"flags":""},{"id":"98","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.98/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":98}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":45000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":45000000}},"flags":""},{"id":"96","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.96/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":96}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":45000000}},"flags":""},{"id":"95","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.95/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":95}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":45000000}},"flags":""},{"id":"94","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.94/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":94}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":45000000}},"flags":""},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":45000000}},"flags":""},{"id":"28","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.28/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":28}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":45000000}},"flags":""},{"id":"27","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.27/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":27}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"8","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.8/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":8}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"6","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.6/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":6}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"5","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.5/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":5}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"4","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.4/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":4}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"3","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.3/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":3}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"24","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.24/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":24}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"23","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.23/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":23}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"22","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.22/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":22}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"21","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.21/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":21}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"20","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.20/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":20}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"39","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.39/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":39}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"38","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.38/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":38}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"37","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.37/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":37}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"36","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.36/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":36}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"35","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.35/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":35}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"34","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.34/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":34}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"33","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.33/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":33}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"32","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.32/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":32}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"31","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.31/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":31}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"30","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.30/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":30}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"49","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.49/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":49}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"48","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.48/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":48}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"47","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.47/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":47}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"46","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.46/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":46}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"45","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.45/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":45}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"44","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.44/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":44}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"43","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.43/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":43}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"42","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.42/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":42}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":44000000}},"flags":""},{"id":"41","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.41/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":41}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":43000000}},"flags":""},{"id":"40","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.40/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":40}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":43000000}},"flags":""},{"id":"59","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.59/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":59}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":43000000}},"flags":""},{"id":"58","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.58/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":58}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":43000000}},"flags":""},{"id":"57","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.57/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":57}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":43000000}},"flags":""},{"id":"56","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.56/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":56}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":43000000}},"flags":""},{"id":"55","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.55/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":55}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":43000000}},"flags":""},{"id":"54","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.54/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":54}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":43000000}},"flags":""},{"id":"53","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.53/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":53}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":43000000}},"flags":""},{"id":"52","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.52/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":52}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":43000000}},"flags":""},{"id":"51","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.51/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":51}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":43000000}},"flags":""},{"id":"50","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.50/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":50}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":43000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"28","active-flows":100,"packets-matched":"14"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s2","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:56:02.409Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"96:6d:7e:e3:20:cb","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"12","received":"12"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":22,"nanosecond":16000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"aa:85:98:60:af:45","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":22,"nanosecond":12000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"b2:63:e2:1f:6f:f5","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"12","received":"12"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":22,"nanosecond":16000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"6e:ec:a4:2a:50:8d","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"12","received":"8"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":22,"nanosecond":16000000},"bytes":{"transmitted":"996","received":"656"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:group":[{"group-id":56,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":56000}}],"watch_group":56000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":56,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":22000}}],"watch_group":22000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":22,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":99000}}],"watch_group":99000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":99,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":34000,"duration":{"second":21,"nanosecond":724000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":89000,"duration":{"second":21,"nanosecond":724000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":60000,"duration":{"second":21,"nanosecond":724000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":91000,"duration":{"second":21,"nanosecond":724000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":57000}}],"watch_group":57000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":57,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":23000}}],"watch_group":23000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":23,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":14000,"duration":{"second":21,"nanosecond":724000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":98000}}],"watch_group":98000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":98,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":56000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":56000,"duration":{"second":21,"nanosecond":724000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":85000,"duration":{"second":21,"nanosecond":724000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":54000}}],"watch_group":54000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":54,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":24000}}],"watch_group":24000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":24,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":36000,"duration":{"second":21,"nanosecond":724000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":87000,"duration":{"second":21,"nanosecond":724000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":59000,"duration":{"second":21,"nanosecond":723000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":25000,"duration":{"second":21,"nanosecond":723000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":43000,"duration":{"second":21,"nanosecond":723000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":55000}}],"watch_group":55000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":55,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":25000}}],"watch_group":25000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":25,"duration":{"second":21,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":100000}}],"watch_group":100000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":100,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":58000,"duration":{"second":21,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":86000,"duration":{"second":21,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":60000}}],"watch_group":60000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":60,"duration":{"second":21,"nanosecond":428000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":26000}}],"watch_group":26000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":26,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":41000,"duration":{"second":21,"nanosecond":426000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":95000}}],"watch_group":95000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":95,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":82000,"duration":{"second":21,"nanosecond":426000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":61000}}],"watch_group":61000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":61,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":27000}}],"watch_group":27000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":27,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":94000}}],"watch_group":94000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":94,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":98000,"duration":{"second":21,"nanosecond":426000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":27000,"duration":{"second":21,"nanosecond":426000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":57000,"duration":{"second":21,"nanosecond":426000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":16000,"duration":{"second":21,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":83000,"duration":{"second":21,"nanosecond":424000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":58000}}],"watch_group":58000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":58,"duration":{"second":20,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":28000}}],"watch_group":28000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":28,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":97000}}],"watch_group":97000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":97,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":100000,"duration":{"second":20,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":59000}}],"watch_group":59000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":59,"duration":{"second":20,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":38000,"duration":{"second":20,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":29000}}],"watch_group":29000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":29,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":96000}}],"watch_group":96000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":96,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":84000,"duration":{"second":20,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":64000}}],"watch_group":64000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":64,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":30000}}],"watch_group":30000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":30,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":4000}}],"watch_group":4000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":4,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":91000}}],"watch_group":91000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":91,"duration":{"second":20,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":7000,"duration":{"second":20,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":29000,"duration":{"second":20,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":65000}}],"watch_group":65000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":65,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":31000}}],"watch_group":31000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":31,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":5000}}],"watch_group":5000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":5,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":90000}}],"watch_group":90000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":90,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":18000,"duration":{"second":20,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":62000}}],"watch_group":62000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":62,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":65000,"duration":{"second":20,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":32000}}],"watch_group":32000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":32,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":2000}}],"watch_group":2000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":2,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":93000}}],"watch_group":93000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":93,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":64000,"duration":{"second":20,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":63000}}],"watch_group":63000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":63,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":33000}}],"watch_group":33000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":33,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":3000}}],"watch_group":3000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":3,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":80000,"duration":{"second":20,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":9000,"duration":{"second":20,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":92000}}],"watch_group":92000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":92,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":5000,"duration":{"second":20,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":20000,"duration":{"second":20,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":81000,"duration":{"second":20,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":97000,"duration":{"second":20,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":31000,"duration":{"second":20,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":68000}}],"watch_group":68000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":68,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":11000,"duration":{"second":20,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":34000}}],"watch_group":34000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":34,"duration":{"second":20,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":78000,"duration":{"second":20,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":87000}}],"watch_group":87000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":87,"duration":{"second":20,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":93000,"duration":{"second":20,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":63000,"duration":{"second":20,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":69000}}],"watch_group":69000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":69,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":35000}}],"watch_group":35000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":35,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":33000,"duration":{"second":20,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":79000,"duration":{"second":20,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":86000}}],"watch_group":86000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":86,"duration":{"second":20,"nanosecond":921000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":62000,"duration":{"second":20,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":66000}}],"watch_group":66000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":66,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":77000,"duration":{"second":20,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":36000}}],"watch_group":36000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":36,"duration":{"second":20,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":89000}}],"watch_group":89000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":89,"duration":{"second":20,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":22000,"duration":{"second":20,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":95000,"duration":{"second":20,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":67000}}],"watch_group":67000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":67,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":37000}}],"watch_group":37000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":37,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":88000}}],"watch_group":88000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":88,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":61000,"duration":{"second":20,"nanosecond":919000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":3000,"duration":{"second":20,"nanosecond":916000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":73000}}],"watch_group":73000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":73,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":39000}}],"watch_group":39000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":39,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":13000}}],"watch_group":13000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":13,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":74000,"duration":{"second":20,"nanosecond":915000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":15000,"duration":{"second":20,"nanosecond":915000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":44000,"duration":{"second":20,"nanosecond":915000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":45000,"duration":{"second":20,"nanosecond":915000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":68000,"duration":{"second":20,"nanosecond":915000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":72000}}],"watch_group":72000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":72,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":38000}}],"watch_group":38000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":38,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":75000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":12000}}],"watch_group":12000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":12,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":35000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":24000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":90000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":71000}}],"watch_group":71000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":71,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":41000}}],"watch_group":41000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":41,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":42000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":11000}}],"watch_group":11000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":11,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":92000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":46000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":67000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":70000}}],"watch_group":70000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":70,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":76000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":40000}}],"watch_group":40000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":40,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":13000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":10000}}],"watch_group":10000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":10,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":88000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":47000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":66000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":77000}}],"watch_group":77000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":77,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":43000}}],"watch_group":43000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":43,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":9000}}],"watch_group":9000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":9,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":99000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":26000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":70000,"duration":{"second":20,"nanosecond":425000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":76000}}],"watch_group":76000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":76,"duration":{"second":19,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":42000}}],"watch_group":42000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":42,"duration":{"second":19,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":8000}}],"watch_group":8000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":8,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":37000,"duration":{"second":19,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":49000,"duration":{"second":19,"nanosecond":923000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":71000,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":48000,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":75000}}],"watch_group":75000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":75,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":45000}}],"watch_group":45000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":45,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":7000}}],"watch_group":7000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":7,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":39000,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":73000,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":69000,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":17000,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":28000,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":74000}}],"watch_group":74000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":74,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":44000}}],"watch_group":44000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":44,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":6000}}],"watch_group":6000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":6,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":40000,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":81000}}],"watch_group":81000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":81,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":47000}}],"watch_group":47000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":47,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":21000}}],"watch_group":21000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":21,"duration":{"second":18,"nanosecond":409000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":8000,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":19000,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":96000,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":80000}}],"watch_group":80000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":80,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":46000}}],"watch_group":46000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":46,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":20000}}],"watch_group":20000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":20,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":52000,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":6000,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":79000}}],"watch_group":79000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":79,"duration":{"second":19,"nanosecond":922000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":49000}}],"watch_group":49000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":49,"duration":{"second":19,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":19000}}],"watch_group":19000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":19,"duration":{"second":19,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":50000,"duration":{"second":19,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":72000,"duration":{"second":19,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":30000,"duration":{"second":19,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":78000}}],"watch_group":78000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":78,"duration":{"second":19,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":48000}}],"watch_group":48000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":48,"duration":{"second":19,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":18000}}],"watch_group":18000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":18,"duration":{"second":19,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":51000,"duration":{"second":19,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":85000}}],"watch_group":85000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":85,"duration":{"second":19,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":55000,"duration":{"second":19,"nanosecond":422000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":51000}}],"watch_group":51000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":51,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":17000}}],"watch_group":17000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":17,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":21000,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":4000,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":84000}}],"watch_group":84000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":84,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":50000}}],"watch_group":50000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":50,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":16000}}],"watch_group":16000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":16,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":10000,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":54000,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":83000}}],"watch_group":83000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":83,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":32000,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":53000}}],"watch_group":53000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":53,"duration":{"second":18,"nanosecond":408000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":15000}}],"watch_group":15000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":15,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":2000,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":82000}}],"watch_group":82000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":82,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":52000}}],"watch_group":52000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":52,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":14000}}],"watch_group":14000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":14,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":53000,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":12000,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":23000,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":94000,"duration":{"second":18,"nanosecond":920000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:56:02.480Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:03.198302" elapsed="0.012570"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-05-25T01:56:03.215514" level="INFO">Item found from container 594 times.</msg>
<msg time="2026-05-25T01:56:03.215608" level="INFO">${group_count} = 594</msg>
<var>${group_count}</var>
<arg>${resp.text}</arg>
<arg>"group-type"</arg>
<doc>Returns and logs how many times ``item`` is found from ``container``.</doc>
<status status="PASS" start="2026-05-25T01:56:03.211181" elapsed="0.004452"/>
</kw>
<kw name="Should Be Equal As Integers" owner="BuiltIn">
<arg>${group_count}</arg>
<arg>${groups}</arg>
<doc>Fails if objects are unequal after converting them to integers.</doc>
<status status="PASS" start="2026-05-25T01:56:03.215832" elapsed="0.000336"/>
</kw>
<arg>${less_groups}</arg>
<doc>Check number of groups in the inventory.</doc>
<status status="PASS" start="2026-05-25T01:56:03.156060" elapsed="0.060176"/>
</kw>
<doc>Check Flows after mininet starts.</doc>
<status status="PASS" start="2026-05-25T01:56:03.155497" elapsed="0.060850"/>
</test>
<test id="s1-s5-s1-t16" name="Check Flows In Switch After Mininet Reconnects" line="115">
<kw name="Check Flows In Mininet" owner="MininetKeywords">
<if>
<branch type="IF" condition="&quot;&quot;&quot;${mininet_conn}&quot;&quot;&quot; != &quot;&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${mininet_conn}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:56:03.217845" elapsed="0.000143"/>
</kw>
<status status="PASS" start="2026-05-25T01:56:03.217610" elapsed="0.000416"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:03.217585" elapsed="0.000469"/>
</if>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:03.218517" level="INFO">${cmd} = dpctl dump-aggregate -O OpenFlow13</msg>
<var>${cmd}</var>
<arg>dpctl dump-aggregate -O OpenFlow13</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:56:03.218258" elapsed="0.000286"/>
</kw>
<kw name="Send Mininet Command" owner="MininetKeywords">
<if>
<branch type="IF" condition="&quot;&quot;&quot;${mininet_conn}&quot;&quot;&quot; != &quot;&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${mininet_conn}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:56:03.219453" elapsed="0.000132"/>
</kw>
<status status="PASS" start="2026-05-25T01:56:03.219234" elapsed="0.000387"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:03.219215" elapsed="0.000431"/>
</if>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:56:03.223636" level="INFO">dpctl dump-aggregate -O OpenFlow13</msg>
<arg>${cmd}</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:56:03.219784" elapsed="0.003912"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:56:03.307308" level="INFO">*** s1 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=7 byte_count=535 flow_count=100
*** s2 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=14 byte_count=1100 flow_count=100
*** s3 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=7 byte_count=535 flow_count=100
mininet&gt;</msg>
<msg time="2026-05-25T01:56:03.307425" level="INFO">${output} = *** s1 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=7 byte_count=535 flow_count=100
*** s2 ------------------------...</msg>
<var>${output}</var>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:56:03.223861" elapsed="0.083591"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:56:03.307512" elapsed="0.000051"/>
</return>
<msg time="2026-05-25T01:56:03.307744" level="INFO">${output} = *** s1 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=7 byte_count=535 flow_count=100
*** s2 ------------------------...</msg>
<var>${output}</var>
<arg>${mininet_conn}</arg>
<arg>${cmd}</arg>
<doc>Sends Command dpctl dump-aggregate -O OpenFlow13 to Mininet session 5 and returns read buffer response.</doc>
<status status="PASS" start="2026-05-25T01:56:03.218894" elapsed="0.088878"/>
</kw>
<kw name="Get Regexp Matches" owner="String">
<msg time="2026-05-25T01:56:03.308241" level="INFO">${flows} = ['100', '100', '100']</msg>
<var>${flows}</var>
<arg>${output}</arg>
<arg>(?&lt;=flow_count\=).*?(?=\r)</arg>
<doc>Returns a list of all non-overlapping matches in the given string.</doc>
<status status="PASS" start="2026-05-25T01:56:03.307950" elapsed="0.000317"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:56:03.308846" level="INFO">${total_flows} = 300</msg>
<var>${total_flows}</var>
<arg>sum(map(int, ${flows}))</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:56:03.308435" elapsed="0.000438"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<arg>${total_flows}</arg>
<arg>${flow_count}</arg>
<doc>Fails if objects are unequal after converting them to real numbers.</doc>
<status status="PASS" start="2026-05-25T01:56:03.309146" elapsed="0.000328"/>
</kw>
<arg>${mininet_conn_id}</arg>
<arg>${less_flows}</arg>
<doc>Sync with mininet to match exact number of flows</doc>
<status status="PASS" start="2026-05-25T01:56:03.217277" elapsed="0.092258"/>
</kw>
<doc>Check Flows after mininet starts.</doc>
<status status="PASS" start="2026-05-25T01:56:03.216630" elapsed="0.093014"/>
</test>
<test id="s1-s5-s1-t17" name="Restart Controller" line="119">
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Stop_Members_From_List_Or_All" owner="ClusterManagement">
<kw name="List_Indices_Or_All" owner="ClusterManagement">
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:03.316160" level="INFO">${return_list_reference} = [1]</msg>
<var>${return_list_reference}</var>
<arg>"""${given_list}""" != ""</arg>
<arg>${given_list}</arg>
<arg>${ClusterManagement__member_index_list}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:03.315752" elapsed="0.000435"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:56:03.316651" level="INFO">${return_list_copy} = [1]</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:56:03.316353" elapsed="0.000324"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-05-25T01:56:03.316722" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:56:03.316878" level="INFO">${stop_index_list} = [1]</msg>
<var>${stop_index_list}</var>
<arg>given_list=${member_index_list}</arg>
<doc>Utility to allow ${EMPTY} as default argument value, as the internal list is computed at runtime.
This keyword always returns a (shallow) copy of given or default list,
so operations with the returned list should not affect other lists.
Also note that this keyword does not consider empty list to be ${EMPTY}.</doc>
<status status="PASS" start="2026-05-25T01:56:03.315334" elapsed="0.001569"/>
</kw>
<kw name="List_Indices_Or_All" owner="ClusterManagement">
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:03.317881" level="INFO">${return_list_reference} = [1]</msg>
<var>${return_list_reference}</var>
<arg>"""${given_list}""" != ""</arg>
<arg>${given_list}</arg>
<arg>${ClusterManagement__member_index_list}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:03.317506" elapsed="0.000401"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:56:03.318437" level="INFO">${return_list_copy} = [1]</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:56:03.318137" elapsed="0.000326"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-05-25T01:56:03.318519" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:56:03.318673" level="INFO">${index_list} = [1]</msg>
<var>${index_list}</var>
<arg>given_list=${original_index_list}</arg>
<doc>Utility to allow ${EMPTY} as default argument value, as the internal list is computed at runtime.
This keyword always returns a (shallow) copy of given or default list,
so operations with the returned list should not affect other lists.
Also note that this keyword does not consider empty list to be ${EMPTY}.</doc>
<status status="PASS" start="2026-05-25T01:56:03.317129" elapsed="0.001569"/>
</kw>
<kw name="Run_Bash_Command_On_List_Or_All" owner="ClusterManagement">
<kw name="List_Indices_Or_All" owner="ClusterManagement">
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:03.320215" level="INFO">${return_list_reference} = [1]</msg>
<var>${return_list_reference}</var>
<arg>"""${given_list}""" != ""</arg>
<arg>${given_list}</arg>
<arg>${ClusterManagement__member_index_list}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:03.319819" elapsed="0.000423"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:56:03.320696" level="INFO">${return_list_copy} = [1]</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:56:03.320402" elapsed="0.000319"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-05-25T01:56:03.320766" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:56:03.320919" level="INFO">${index_list} = [1]</msg>
<var>${index_list}</var>
<arg>given_list=${member_index_list}</arg>
<doc>Utility to allow ${EMPTY} as default argument value, as the internal list is computed at runtime.
This keyword always returns a (shallow) copy of given or default list,
so operations with the returned list should not affect other lists.
Also note that this keyword does not consider empty list to be ${EMPTY}.</doc>
<status status="PASS" start="2026-05-25T01:56:03.319403" elapsed="0.001540"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Run_Bash_Command_On_Member" owner="ClusterManagement">
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:56:03.322019" level="INFO">${member_ip} = 10.30.170.200</msg>
<var>${member_ip}</var>
<arg>dictionary=${ClusterManagement__index_to_ip_mapping}</arg>
<arg>key=${member_index}</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:56:03.321745" elapsed="0.000300"/>
</kw>
<kw name="Run_Keyword_Preserve_Connection" owner="SSHKeywords">
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:03.322831" level="INFO">index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:56:03.322931" level="INFO">${current_connection} = index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:56:03.322710" elapsed="0.000248"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Controller" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:03.326757" elapsed="0.000063"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:03.325780" elapsed="0.001116"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:03.325759" elapsed="0.001211"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:03.327282" level="INFO">index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:56:03.327499" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:56:03.327170" elapsed="0.000431"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:03.328555" level="INFO">Attempting to execute command "/tmp/karaf-0.22.3/bin/stop" on remote system "10.30.170.200" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:03.327849" elapsed="0.000767"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:03.329591" level="INFO">${conn_id} = 10</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:03.328870" elapsed="0.000821"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:56:03.331768" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:56:03.331937" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:56:03.331373" elapsed="0.000605"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:03.332631" elapsed="0.000462"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:56:03.334589" level="INFO">Logging into '10.30.170.200:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:56:03.644480" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-173-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:55:13 UTC 2026

  System load:  0.09               Processes:             120
  Usage of /:   11.1% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.200
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

10 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:55:58 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-0-builder-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:56:03.334246" elapsed="0.310625"/>
</kw>
<msg time="2026-05-25T01:56:03.645057" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:03.333736" elapsed="0.311513"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:56:03.330127" elapsed="0.315305"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:56:03.646537" level="INFO">Executing command '/tmp/karaf-0.22.3/bin/stop'.</msg>
<msg time="2026-05-25T01:56:04.025511" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:56:04.026211" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:56:04.026541" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:56:03.646024" elapsed="0.380731"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:04.027734" elapsed="0.000835"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:04.030915" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:04.029924" elapsed="0.001074"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:04.031612" elapsed="0.000048"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:04.031283" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:04.031241" elapsed="0.000594"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:56:04.032255" elapsed="0.000070"/>
</return>
<status status="PASS" start="2026-05-25T01:56:04.031957" elapsed="0.000447"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:04.031933" elapsed="0.000573"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:04.032601" elapsed="0.000022"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:56:04.039371" elapsed="0.000211"/>
</kw>
<msg time="2026-05-25T01:56:04.039680" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:04.038125" elapsed="0.001692"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:04.041038" elapsed="0.000093"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:04.042361" elapsed="0.000052"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:56:04.033105" elapsed="0.009389"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:56:03.324916" elapsed="0.717778"/>
</kw>
<msg time="2026-05-25T01:56:04.042750" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:03.324205" elapsed="0.718596"/>
</kw>
<arg>@{args}</arg>
<arg>&amp;{kwargs}</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Controller machine.</doc>
<status status="PASS" start="2026-05-25T01:56:03.323652" elapsed="0.719232"/>
</kw>
<msg time="2026-05-25T01:56:04.042926" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${keyword_name}</arg>
<arg>@{args}</arg>
<arg>&amp;{kwargs}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:03.323133" elapsed="0.719840"/>
</kw>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:56:04.046241" elapsed="0.000142"/>
</kw>
<msg time="2026-05-25T01:56:04.046426" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:04.045729" elapsed="0.000759"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:04.046645" elapsed="0.000021"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:04.046837" elapsed="0.000025"/>
</kw>
<arg>${current_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:56:04.043300" elapsed="0.003626"/>
</kw>
<msg time="2026-05-25T01:56:04.047026" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>Utils.Run_Command_On_Controller</arg>
<arg>${member_ip}</arg>
<arg>${command}</arg>
<doc>Store current connection index, run keyword returning its result, restore connection in teardown.
Note that in order to avoid "got positional argument after named arguments", it is safer to use positional (not named) arguments on call.</doc>
<status status="PASS" start="2026-05-25T01:56:03.322283" elapsed="0.724768"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:04.047536" level="INFO"/>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:04.047280" elapsed="0.000298"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:56:04.047621" elapsed="0.000028"/>
</return>
<arg>command=${command}</arg>
<arg>member_index=${index}</arg>
<doc>Obtain IP, call Utils and return output. This keeps previous ssh session active.</doc>
<status status="PASS" start="2026-05-25T01:56:03.321341" elapsed="0.726461"/>
</kw>
<var name="${index}">1</var>
<status status="PASS" start="2026-05-25T01:56:03.321162" elapsed="0.726680"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="PASS" start="2026-05-25T01:56:03.321005" elapsed="0.726876"/>
</for>
<arg>command=${NODE_STOP_COMMAND}</arg>
<arg>member_index_list=${member_index_list}</arg>
<doc>Cycle through indices (or all), run command on each.</doc>
<status status="PASS" start="2026-05-25T01:56:03.318902" elapsed="0.729040"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:56:04.048462" level="INFO">${updated_index_list} = [1]</msg>
<var>${updated_index_list}</var>
<arg>@{index_list}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:56:04.048155" elapsed="0.000333"/>
</kw>
<kw name="Remove Values From List" owner="Collections">
<arg>${updated_index_list}</arg>
<arg>@{stop_index_list}</arg>
<doc>Removes all occurrences of given ``values`` from ``list``.</doc>
<status status="PASS" start="2026-05-25T01:56:04.048644" elapsed="0.000232"/>
</kw>
<if>
<branch type="IF" condition="not ${confirm}">
<return>
<value>${updated_index_list}</value>
<status status="NOT RUN" start="2026-05-25T01:56:04.049059" elapsed="0.000030"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:04.048953" elapsed="0.000167"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:04.048933" elapsed="0.000220"/>
</if>
<for flavor="IN">
<iter>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Verify_Karaf_Is_Not_Running_On_Member" owner="ClusterManagement">
<kw name="Count_Running_Karafs_On_Member" owner="ClusterManagement">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:04.051106" level="INFO">${command} = ps axf | grep org.apache.karaf | grep -v grep | wc -l</msg>
<var>${command}</var>
<arg>${NODE_KARAF_COUNT_COMMAND}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:56:04.050796" elapsed="0.000338"/>
</kw>
<kw name="Run_Bash_Command_On_Member" owner="ClusterManagement">
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:56:04.052003" level="INFO">${member_ip} = 10.30.170.200</msg>
<var>${member_ip}</var>
<arg>dictionary=${ClusterManagement__index_to_ip_mapping}</arg>
<arg>key=${member_index}</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:56:04.051736" elapsed="0.000293"/>
</kw>
<kw name="Run_Keyword_Preserve_Connection" owner="SSHKeywords">
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:04.052841" level="INFO">index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:56:04.052945" level="INFO">${current_connection} = index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:56:04.052720" elapsed="0.000252"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Controller" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:04.056929" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:04.056638" elapsed="0.000350"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:04.056616" elapsed="0.000396"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:04.057307" level="INFO">index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:56:04.057409" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:56:04.057187" elapsed="0.000249"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:04.057973" level="INFO">Attempting to execute command "ps axf | grep org.apache.karaf | grep -v grep | wc -l" on remote system "10.30.170.200" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:04.057587" elapsed="0.000433"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:04.058580" level="INFO">${conn_id} = 11</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:04.058195" elapsed="0.000412"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:56:04.059516" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:56:04.059592" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:56:04.059242" elapsed="0.000374"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:04.059774" elapsed="0.000336"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:56:04.061008" level="INFO">Logging into '10.30.170.200:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:56:04.365156" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-173-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:55:13 UTC 2026

  System load:  0.09               Processes:             120
  Usage of /:   11.1% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.200
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

10 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:56:03 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-0-builder-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:56:04.060644" elapsed="0.304681"/>
</kw>
<msg time="2026-05-25T01:56:04.365391" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:04.060286" elapsed="0.305174"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:56:04.058822" elapsed="0.306730"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:56:04.365959" level="INFO">Executing command 'ps axf | grep org.apache.karaf | grep -v grep | wc -l'.</msg>
<msg time="2026-05-25T01:56:04.388718" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:56:04.388962" level="INFO">${stdout} = 1</msg>
<msg time="2026-05-25T01:56:04.389059" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:56:04.365752" elapsed="0.023401"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:04.389530" elapsed="0.000464"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:04.391047" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:04.390454" elapsed="0.000720"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:04.391620" elapsed="0.000038"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:04.391344" elapsed="0.000382"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:04.391293" elapsed="0.000482"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:56:04.392159" elapsed="0.000061"/>
</return>
<status status="PASS" start="2026-05-25T01:56:04.391892" elapsed="0.000402"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:04.391858" elapsed="0.000489"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:04.392422" elapsed="0.000032"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:56:04.399981" elapsed="0.000352"/>
</kw>
<msg time="2026-05-25T01:56:04.400430" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:04.398807" elapsed="0.001818"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:04.400982" elapsed="0.000048"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:04.401352" elapsed="0.000021"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:56:04.393165" elapsed="0.008269"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:56:04.055980" elapsed="0.345613"/>
</kw>
<msg time="2026-05-25T01:56:04.401659" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:04.054449" elapsed="0.347309"/>
</kw>
<arg>@{args}</arg>
<arg>&amp;{kwargs}</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Controller machine.</doc>
<status status="PASS" start="2026-05-25T01:56:04.053687" elapsed="0.348255"/>
</kw>
<msg time="2026-05-25T01:56:04.401985" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${keyword_name}</arg>
<arg>@{args}</arg>
<arg>&amp;{kwargs}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:04.053168" elapsed="0.348865"/>
</kw>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:56:04.405275" elapsed="0.000190"/>
</kw>
<msg time="2026-05-25T01:56:04.405570" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:04.404701" elapsed="0.000934"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:04.405792" elapsed="0.000021"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:04.405951" elapsed="0.000020"/>
</kw>
<arg>${current_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:56:04.402348" elapsed="0.003683"/>
</kw>
<msg time="2026-05-25T01:56:04.406140" level="INFO">${output} = 1</msg>
<var>${output}</var>
<arg>Utils.Run_Command_On_Controller</arg>
<arg>${member_ip}</arg>
<arg>${command}</arg>
<doc>Store current connection index, run keyword returning its result, restore connection in teardown.
Note that in order to avoid "got positional argument after named arguments", it is safer to use positional (not named) arguments on call.</doc>
<status status="PASS" start="2026-05-25T01:56:04.052307" elapsed="0.353859"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:04.406601" level="INFO">1</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:04.406354" elapsed="0.000291"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:56:04.406686" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:56:04.406878" level="INFO">${count} = 1</msg>
<var>${count}</var>
<arg>command=${command}</arg>
<arg>member_index=${member_index}</arg>
<doc>Obtain IP, call Utils and return output. This keeps previous ssh session active.</doc>
<status status="PASS" start="2026-05-25T01:56:04.051335" elapsed="0.355569"/>
</kw>
<return>
<value>${count}</value>
<status status="PASS" start="2026-05-25T01:56:04.406951" elapsed="0.000026"/>
</return>
<msg time="2026-05-25T01:56:04.407132" level="INFO">${count} = 1</msg>
<var>${count}</var>
<arg>member_index=${member_index}</arg>
<doc>Remotely execute grep for karaf process, return count as string.</doc>
<status status="PASS" start="2026-05-25T01:56:04.050450" elapsed="0.356708"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<msg time="2026-05-25T01:56:04.407720" level="FAIL">Found running Karaf count: 1: 0 != 1</msg>
<arg>0</arg>
<arg>${count}</arg>
<arg>Found running Karaf count: ${count}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="FAIL" start="2026-05-25T01:56:04.407318" elapsed="0.000477">Found running Karaf count: 1: 0 != 1</status>
</kw>
<arg>member_index=${index}</arg>
<doc>Fail if non-zero karaf instances are counted on member of given index.</doc>
<status status="FAIL" start="2026-05-25T01:56:04.050040" elapsed="0.357873">Found running Karaf count: 1: 0 != 1</status>
</kw>
<kw name="Verify_Karaf_Is_Not_Running_On_Member" owner="ClusterManagement">
<kw name="Count_Running_Karafs_On_Member" owner="ClusterManagement">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:06.411604" level="INFO">${command} = ps axf | grep org.apache.karaf | grep -v grep | wc -l</msg>
<var>${command}</var>
<arg>${NODE_KARAF_COUNT_COMMAND}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:56:06.410804" elapsed="0.000870"/>
</kw>
<kw name="Run_Bash_Command_On_Member" owner="ClusterManagement">
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:56:06.413717" level="INFO">${member_ip} = 10.30.170.200</msg>
<var>${member_ip}</var>
<arg>dictionary=${ClusterManagement__index_to_ip_mapping}</arg>
<arg>key=${member_index}</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:56:06.413226" elapsed="0.000528"/>
</kw>
<kw name="Run_Keyword_Preserve_Connection" owner="SSHKeywords">
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:06.414852" level="INFO">index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:56:06.414997" level="INFO">${current_connection} = index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:56:06.414662" elapsed="0.000372"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Controller" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:06.420869" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:06.420416" elapsed="0.000535"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:06.420379" elapsed="0.000631"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:06.421393" level="INFO">index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:56:06.421535" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:56:06.421240" elapsed="0.000333"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:06.422364" level="INFO">Attempting to execute command "ps axf | grep org.apache.karaf | grep -v grep | wc -l" on remote system "10.30.170.200" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:06.421783" elapsed="0.000647"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:06.423206" level="INFO">${conn_id} = 12</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:06.422650" elapsed="0.000592"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:56:06.424502" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:56:06.424608" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:56:06.424112" elapsed="0.000529"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:06.424861" elapsed="0.000523"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:56:06.426285" level="INFO">Logging into '10.30.170.200:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:56:06.789185" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-173-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:55:13 UTC 2026

  System load:  0.09               Processes:             120
  Usage of /:   11.1% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.200
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

10 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:56:04 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-0-builder-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:56:06.425920" elapsed="0.363383"/>
</kw>
<msg time="2026-05-25T01:56:06.789389" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:06.425561" elapsed="0.364008"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:56:06.423542" elapsed="0.366155"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:56:06.790252" level="INFO">Executing command 'ps axf | grep org.apache.karaf | grep -v grep | wc -l'.</msg>
<msg time="2026-05-25T01:56:06.813018" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:56:06.813199" level="INFO">${stdout} = 1</msg>
<msg time="2026-05-25T01:56:06.813261" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:56:06.789966" elapsed="0.023327"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:06.813661" elapsed="0.000496"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:06.815209" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:06.814594" elapsed="0.000708"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:06.815742" elapsed="0.000041"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:06.815468" elapsed="0.000383"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:06.815418" elapsed="0.000485"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:56:06.816291" elapsed="0.000119"/>
</return>
<status status="PASS" start="2026-05-25T01:56:06.816021" elapsed="0.000466"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:06.815986" elapsed="0.000554"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:06.816615" elapsed="0.000032"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:56:06.827468" elapsed="0.000146"/>
</kw>
<msg time="2026-05-25T01:56:06.827657" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:06.826236" elapsed="0.001488"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:06.827883" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:06.828045" elapsed="0.000039"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:56:06.817331" elapsed="0.010818"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:56:06.419487" elapsed="0.408828"/>
</kw>
<msg time="2026-05-25T01:56:06.828383" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:06.417133" elapsed="0.411352"/>
</kw>
<arg>@{args}</arg>
<arg>&amp;{kwargs}</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Controller machine.</doc>
<status status="PASS" start="2026-05-25T01:56:06.415994" elapsed="0.412674"/>
</kw>
<msg time="2026-05-25T01:56:06.828709" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${keyword_name}</arg>
<arg>@{args}</arg>
<arg>&amp;{kwargs}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:06.415279" elapsed="0.413476"/>
</kw>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:56:06.831984" elapsed="0.000210"/>
</kw>
<msg time="2026-05-25T01:56:06.832316" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:06.831420" elapsed="0.000965"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:06.832544" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:06.832706" elapsed="0.000020"/>
</kw>
<arg>${current_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:56:06.829046" elapsed="0.003740"/>
</kw>
<msg time="2026-05-25T01:56:06.832874" level="INFO">${output} = 1</msg>
<var>${output}</var>
<arg>Utils.Run_Command_On_Controller</arg>
<arg>${member_ip}</arg>
<arg>${command}</arg>
<doc>Store current connection index, run keyword returning its result, restore connection in teardown.
Note that in order to avoid "got positional argument after named arguments", it is safer to use positional (not named) arguments on call.</doc>
<status status="PASS" start="2026-05-25T01:56:06.414058" elapsed="0.418840"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:06.833353" level="INFO">1</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:06.833102" elapsed="0.000295"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:56:06.833439" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:56:06.833587" level="INFO">${count} = 1</msg>
<var>${count}</var>
<arg>command=${command}</arg>
<arg>member_index=${member_index}</arg>
<doc>Obtain IP, call Utils and return output. This keeps previous ssh session active.</doc>
<status status="PASS" start="2026-05-25T01:56:06.412162" elapsed="0.421449"/>
</kw>
<return>
<value>${count}</value>
<status status="PASS" start="2026-05-25T01:56:06.833698" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:56:06.833843" level="INFO">${count} = 1</msg>
<var>${count}</var>
<arg>member_index=${member_index}</arg>
<doc>Remotely execute grep for karaf process, return count as string.</doc>
<status status="PASS" start="2026-05-25T01:56:06.409948" elapsed="0.423919"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<msg time="2026-05-25T01:56:06.834459" level="FAIL">Found running Karaf count: 1: 0 != 1</msg>
<arg>0</arg>
<arg>${count}</arg>
<arg>Found running Karaf count: ${count}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="FAIL" start="2026-05-25T01:56:06.834024" elapsed="0.000510">Found running Karaf count: 1: 0 != 1</status>
</kw>
<arg>member_index=${index}</arg>
<doc>Fail if non-zero karaf instances are counted on member of given index.</doc>
<status status="FAIL" start="2026-05-25T01:56:06.408790" elapsed="0.425856">Found running Karaf count: 1: 0 != 1</status>
</kw>
<kw name="Verify_Karaf_Is_Not_Running_On_Member" owner="ClusterManagement">
<kw name="Count_Running_Karafs_On_Member" owner="ClusterManagement">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:08.838206" level="INFO">${command} = ps axf | grep org.apache.karaf | grep -v grep | wc -l</msg>
<var>${command}</var>
<arg>${NODE_KARAF_COUNT_COMMAND}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:56:08.837400" elapsed="0.000878"/>
</kw>
<kw name="Run_Bash_Command_On_Member" owner="ClusterManagement">
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:56:08.840342" level="INFO">${member_ip} = 10.30.170.200</msg>
<var>${member_ip}</var>
<arg>dictionary=${ClusterManagement__index_to_ip_mapping}</arg>
<arg>key=${member_index}</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:56:08.839699" elapsed="0.000704"/>
</kw>
<kw name="Run_Keyword_Preserve_Connection" owner="SSHKeywords">
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:08.841902" level="INFO">index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:56:08.842046" level="INFO">${current_connection} = index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:56:08.841716" elapsed="0.000394"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Controller" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:08.848856" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:08.848404" elapsed="0.000536"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:08.848366" elapsed="0.000610"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:08.849379" level="INFO">index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:56:08.849521" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:56:08.849225" elapsed="0.000333"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:08.850352" level="INFO">Attempting to execute command "ps axf | grep org.apache.karaf | grep -v grep | wc -l" on remote system "10.30.170.200" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:08.849772" elapsed="0.000645"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:08.851187" level="INFO">${conn_id} = 13</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:08.850637" elapsed="0.000588"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:56:08.852476" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:56:08.852583" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:56:08.852089" elapsed="0.000528"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:08.852840" elapsed="0.000516"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:56:08.854314" level="INFO">Logging into '10.30.170.200:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:56:09.162482" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-173-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:55:13 UTC 2026

  System load:  0.09               Processes:             120
  Usage of /:   11.1% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.200
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

10 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:56:06 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-0-builder-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:56:08.853948" elapsed="0.308641"/>
</kw>
<msg time="2026-05-25T01:56:09.162657" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:08.853589" elapsed="0.309153"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:56:08.851526" elapsed="0.311379"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:56:09.163352" level="INFO">Executing command 'ps axf | grep org.apache.karaf | grep -v grep | wc -l'.</msg>
<msg time="2026-05-25T01:56:09.186188" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:56:09.186434" level="INFO">${stdout} = 1</msg>
<msg time="2026-05-25T01:56:09.186534" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:56:09.163137" elapsed="0.023448"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:09.186957" elapsed="0.000515"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:09.188615" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:09.187913" elapsed="0.000799"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:09.189205" elapsed="0.000043"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:09.188886" elapsed="0.000435"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:09.188833" elapsed="0.000538"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:56:09.189759" elapsed="0.000059"/>
</return>
<status status="PASS" start="2026-05-25T01:56:09.189504" elapsed="0.000386"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:09.189464" elapsed="0.000479"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:09.190018" elapsed="0.000032"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:56:09.197830" elapsed="0.000144"/>
</kw>
<msg time="2026-05-25T01:56:09.198019" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:09.196892" elapsed="0.001209"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:09.198262" elapsed="0.000021"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:09.198424" elapsed="0.000020"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:56:09.190741" elapsed="0.007764"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:56:08.847467" elapsed="0.351197"/>
</kw>
<msg time="2026-05-25T01:56:09.198732" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:08.845187" elapsed="0.353648"/>
</kw>
<arg>@{args}</arg>
<arg>&amp;{kwargs}</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Controller machine.</doc>
<status status="PASS" start="2026-05-25T01:56:08.844034" elapsed="0.354990"/>
</kw>
<msg time="2026-05-25T01:56:09.199090" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${keyword_name}</arg>
<arg>@{args}</arg>
<arg>&amp;{kwargs}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:08.842338" elapsed="0.356803"/>
</kw>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:56:09.202433" elapsed="0.000194"/>
</kw>
<msg time="2026-05-25T01:56:09.202731" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:09.201832" elapsed="0.000964"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:09.202957" elapsed="0.000021"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:09.203144" elapsed="0.000022"/>
</kw>
<arg>${current_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:56:09.199434" elapsed="0.003794"/>
</kw>
<msg time="2026-05-25T01:56:09.203321" level="INFO">${output} = 1</msg>
<var>${output}</var>
<arg>Utils.Run_Command_On_Controller</arg>
<arg>${member_ip}</arg>
<arg>${command}</arg>
<doc>Store current connection index, run keyword returning its result, restore connection in teardown.
Note that in order to avoid "got positional argument after named arguments", it is safer to use positional (not named) arguments on call.</doc>
<status status="PASS" start="2026-05-25T01:56:08.840891" elapsed="0.362455"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:09.203790" level="INFO">1</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:09.203539" elapsed="0.000296"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:56:09.203878" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:56:09.204031" level="INFO">${count} = 1</msg>
<var>${count}</var>
<arg>command=${command}</arg>
<arg>member_index=${member_index}</arg>
<doc>Obtain IP, call Utils and return output. This keeps previous ssh session active.</doc>
<status status="PASS" start="2026-05-25T01:56:08.838749" elapsed="0.365308"/>
</kw>
<return>
<value>${count}</value>
<status status="PASS" start="2026-05-25T01:56:09.204128" elapsed="0.000035"/>
</return>
<msg time="2026-05-25T01:56:09.204293" level="INFO">${count} = 1</msg>
<var>${count}</var>
<arg>member_index=${member_index}</arg>
<doc>Remotely execute grep for karaf process, return count as string.</doc>
<status status="PASS" start="2026-05-25T01:56:08.836511" elapsed="0.367807"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<msg time="2026-05-25T01:56:09.204965" level="FAIL">Found running Karaf count: 1: 0 != 1</msg>
<arg>0</arg>
<arg>${count}</arg>
<arg>Found running Karaf count: ${count}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="FAIL" start="2026-05-25T01:56:09.204539" elapsed="0.000508">Found running Karaf count: 1: 0 != 1</status>
</kw>
<arg>member_index=${index}</arg>
<doc>Fail if non-zero karaf instances are counted on member of given index.</doc>
<status status="FAIL" start="2026-05-25T01:56:08.835431" elapsed="0.369755">Found running Karaf count: 1: 0 != 1</status>
</kw>
<kw name="Verify_Karaf_Is_Not_Running_On_Member" owner="ClusterManagement">
<kw name="Count_Running_Karafs_On_Member" owner="ClusterManagement">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:11.207094" level="INFO">${command} = ps axf | grep org.apache.karaf | grep -v grep | wc -l</msg>
<var>${command}</var>
<arg>${NODE_KARAF_COUNT_COMMAND}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:56:11.206704" elapsed="0.000427"/>
</kw>
<kw name="Run_Bash_Command_On_Member" owner="ClusterManagement">
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:56:11.208044" level="INFO">${member_ip} = 10.30.170.200</msg>
<var>${member_ip}</var>
<arg>dictionary=${ClusterManagement__index_to_ip_mapping}</arg>
<arg>key=${member_index}</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:56:11.207769" elapsed="0.000317"/>
</kw>
<kw name="Run_Keyword_Preserve_Connection" owner="SSHKeywords">
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:11.208860" level="INFO">index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:56:11.208965" level="INFO">${current_connection} = index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:56:11.208725" elapsed="0.000267"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Controller" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:11.213188" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:11.212838" elapsed="0.000410"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:11.212811" elapsed="0.000464"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:11.213565" level="INFO">index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:56:11.213668" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:56:11.213453" elapsed="0.000242"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:11.214378" level="INFO">Attempting to execute command "ps axf | grep org.apache.karaf | grep -v grep | wc -l" on remote system "10.30.170.200" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:11.213850" elapsed="0.000577"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:11.214971" level="INFO">${conn_id} = 14</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:11.214588" elapsed="0.000409"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:56:11.215943" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:56:11.216020" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:56:11.215657" elapsed="0.000386"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:11.216245" elapsed="0.000327"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:56:11.217448" level="INFO">Logging into '10.30.170.200:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:56:11.522225" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-173-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:55:13 UTC 2026

  System load:  0.09               Processes:             120
  Usage of /:   11.1% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.200
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

10 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:56:09 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-0-builder-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:56:11.217117" elapsed="0.305233"/>
</kw>
<msg time="2026-05-25T01:56:11.522436" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:11.216742" elapsed="0.305789"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:56:11.215253" elapsed="0.307400"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:56:11.523208" level="INFO">Executing command 'ps axf | grep org.apache.karaf | grep -v grep | wc -l'.</msg>
<msg time="2026-05-25T01:56:11.546096" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:56:11.546262" level="INFO">${stdout} = 0</msg>
<msg time="2026-05-25T01:56:11.546323" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:56:11.522919" elapsed="0.023436"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:11.546623" elapsed="0.000559"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:11.548633" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:11.547759" elapsed="0.001012"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:11.549450" elapsed="0.000060"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:11.549031" elapsed="0.000577"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:11.548959" elapsed="0.000725"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:56:11.550228" elapsed="0.000089"/>
</return>
<status status="PASS" start="2026-05-25T01:56:11.549856" elapsed="0.000566"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:11.549806" elapsed="0.000696"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:11.550605" elapsed="0.000049"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:56:11.558126" elapsed="0.000181"/>
</kw>
<msg time="2026-05-25T01:56:11.558364" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:11.557415" elapsed="0.001029"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:11.558648" elapsed="0.000028"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:11.558862" elapsed="0.000026"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:56:11.551634" elapsed="0.007334"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:56:11.212176" elapsed="0.347021"/>
</kw>
<msg time="2026-05-25T01:56:11.559280" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:11.210518" elapsed="0.348892"/>
</kw>
<arg>@{args}</arg>
<arg>&amp;{kwargs}</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Controller machine.</doc>
<status status="PASS" start="2026-05-25T01:56:11.209699" elapsed="0.349940"/>
</kw>
<msg time="2026-05-25T01:56:11.559692" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${keyword_name}</arg>
<arg>@{args}</arg>
<arg>&amp;{kwargs}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:11.209170" elapsed="0.350585"/>
</kw>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:56:11.563974" elapsed="0.000275"/>
</kw>
<msg time="2026-05-25T01:56:11.564371" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:11.563274" elapsed="0.001180"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:11.564660" elapsed="0.000028"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:11.564881" elapsed="0.000025"/>
</kw>
<arg>${current_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:56:11.560166" elapsed="0.004805"/>
</kw>
<msg time="2026-05-25T01:56:11.565120" level="INFO">${output} = 0</msg>
<var>${output}</var>
<arg>Utils.Run_Command_On_Controller</arg>
<arg>${member_ip}</arg>
<arg>${command}</arg>
<doc>Store current connection index, run keyword returning its result, restore connection in teardown.
Note that in order to avoid "got positional argument after named arguments", it is safer to use positional (not named) arguments on call.</doc>
<status status="PASS" start="2026-05-25T01:56:11.208311" elapsed="0.356841"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:11.565717" level="INFO">0</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:11.565401" elapsed="0.000369"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:56:11.565825" elapsed="0.000035"/>
</return>
<msg time="2026-05-25T01:56:11.566011" level="INFO">${count} = 0</msg>
<var>${count}</var>
<arg>command=${command}</arg>
<arg>member_index=${member_index}</arg>
<doc>Obtain IP, call Utils and return output. This keeps previous ssh session active.</doc>
<status status="PASS" start="2026-05-25T01:56:11.207349" elapsed="0.358694"/>
</kw>
<return>
<value>${count}</value>
<status status="PASS" start="2026-05-25T01:56:11.566122" elapsed="0.000034"/>
</return>
<msg time="2026-05-25T01:56:11.566316" level="INFO">${count} = 0</msg>
<var>${count}</var>
<arg>member_index=${member_index}</arg>
<doc>Remotely execute grep for karaf process, return count as string.</doc>
<status status="PASS" start="2026-05-25T01:56:11.206317" elapsed="0.360030"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>0</arg>
<arg>${count}</arg>
<arg>Found running Karaf count: ${count}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:56:11.566551" elapsed="0.000446"/>
</kw>
<arg>member_index=${index}</arg>
<doc>Fail if non-zero karaf instances are counted on member of given index.</doc>
<status status="PASS" start="2026-05-25T01:56:11.205739" elapsed="0.361413"/>
</kw>
<arg>${timeout}</arg>
<arg>2s</arg>
<arg>Verify_Karaf_Is_Not_Running_On_Member</arg>
<arg>member_index=${index}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:56:04.049494" elapsed="7.517723"/>
</kw>
<var name="${index}">1</var>
<status status="PASS" start="2026-05-25T01:56:04.049349" elapsed="7.517917"/>
</iter>
<var>${index}</var>
<value>@{stop_index_list}</value>
<status status="PASS" start="2026-05-25T01:56:04.049203" elapsed="7.518107"/>
</for>
<kw name="Run_Bash_Command_On_List_Or_All" owner="ClusterManagement">
<kw name="List_Indices_Or_All" owner="ClusterManagement">
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:11.571413" level="INFO">${return_list_reference} = [1]</msg>
<var>${return_list_reference}</var>
<arg>"""${given_list}""" != ""</arg>
<arg>${given_list}</arg>
<arg>${ClusterManagement__member_index_list}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:11.570910" elapsed="0.000538"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:56:11.572039" level="INFO">${return_list_copy} = [1]</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:56:11.571665" elapsed="0.000441"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-05-25T01:56:11.572163" elapsed="0.000114"/>
</return>
<msg time="2026-05-25T01:56:11.572451" level="INFO">${index_list} = [1]</msg>
<var>${index_list}</var>
<arg>given_list=${member_index_list}</arg>
<doc>Utility to allow ${EMPTY} as default argument value, as the internal list is computed at runtime.
This keyword always returns a (shallow) copy of given or default list,
so operations with the returned list should not affect other lists.
Also note that this keyword does not consider empty list to be ${EMPTY}.</doc>
<status status="PASS" start="2026-05-25T01:56:11.570431" elapsed="0.002051"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Run_Bash_Command_On_Member" owner="ClusterManagement">
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:56:11.573850" level="INFO">${member_ip} = 10.30.170.200</msg>
<var>${member_ip}</var>
<arg>dictionary=${ClusterManagement__index_to_ip_mapping}</arg>
<arg>key=${member_index}</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:56:11.573512" elapsed="0.000370"/>
</kw>
<kw name="Run_Keyword_Preserve_Connection" owner="SSHKeywords">
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:11.574840" level="INFO">index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:56:11.574965" level="INFO">${current_connection} = index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:56:11.574695" elapsed="0.000307"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Controller" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:11.579719" elapsed="0.000075"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:11.578718" elapsed="0.001172"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:11.578692" elapsed="0.001287"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:11.580370" level="INFO">index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:56:11.580644" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:56:11.580234" elapsed="0.000538"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:11.581998" level="INFO">Attempting to execute command "netstat -pnatu | grep 2550" on remote system "10.30.170.200" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:11.581146" elapsed="0.000965"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:11.583378" level="INFO">${conn_id} = 15</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:11.582441" elapsed="0.001056"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:56:11.586052" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:56:11.586295" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:56:11.585558" elapsed="0.000787"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:11.587160" elapsed="0.000556"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:56:11.589966" level="INFO">Logging into '10.30.170.200:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:56:11.904517" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-173-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:55:13 UTC 2026

  System load:  0.09               Processes:             120
  Usage of /:   11.1% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.200
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

10 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:56:11 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-0-builder-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:56:11.589565" elapsed="0.315246"/>
</kw>
<msg time="2026-05-25T01:56:11.904958" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:11.588859" elapsed="0.316233"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:56:11.584010" elapsed="0.321225"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:56:11.906021" level="INFO">Executing command 'netstat -pnatu | grep 2550'.</msg>
<msg time="2026-05-25T01:56:11.919034" level="INFO">Command exited with return code 1.</msg>
<msg time="2026-05-25T01:56:11.919567" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:56:11.919899" level="INFO">${stderr} = bash: line 1: netstat: command not found</msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:56:11.905625" elapsed="0.014532"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:11.921009" elapsed="0.000750"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:11.924413" level="INFO">bash: line 1: netstat: command not found</msg>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:11.923030" elapsed="0.001527"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:11.925225" elapsed="0.000049"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:11.924860" elapsed="0.000490"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:11.924820" elapsed="0.000627"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:56:11.925845" elapsed="0.000057"/>
</return>
<status status="PASS" start="2026-05-25T01:56:11.925568" elapsed="0.000411"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:11.925543" elapsed="0.000554"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:11.926192" elapsed="0.000022"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:56:11.932815" elapsed="0.000212"/>
</kw>
<msg time="2026-05-25T01:56:11.933222" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:11.931712" elapsed="0.001644"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:11.934607" elapsed="0.000078"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:11.935886" elapsed="0.000072"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:56:11.926654" elapsed="0.009433"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:56:11.577652" elapsed="0.358761"/>
</kw>
<msg time="2026-05-25T01:56:11.936491" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:11.576569" elapsed="0.359993"/>
</kw>
<arg>@{args}</arg>
<arg>&amp;{kwargs}</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Controller machine.</doc>
<status status="PASS" start="2026-05-25T01:56:11.575875" elapsed="0.360781"/>
</kw>
<msg time="2026-05-25T01:56:11.936698" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${keyword_name}</arg>
<arg>@{args}</arg>
<arg>&amp;{kwargs}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:11.575223" elapsed="0.361520"/>
</kw>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:56:11.939916" elapsed="0.000141"/>
</kw>
<msg time="2026-05-25T01:56:11.940119" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:11.939409" elapsed="0.000773"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:11.940356" elapsed="0.000023"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:11.940520" elapsed="0.000019"/>
</kw>
<arg>${current_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:56:11.937035" elapsed="0.003564"/>
</kw>
<msg time="2026-05-25T01:56:11.940703" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>Utils.Run_Command_On_Controller</arg>
<arg>${member_ip}</arg>
<arg>${command}</arg>
<doc>Store current connection index, run keyword returning its result, restore connection in teardown.
Note that in order to avoid "got positional argument after named arguments", it is safer to use positional (not named) arguments on call.</doc>
<status status="PASS" start="2026-05-25T01:56:11.574179" elapsed="0.366549"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:11.941251" level="INFO"/>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:11.940919" elapsed="0.000376"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:56:11.941338" elapsed="0.000029"/>
</return>
<arg>command=${command}</arg>
<arg>member_index=${index}</arg>
<doc>Obtain IP, call Utils and return output. This keeps previous ssh session active.</doc>
<status status="PASS" start="2026-05-25T01:56:11.572971" elapsed="0.368538"/>
</kw>
<var name="${index}">1</var>
<status status="PASS" start="2026-05-25T01:56:11.572730" elapsed="0.368819"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="PASS" start="2026-05-25T01:56:11.572557" elapsed="0.369032"/>
</for>
<arg>command=netstat -pnatu | grep 2550</arg>
<doc>Cycle through indices (or all), run command on each.</doc>
<status status="PASS" start="2026-05-25T01:56:11.567583" elapsed="0.374068"/>
</kw>
<return>
<value>${updated_index_list}</value>
<status status="PASS" start="2026-05-25T01:56:11.941693" elapsed="0.000026"/>
</return>
<doc>If the list is empty, stops all ODL instances. Otherwise stop members based on ${stop_index_list}
If ${confirm} is True, verify stopped instances are not there anymore.
The KW will return a list of available members: ${updated index_list}=${original_index_list}-${member_index_list}</doc>
<status status="PASS" start="2026-05-25T01:56:03.310973" elapsed="8.630848"/>
</kw>
<msg time="2026-05-25T01:56:11.941912" level="INFO">${status} = PASS</msg>
<msg time="2026-05-25T01:56:11.941956" level="INFO">${result} = []</msg>
<var>${status}</var>
<var>${result}</var>
<arg>ClusterManagement.Stop_Members_From_List_Or_All</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:56:03.310371" elapsed="8.631608"/>
</kw>
<if>
<branch type="IF" condition="'${status}' != 'PASS'">
<kw name="Kill_Members_From_List_Or_All" owner="ClusterManagement">
<doc>If the list is empty, kill all ODL instances. Otherwise, kill members based on ${kill_index_list}
If ${confirm} is True, sleep 1 second and verify killed instances are not there anymore.
The KW will return a list of available members: ${updated index_list}=${original_index_list}-${member_index_list}</doc>
<status status="NOT RUN" start="2026-05-25T01:56:11.942498" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:11.942058" elapsed="0.000498"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:11.942039" elapsed="0.000541"/>
</if>
<kw name="Start_Members_From_List_Or_All" owner="ClusterManagement">
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:11.954856" level="INFO">${base_command} = /tmp/karaf-0.22.3/bin/start</msg>
<var>${base_command}</var>
<arg>"""${karaf_home}""" != ""</arg>
<arg>${karaf_home}/bin/start</arg>
<arg>${NODE_START_COMMAND}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:11.954466" elapsed="0.000418"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:11.955440" level="INFO">${command} = /tmp/karaf-0.22.3/bin/start</msg>
<var>${command}</var>
<arg>"""${export_java_home}""" != ""</arg>
<arg>export JAVA_HOME="${export_java_home}"; ${base_command}</arg>
<arg>${base_command}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:11.955056" elapsed="0.000411"/>
</kw>
<kw name="Get Current Date" owner="DateTime">
<msg time="2026-05-25T01:56:11.955912" level="INFO">${epoch} = 1779674171.955836</msg>
<var>${epoch}</var>
<arg>time_zone=UTC</arg>
<arg>result_format=epoch</arg>
<arg>exclude_millis=False</arg>
<doc>Returns current local or UTC time with an optional increment.</doc>
<status status="PASS" start="2026-05-25T01:56:11.955633" elapsed="0.000305"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:11.956569" level="INFO">${gc_filepath} = /tmp/karaf-0.22.3/data/log/gc_1779674171.955836.log</msg>
<var>${gc_filepath}</var>
<arg>"""${karaf_home}""" != ""</arg>
<arg>${karaf_home}/data/log/gc_${epoch}.log</arg>
<arg>${GC_LOG_PATH}/gc_${epoch}.log</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:11.956139" elapsed="0.000458"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:11.957162" level="INFO">${gc_options} = -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:/tmp/karaf-0.22.3/data/log/gc_1779674171.955836.log</msg>
<var>${gc_options}</var>
<arg>"docker" not in """${node_start_command}"""</arg>
<arg>-XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:${gc_filepath}</arg>
<arg>${EMPTY}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:11.956768" elapsed="0.000421"/>
</kw>
<kw name="Run_Bash_Command_On_List_Or_All" owner="ClusterManagement">
<kw name="List_Indices_Or_All" owner="ClusterManagement">
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:11.958681" level="INFO">${return_list_reference} = [1]</msg>
<var>${return_list_reference}</var>
<arg>"""${given_list}""" != ""</arg>
<arg>${given_list}</arg>
<arg>${ClusterManagement__member_index_list}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:11.958307" elapsed="0.000400"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:56:11.959179" level="INFO">${return_list_copy} = [1]</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:56:11.958868" elapsed="0.000337"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-05-25T01:56:11.959249" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:56:11.959401" level="INFO">${index_list} = [1]</msg>
<var>${index_list}</var>
<arg>given_list=${member_index_list}</arg>
<doc>Utility to allow ${EMPTY} as default argument value, as the internal list is computed at runtime.
This keyword always returns a (shallow) copy of given or default list,
so operations with the returned list should not affect other lists.
Also note that this keyword does not consider empty list to be ${EMPTY}.</doc>
<status status="PASS" start="2026-05-25T01:56:11.957920" elapsed="0.001505"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Run_Bash_Command_On_Member" owner="ClusterManagement">
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:56:11.960868" level="INFO">${member_ip} = 10.30.170.200</msg>
<var>${member_ip}</var>
<arg>dictionary=${ClusterManagement__index_to_ip_mapping}</arg>
<arg>key=${member_index}</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:56:11.960506" elapsed="0.000401"/>
</kw>
<kw name="Run_Keyword_Preserve_Connection" owner="SSHKeywords">
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:11.962306" level="INFO">index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:56:11.962459" level="INFO">${current_connection} = index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:56:11.961812" elapsed="0.000688"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Controller" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:11.965890" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:11.965603" elapsed="0.000398"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:11.965579" elapsed="0.000450"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:11.966308" level="INFO">index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:56:11.966408" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:56:11.966198" elapsed="0.000238"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:11.967327" level="INFO">Attempting to execute command "/tmp/karaf-0.22.3/bin/start -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:/tmp/karaf-0.22.3/data/log/gc_1779674171.955836.log" on remote system "10.30.170.200" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:11.966587" elapsed="0.000789"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:11.968123" level="INFO">${conn_id} = 16</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:11.967536" elapsed="0.000614"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:56:11.969396" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:56:11.969501" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:56:11.968880" elapsed="0.000695"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:11.969859" elapsed="0.000699"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:56:11.972597" level="INFO">Logging into '10.30.170.200:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:56:12.282020" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-173-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:55:13 UTC 2026

  System load:  0.09               Processes:             120
  Usage of /:   11.1% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.200
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

10 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:56:11 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-0-builder-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:56:11.972149" elapsed="0.310322"/>
</kw>
<msg time="2026-05-25T01:56:12.282669" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:11.970957" elapsed="0.311929"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:56:11.968377" elapsed="0.315315"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:56:12.284853" level="INFO">Executing command '/tmp/karaf-0.22.3/bin/start -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:/tmp/karaf-0.22.3/data/log/gc_1779674171.955836.log'.</msg>
<msg time="2026-05-25T01:56:12.307146" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:56:12.307403" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:56:12.307499" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:56:12.284300" elapsed="0.023264"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:12.307970" elapsed="0.000492"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:12.309882" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:12.308959" elapsed="0.001021"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:12.310519" elapsed="0.000042"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:12.310208" elapsed="0.000444"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:12.310144" elapsed="0.000577"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:56:12.311150" elapsed="0.000064"/>
</return>
<status status="PASS" start="2026-05-25T01:56:12.310851" elapsed="0.000438"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:12.310815" elapsed="0.000526"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:12.311415" elapsed="0.000033"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:56:12.323811" elapsed="0.000602"/>
</kw>
<msg time="2026-05-25T01:56:12.324500" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:12.321777" elapsed="0.002841"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:12.324988" elapsed="0.000044"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:12.325358" elapsed="0.000034"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:56:12.312218" elapsed="0.013411"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:56:11.965049" elapsed="0.360720"/>
</kw>
<msg time="2026-05-25T01:56:12.325849" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:11.964306" elapsed="0.361616"/>
</kw>
<arg>@{args}</arg>
<arg>&amp;{kwargs}</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Controller machine.</doc>
<status status="PASS" start="2026-05-25T01:56:11.963488" elapsed="0.362563"/>
</kw>
<msg time="2026-05-25T01:56:12.326148" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${keyword_name}</arg>
<arg>@{args}</arg>
<arg>&amp;{kwargs}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:11.962733" elapsed="0.363488"/>
</kw>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:56:12.330432" elapsed="0.000160"/>
</kw>
<msg time="2026-05-25T01:56:12.330638" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:12.329905" elapsed="0.000795"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:12.330858" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:12.331019" elapsed="0.000020"/>
</kw>
<arg>${current_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:56:12.326658" elapsed="0.004482"/>
</kw>
<msg time="2026-05-25T01:56:12.331238" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>Utils.Run_Command_On_Controller</arg>
<arg>${member_ip}</arg>
<arg>${command}</arg>
<doc>Store current connection index, run keyword returning its result, restore connection in teardown.
Note that in order to avoid "got positional argument after named arguments", it is safer to use positional (not named) arguments on call.</doc>
<status status="PASS" start="2026-05-25T01:56:11.961237" elapsed="0.370027"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:12.331720" level="INFO"/>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:12.331455" elapsed="0.000331"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:56:12.331831" elapsed="0.000029"/>
</return>
<arg>command=${command}</arg>
<arg>member_index=${index}</arg>
<doc>Obtain IP, call Utils and return output. This keeps previous ssh session active.</doc>
<status status="PASS" start="2026-05-25T01:56:11.960048" elapsed="0.371911"/>
</kw>
<var name="${index}">1</var>
<status status="PASS" start="2026-05-25T01:56:11.959626" elapsed="0.372373"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="PASS" start="2026-05-25T01:56:11.959487" elapsed="0.372555"/>
</for>
<arg>command=${command} ${gc_options}</arg>
<arg>member_index_list=${member_index_list}</arg>
<doc>Cycle through indices (or all), run command on each.</doc>
<status status="PASS" start="2026-05-25T01:56:11.957403" elapsed="0.374730"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Verify_Members_Are_Ready" owner="ClusterManagement">
<if>
<branch type="IF" condition="${verify_cluster_sync}">
<kw name="Check_Cluster_Is_In_Sync" owner="ClusterManagement">
<arg>${member_index_list}</arg>
<doc>Fail if no-sync is detected on a member from list (or any).</doc>
<status status="NOT RUN" start="2026-05-25T01:56:12.342153" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:12.341815" elapsed="0.000401"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:12.341794" elapsed="0.000450"/>
</if>
<if>
<branch type="IF" condition="${verify_restconf}">
<kw name="Verify_Restconf_Is_Available" owner="ClusterManagement">
<kw name="List_Indices_Or_All" owner="ClusterManagement">
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:12.344023" level="INFO">${return_list_reference} = [1]</msg>
<var>${return_list_reference}</var>
<arg>"""${given_list}""" != ""</arg>
<arg>${given_list}</arg>
<arg>${ClusterManagement__member_index_list}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:12.343572" elapsed="0.000486"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:56:12.344592" level="INFO">${return_list_copy} = [1]</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:56:12.344273" elapsed="0.000348"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-05-25T01:56:12.344667" elapsed="0.000033"/>
</return>
<msg time="2026-05-25T01:56:12.344827" level="INFO">${index_list} = [1]</msg>
<var>${index_list}</var>
<arg>given_list=${member_index_list}</arg>
<doc>Utility to allow ${EMPTY} as default argument value, as the internal list is computed at runtime.
This keyword always returns a (shallow) copy of given or default list,
so operations with the returned list should not affect other lists.
Also note that this keyword does not consider empty list to be ${EMPTY}.</doc>
<status status="PASS" start="2026-05-25T01:56:12.342968" elapsed="0.001884"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Resolve_Http_Session_For_Member" owner="ClusterManagement">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:12.345935" level="INFO">${session} = ClusterManagement__session_1</msg>
<var>${session}</var>
<arg>ClusterManagement__session_${member_index}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:56:12.345633" elapsed="0.000329"/>
</kw>
<return>
<value>${session}</value>
<status status="PASS" start="2026-05-25T01:56:12.346008" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:56:12.346175" level="INFO">${session} = ClusterManagement__session_1</msg>
<var>${session}</var>
<arg>member_index=${index}</arg>
<doc>Return RequestsLibrary session alias pointing to node of given index.</doc>
<status status="PASS" start="2026-05-25T01:56:12.345269" elapsed="0.000931"/>
</kw>
<kw name="Get_As_Json_Templated" owner="TemplatedRequests">
<kw name="Get_Templated" owner="TemplatedRequests">
<kw name="Resolve_Text_From_Template_Folder" owner="TemplatedRequests">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:12.431189" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules.titanium/location.uri</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:56:12.430543" elapsed="0.000741"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:56:12.433263" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/restconf/modules.titanium/location.uri' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:56:12.432939" elapsed="0.000409">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/restconf/modules.titanium/location.uri' does not exist.</status>
</kw>
<msg time="2026-05-25T01:56:12.433536" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:56:12.432395" elapsed="0.001229"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:12.435202" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules/location.uri</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:12.434529" elapsed="0.000766"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:56:12.436619" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/restconf/modules/location.uri"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/restconf/modules/location.uri&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:56:12.436894" level="INFO">${template} = /rests/data/ietf-yang-library:modules-state?content=nonconfig
</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:56:12.436318" elapsed="0.000671"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:12.438265" level="INFO">/rests/data/ietf-yang-library:modules-state?content=nonconfig
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:12.437852" elapsed="0.000513"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:12.439791" level="INFO">mapping: {}</msg>
<arg>mapping: ${mapping}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:12.439497" elapsed="0.000339"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:56:12.440365" level="INFO">${encoded_mapping} = {}</msg>
<var>${encoded_mapping}</var>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:56:12.440016" elapsed="0.000375"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Convert To String" owner="BuiltIn">
<var>${value}</var>
<arg>${value}</arg>
<doc>Converts the given item to a Unicode string.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:12.440725" elapsed="0.000022"/>
</kw>
<kw name="Percent_Encode_String" owner="TemplatedRequests">
<var>${encoded_value}</var>
<arg>${value}</arg>
<doc>Percent encodes reserved characters in the given string so it can be used as part of url.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:12.440934" elapsed="0.000027"/>
</kw>
<kw name="Set To Dictionary" owner="Collections">
<arg>${encoded_mapping}</arg>
<arg>${key}</arg>
<arg>${encoded_value}</arg>
<doc>Adds the given ``key_value_pairs`` and/or ``items`` to the ``dictionary``.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:12.441206" elapsed="0.000023"/>
</kw>
<var name="${key}"/>
<var name="${value}"/>
<status status="NOT RUN" start="2026-05-25T01:56:12.440582" elapsed="0.000686"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="NOT RUN" start="2026-05-25T01:56:12.440441" elapsed="0.000859"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-05-25T01:56:12.441345" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:56:12.441531" level="INFO">${mapping_to_use} = {}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-05-25T01:56:12.439113" elapsed="0.002466"/>
</kw>
<status status="PASS" start="2026-05-25T01:56:12.438511" elapsed="0.003112"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:12.441967" elapsed="0.000044"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:12.441691" elapsed="0.000364"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:12.438459" elapsed="0.003668"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:56:12.443769" level="INFO">${final_text} = /rests/data/ietf-yang-library:modules-state?content=nonconfig</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:56:12.443005" elapsed="0.000855"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:56:12.443941" elapsed="0.000052"/>
</return>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:56:12.428562" elapsed="0.015696"/>
</kw>
<msg time="2026-05-25T01:56:12.444600" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>not "${iterations}"</arg>
<arg>Resolve_Text_From_Template_File</arg>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:12.382417" elapsed="0.062241"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${prolog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.prolog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:12.457163" elapsed="0.000030"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${epilog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.epilog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:12.469267" elapsed="0.000028"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${item_template}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${base_name}.item.${extension}</arg>
<arg>mapping=${mapping}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:12.481418" elapsed="0.000029"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:12.481617" elapsed="0.000022"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<var>${separator}</var>
<arg>'${extension}' != 'json'</arg>
<arg>${endline}</arg>
<arg>,${endline}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:12.481793" elapsed="0.000021"/>
</kw>
<for flavor="IN RANGE">
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:12.482243" elapsed="0.000046"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:12.482090" elapsed="0.000299"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:56:12.482051" elapsed="0.000364"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:12.482556" elapsed="0.000021"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:12.482723" elapsed="0.000020"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:12.482887" elapsed="0.000020"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-05-25T01:56:12.482020" elapsed="0.000919"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-05-25T01:56:12.481870" elapsed="0.001094"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<var>${final_text}</var>
<arg>SEPARATOR=</arg>
<arg>${prolog}</arg>
<arg>${endline}</arg>
<arg>@{items}</arg>
<arg>${endline}</arg>
<arg>${epilog}</arg>
<doc>Catenates the given items together and returns the resulted string.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:12.483124" elapsed="0.000022"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-05-25T01:56:12.483202" elapsed="0.000015"/>
</return>
<msg time="2026-05-25T01:56:12.483319" level="INFO">${uri} = /rests/data/ietf-yang-library:modules-state?content=nonconfig</msg>
<var>${uri}</var>
<arg>folder=${folder}</arg>
<arg>base_name=location</arg>
<arg>extension=uri</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=True</arg>
<doc>Read a template from folder, strip endline, make changes according to mapping, return the result.
If ${iterations} value is present, put text together from "prolog", "item" and "epilog" parts,
where additional template variable ${i} goes from ${iter_start}, by one ${iterations} times.
Template variable ${j} is calculated as ${i} incremented by offset ${iter_j_offset} ( j = i + iter_j_offset )
used to create non uniform data in order to be able to validate UPDATE operations.
POST (as opposed to PUT) needs slightly different data, ${name_prefix} may be used to distinguish.
(Actually, it is GET who formats data differently when URI is a top-level container.)</doc>
<status status="PASS" start="2026-05-25T01:56:12.378203" elapsed="0.105142"/>
</kw>
<kw name="Resolve_Jmes_Path" owner="TemplatedRequests">
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:56:12.484792" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/restconf/modules/jmespath.expr' does not exist.</msg>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:56:12.484404" elapsed="0.000521">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/restconf/modules/jmespath.expr' does not exist.</status>
</kw>
<msg time="2026-05-25T01:56:12.485136" level="INFO">${read_jmes_file} = False</msg>
<var>${read_jmes_file}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:56:12.484043" elapsed="0.001119"/>
</kw>
<if>
<branch type="IF" condition="${read_jmes_file} == ${true}">
<kw name="Get File" owner="OperatingSystem">
<var>${jmes_expression}</var>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:12.485481" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:12.485234" elapsed="0.000304"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:12.486266" level="INFO">${jmes_expression} = None</msg>
<var>${jmes_expression}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:56:12.485760" elapsed="0.000533"/>
</kw>
<status status="PASS" start="2026-05-25T01:56:12.485561" elapsed="0.000768"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:12.485215" elapsed="0.001136"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:12.488735" level="INFO">${expression} = </msg>
<var>${expression}</var>
<arg>${read_jmes_file} == ${true}</arg>
<arg>${jmes_expression}</arg>
<arg>${EMPTY}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:12.486503" elapsed="0.002259"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-05-25T01:56:12.488813" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:56:12.488966" level="INFO">${jmes_expression} = </msg>
<var>${jmes_expression}</var>
<arg>${folder}</arg>
<doc>Reads JMES path from file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules/jmespath.expr if the file exists and
returns the JMES path. Empty string is returned otherwise.</doc>
<status status="PASS" start="2026-05-25T01:56:12.483718" elapsed="0.005273"/>
</kw>
<kw name="Resolve_Volatiles_Path" owner="TemplatedRequests">
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:56:12.490414" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/restconf/modules/volatiles.list' does not exist.</msg>
<arg>${folder}${/}volatiles.list</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:56:12.490012" elapsed="0.000533">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/restconf/modules/volatiles.list' does not exist.</status>
</kw>
<msg time="2026-05-25T01:56:12.490742" level="INFO">${read_volatiles_file} = False</msg>
<var>${read_volatiles_file}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${folder}${/}volatiles.list</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:56:12.489672" elapsed="0.001096"/>
</kw>
<if>
<branch type="IF" condition="${read_volatiles_file} == ${false}">
<return>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:56:12.490975" elapsed="0.000025"/>
</return>
<status status="PASS" start="2026-05-25T01:56:12.490840" elapsed="0.000193"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:12.490820" elapsed="0.000241"/>
</if>
<kw name="Get File" owner="OperatingSystem">
<var>${volatiles}</var>
<arg>${folder}${/}volatiles.list</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:12.491248" elapsed="0.000023"/>
</kw>
<kw name="Split String" owner="String">
<var>${volatiles_list}</var>
<arg>${volatiles}</arg>
<arg>${\n}</arg>
<doc>Splits the ``string`` using ``separator`` as a delimiter string.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:12.491421" elapsed="0.000021"/>
</kw>
<return>
<value>${volatiles_list}</value>
<status status="NOT RUN" start="2026-05-25T01:56:12.491486" elapsed="0.000024"/>
</return>
<msg time="2026-05-25T01:56:12.493503" level="INFO">${volatiles_list} = </msg>
<var>${volatiles_list}</var>
<arg>${folder}</arg>
<doc>Reads Volatiles List from file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules/volatiles.list if the file exists and
returns the Volatiles List. Empty string is returned otherwise.</doc>
<status status="PASS" start="2026-05-25T01:56:12.489347" elapsed="0.004183"/>
</kw>
<kw name="Get_From_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:12.494986" level="INFO">/rests/data/ietf-yang-library:modules-state?content=nonconfig</msg>
<arg>${uri}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:12.494714" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:12.495473" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:12.495209" elapsed="0.000317"/>
</kw>
<if>
<branch type="IF" condition="&quot;&quot;&quot;${http_timeout}&quot;&quot;&quot; == &quot;&quot;&quot;${EMPTY}&quot;&quot;&quot;">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:12.501051" level="FAIL">ConnectionError: HTTPConnectionPool(host='10.30.170.200', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.200', port=8181): Failed to establish a new connection: [Errno 111] Connection refused"))</msg>
<var>${response}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>headers=${accept}</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="FAIL" start="2026-05-25T01:56:12.497582" elapsed="0.008512">ConnectionError: HTTPConnectionPool(host='10.30.170.200', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.200', port=8181): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
</kw>
<status status="FAIL" start="2026-05-25T01:56:12.495594" elapsed="0.010593">ConnectionError: HTTPConnectionPool(host='10.30.170.200', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.200', port=8181): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
</branch>
<branch type="ELSE">
<kw name="GET On Session" owner="RequestsLibrary">
<var>${response}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>headers=${accept}</arg>
<arg>timeout=${http_timeout}</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:12.506375" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:12.506222" elapsed="0.000218"/>
</branch>
<status status="FAIL" start="2026-05-25T01:56:12.495575" elapsed="0.010888">ConnectionError: HTTPConnectionPool(host='10.30.170.200', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.200', port=8181): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
</if>
<kw name="Check_Status_Code" owner="TemplatedRequests">
<arg>${response}</arg>
<arg>log_response=${log_response}</arg>
<doc>Log response text, check status_code is one of allowed ones. In cases where this keyword is
called in a WUKS it could end up logging tons of data and it may be desired to skip the logging by passing
log_response=False, but by default it remains True.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:12.506973" elapsed="0.000027"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-05-25T01:56:12.507149" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:12.507109" elapsed="0.000081"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:56:12.507053" elapsed="0.000159"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<var>${text_normalized}</var>
<arg>${response.text}</arg>
<arg>jmes_path=${jmes_path}</arg>
<arg>keys_with_volatiles=${keys_with_volatiles}</arg>
<doc>Attempt to return sorted indented JSON string.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:12.507358" elapsed="0.000022"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="NOT RUN" start="2026-05-25T01:56:12.507428" elapsed="0.000015"/>
</return>
<var>${response_text}</var>
<arg>uri=${uri}</arg>
<arg>accept=${accept}</arg>
<arg>session=${session}</arg>
<arg>normalize_json=${normalize_json}</arg>
<arg>jmes_path=${jmes_expression}</arg>
<arg>http_timeout=${http_timeout}</arg>
<arg>keys_with_volatiles=${volatiles_list}</arg>
<arg>log_response=${log_response}</arg>
<doc>GET data from given URI, check status code and return response text.
${accept} is a Python object with headers to use.
If ${normalize_json}, normalize as JSON text before returning.</doc>
<status status="FAIL" start="2026-05-25T01:56:12.493873" elapsed="0.013678">ConnectionError: HTTPConnectionPool(host='10.30.170.200', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.200', port=8181): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
</kw>
<return>
<value>${response_text}</value>
<status status="NOT RUN" start="2026-05-25T01:56:12.507633" elapsed="0.000016"/>
</return>
<var>${response_text}</var>
<arg>folder=${folder}</arg>
<arg>mapping=${mapping}</arg>
<arg>accept=${ACCEPT_EMPTY}</arg>
<arg>session=${session}</arg>
<arg>normalize_json=True</arg>
<arg>http_timeout=${http_timeout}</arg>
<arg>log_response=${log_response}</arg>
<doc>Resolve URI from folder, call Get_From_Uri, return response text.</doc>
<status status="FAIL" start="2026-05-25T01:56:12.356518" elapsed="0.151213">ConnectionError: HTTPConnectionPool(host='10.30.170.200', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.200', port=8181): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
</kw>
<if>
<branch type="IF" condition="${verify}">
<kw name="Verify_Response_As_Json_Templated" owner="TemplatedRequests">
<arg>response=${response_text}</arg>
<arg>folder=${folder}</arg>
<arg>base_name=data</arg>
<arg>mapping=${mapping}</arg>
<arg>iterations=${iterations}</arg>
<arg>iter_start=${iter_start}</arg>
<arg>iter_j_offset=${iter_j_offset}</arg>
<doc>Resolve expected JSON data, should be equal to provided ${response}.
JSON normalization is used, endlines enabled for readability.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:12.508043" elapsed="0.000039"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:12.507864" elapsed="0.000269"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:56:12.507846" elapsed="0.000310"/>
</if>
<return>
<value>${response_text}</value>
<status status="NOT RUN" start="2026-05-25T01:56:12.508190" elapsed="0.000014"/>
</return>
<arg>session=${session}</arg>
<arg>folder=${RESTCONF_MODULES_DIR}</arg>
<arg>verify=False</arg>
<doc>Add arguments sensible for JSON data, return Get_Templated response text.
Optionally, verification against JSON data (may be iterated) is called.
Only subset of JSON data is verified and returned if JMES path is specified in
file ${folder}/jmespath.expr.</doc>
<status status="FAIL" start="2026-05-25T01:56:12.350532" elapsed="0.157758">ConnectionError: HTTPConnectionPool(host='10.30.170.200', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.200', port=8181): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
</kw>
<var name="${index}">1</var>
<status status="FAIL" start="2026-05-25T01:56:12.345087" elapsed="0.163269">ConnectionError: HTTPConnectionPool(host='10.30.170.200', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.200', port=8181): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="FAIL" start="2026-05-25T01:56:12.344917" elapsed="0.163497">ConnectionError: HTTPConnectionPool(host='10.30.170.200', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.200', port=8181): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
</for>
<arg>${member_index_list}</arg>
<status status="FAIL" start="2026-05-25T01:56:12.342585" elapsed="0.165923">ConnectionError: HTTPConnectionPool(host='10.30.170.200', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.200', port=8181): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
</kw>
<status status="FAIL" start="2026-05-25T01:56:12.342324" elapsed="0.166238">ConnectionError: HTTPConnectionPool(host='10.30.170.200', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.200', port=8181): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
</branch>
<status status="FAIL" start="2026-05-25T01:56:12.342289" elapsed="0.166304">ConnectionError: HTTPConnectionPool(host='10.30.170.200', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.200', port=8181): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
</if>
<if>
<branch type="IF" condition="${verify_system_status} and (&quot;${service_list}&quot; != &quot;[[]]&quot;)">
<kw name="Check Status Of Services Is OPERATIONAL" owner="ClusterManagement">
<arg>@{service_list}</arg>
<doc>This keyword will verify whether all the services are operational in all the ODL nodes</doc>
<status status="NOT RUN" start="2026-05-25T01:56:12.508876" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:12.508659" elapsed="0.000272"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:56:12.508643" elapsed="0.000311"/>
</if>
<arg>${member_index_list}</arg>
<arg>${wait_for_sync}</arg>
<arg>${verify_restconf}</arg>
<arg>${check_system_status}</arg>
<arg>${service_list}</arg>
<doc>Verifies the specified readiness conditions for the given listed members after startup.
If ${verify_cluster_sync}, verifies the datastores have synced with the rest of the cluster.
If True, verifies RESTCONF is available.
If ${verify_system_status}, verifies the system services are OPERATIONAL.</doc>
<status status="FAIL" start="2026-05-25T01:56:12.341394" elapsed="0.167638">ConnectionError: HTTPConnectionPool(host='10.30.170.200', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.200', port=8181): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
</kw>
<kw name="Verify_Members_Are_Ready" owner="ClusterManagement">
<if>
<branch type="IF" condition="${verify_cluster_sync}">
<kw name="Check_Cluster_Is_In_Sync" owner="ClusterManagement">
<arg>${member_index_list}</arg>
<doc>Fail if no-sync is detected on a member from list (or any).</doc>
<status status="NOT RUN" start="2026-05-25T01:56:22.526409" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:22.526046" elapsed="0.000435"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:22.526021" elapsed="0.000486"/>
</if>
<if>
<branch type="IF" condition="${verify_restconf}">
<kw name="Verify_Restconf_Is_Available" owner="ClusterManagement">
<kw name="List_Indices_Or_All" owner="ClusterManagement">
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:22.528118" level="INFO">${return_list_reference} = [1]</msg>
<var>${return_list_reference}</var>
<arg>"""${given_list}""" != ""</arg>
<arg>${given_list}</arg>
<arg>${ClusterManagement__member_index_list}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:22.527650" elapsed="0.000499"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:56:22.528625" level="INFO">${return_list_copy} = [1]</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:56:22.528316" elapsed="0.000336"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-05-25T01:56:22.528701" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:56:22.528869" level="INFO">${index_list} = [1]</msg>
<var>${index_list}</var>
<arg>given_list=${member_index_list}</arg>
<doc>Utility to allow ${EMPTY} as default argument value, as the internal list is computed at runtime.
This keyword always returns a (shallow) copy of given or default list,
so operations with the returned list should not affect other lists.
Also note that this keyword does not consider empty list to be ${EMPTY}.</doc>
<status status="PASS" start="2026-05-25T01:56:22.527232" elapsed="0.001663"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Resolve_Http_Session_For_Member" owner="ClusterManagement">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:22.529929" level="INFO">${session} = ClusterManagement__session_1</msg>
<var>${session}</var>
<arg>ClusterManagement__session_${member_index}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:56:22.529627" elapsed="0.000408"/>
</kw>
<return>
<value>${session}</value>
<status status="PASS" start="2026-05-25T01:56:22.530100" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:56:22.530253" level="INFO">${session} = ClusterManagement__session_1</msg>
<var>${session}</var>
<arg>member_index=${index}</arg>
<doc>Return RequestsLibrary session alias pointing to node of given index.</doc>
<status status="PASS" start="2026-05-25T01:56:22.529279" elapsed="0.000999"/>
</kw>
<kw name="Get_As_Json_Templated" owner="TemplatedRequests">
<kw name="Get_Templated" owner="TemplatedRequests">
<kw name="Resolve_Text_From_Template_Folder" owner="TemplatedRequests">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:22.616447" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules.titanium/location.uri</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:56:22.615040" elapsed="0.001501"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:56:22.618203" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/restconf/modules.titanium/location.uri' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:56:22.617920" elapsed="0.000362">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/restconf/modules.titanium/location.uri' does not exist.</status>
</kw>
<msg time="2026-05-25T01:56:22.618469" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:56:22.617441" elapsed="0.001116"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:22.620292" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules/location.uri</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:22.619648" elapsed="0.000734"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:56:22.621544" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/restconf/modules/location.uri"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/restconf/modules/location.uri&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:56:22.621803" level="INFO">${template} = /rests/data/ietf-yang-library:modules-state?content=nonconfig
</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:56:22.621248" elapsed="0.000650"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:22.623274" level="INFO">/rests/data/ietf-yang-library:modules-state?content=nonconfig
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:22.622764" elapsed="0.000610"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:22.624703" level="INFO">mapping: {}</msg>
<arg>mapping: ${mapping}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:22.624440" elapsed="0.000308"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:56:22.625194" level="INFO">${encoded_mapping} = {}</msg>
<var>${encoded_mapping}</var>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:56:22.624910" elapsed="0.000310"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Convert To String" owner="BuiltIn">
<var>${value}</var>
<arg>${value}</arg>
<doc>Converts the given item to a Unicode string.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:22.625543" elapsed="0.000022"/>
</kw>
<kw name="Percent_Encode_String" owner="TemplatedRequests">
<var>${encoded_value}</var>
<arg>${value}</arg>
<doc>Percent encodes reserved characters in the given string so it can be used as part of url.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:22.625748" elapsed="0.000023"/>
</kw>
<kw name="Set To Dictionary" owner="Collections">
<arg>${encoded_mapping}</arg>
<arg>${key}</arg>
<arg>${encoded_value}</arg>
<doc>Adds the given ``key_value_pairs`` and/or ``items`` to the ``dictionary``.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:22.625923" elapsed="0.000027"/>
</kw>
<var name="${key}"/>
<var name="${value}"/>
<status status="NOT RUN" start="2026-05-25T01:56:22.625409" elapsed="0.000579"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="NOT RUN" start="2026-05-25T01:56:22.625272" elapsed="0.000747"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-05-25T01:56:22.626063" elapsed="0.000044"/>
</return>
<msg time="2026-05-25T01:56:22.626264" level="INFO">${mapping_to_use} = {}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-05-25T01:56:22.624055" elapsed="0.002256"/>
</kw>
<status status="PASS" start="2026-05-25T01:56:22.623517" elapsed="0.002834"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:22.626664" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:22.626406" elapsed="0.000334"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:22.623467" elapsed="0.003322"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:56:22.628578" level="INFO">${final_text} = /rests/data/ietf-yang-library:modules-state?content=nonconfig</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:56:22.627866" elapsed="0.000810"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:56:22.628763" elapsed="0.000051"/>
</return>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:56:22.611977" elapsed="0.017064"/>
</kw>
<msg time="2026-05-25T01:56:22.629329" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>not "${iterations}"</arg>
<arg>Resolve_Text_From_Template_File</arg>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:22.565702" elapsed="0.063683"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${prolog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.prolog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:22.641874" elapsed="0.000030"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${epilog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.epilog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:22.653823" elapsed="0.000028"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${item_template}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${base_name}.item.${extension}</arg>
<arg>mapping=${mapping}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:22.665735" elapsed="0.000028"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:22.665932" elapsed="0.000023"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<var>${separator}</var>
<arg>'${extension}' != 'json'</arg>
<arg>${endline}</arg>
<arg>,${endline}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:22.666125" elapsed="0.000022"/>
</kw>
<for flavor="IN RANGE">
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:22.666552" elapsed="0.000045"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:22.666403" elapsed="0.000294"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:56:22.666388" elapsed="0.000334"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:22.666887" elapsed="0.000026"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:22.667063" elapsed="0.000043"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:22.667253" elapsed="0.000021"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-05-25T01:56:22.666357" elapsed="0.000949"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-05-25T01:56:22.666210" elapsed="0.001121"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<var>${final_text}</var>
<arg>SEPARATOR=</arg>
<arg>${prolog}</arg>
<arg>${endline}</arg>
<arg>@{items}</arg>
<arg>${endline}</arg>
<arg>${epilog}</arg>
<doc>Catenates the given items together and returns the resulted string.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:22.667496" elapsed="0.000022"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-05-25T01:56:22.667575" elapsed="0.000015"/>
</return>
<msg time="2026-05-25T01:56:22.667692" level="INFO">${uri} = /rests/data/ietf-yang-library:modules-state?content=nonconfig</msg>
<var>${uri}</var>
<arg>folder=${folder}</arg>
<arg>base_name=location</arg>
<arg>extension=uri</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=True</arg>
<doc>Read a template from folder, strip endline, make changes according to mapping, return the result.
If ${iterations} value is present, put text together from "prolog", "item" and "epilog" parts,
where additional template variable ${i} goes from ${iter_start}, by one ${iterations} times.
Template variable ${j} is calculated as ${i} incremented by offset ${iter_j_offset} ( j = i + iter_j_offset )
used to create non uniform data in order to be able to validate UPDATE operations.
POST (as opposed to PUT) needs slightly different data, ${name_prefix} may be used to distinguish.
(Actually, it is GET who formats data differently when URI is a top-level container.)</doc>
<status status="PASS" start="2026-05-25T01:56:22.561431" elapsed="0.106287"/>
</kw>
<kw name="Resolve_Jmes_Path" owner="TemplatedRequests">
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:56:22.669167" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/restconf/modules/jmespath.expr' does not exist.</msg>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:56:22.668770" elapsed="0.000533">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/restconf/modules/jmespath.expr' does not exist.</status>
</kw>
<msg time="2026-05-25T01:56:22.669500" level="INFO">${read_jmes_file} = False</msg>
<var>${read_jmes_file}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:56:22.668426" elapsed="0.001099"/>
</kw>
<if>
<branch type="IF" condition="${read_jmes_file} == ${true}">
<kw name="Get File" owner="OperatingSystem">
<var>${jmes_expression}</var>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:22.669844" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:22.669597" elapsed="0.000345"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:22.670666" level="INFO">${jmes_expression} = None</msg>
<var>${jmes_expression}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:56:22.670186" elapsed="0.000507"/>
</kw>
<status status="PASS" start="2026-05-25T01:56:22.669969" elapsed="0.000761"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:22.669578" elapsed="0.001173"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:22.673172" level="INFO">${expression} = </msg>
<var>${expression}</var>
<arg>${read_jmes_file} == ${true}</arg>
<arg>${jmes_expression}</arg>
<arg>${EMPTY}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:22.670930" elapsed="0.002268"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-05-25T01:56:22.673250" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:56:22.673403" level="INFO">${jmes_expression} = </msg>
<var>${jmes_expression}</var>
<arg>${folder}</arg>
<doc>Reads JMES path from file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules/jmespath.expr if the file exists and
returns the JMES path. Empty string is returned otherwise.</doc>
<status status="PASS" start="2026-05-25T01:56:22.668089" elapsed="0.005339"/>
</kw>
<kw name="Resolve_Volatiles_Path" owner="TemplatedRequests">
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:56:22.674790" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/restconf/modules/volatiles.list' does not exist.</msg>
<arg>${folder}${/}volatiles.list</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:56:22.674410" elapsed="0.000554">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/restconf/modules/volatiles.list' does not exist.</status>
</kw>
<msg time="2026-05-25T01:56:22.675183" level="INFO">${read_volatiles_file} = False</msg>
<var>${read_volatiles_file}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${folder}${/}volatiles.list</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:56:22.674056" elapsed="0.001157"/>
</kw>
<if>
<branch type="IF" condition="${read_volatiles_file} == ${false}">
<return>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:56:22.675420" elapsed="0.000026"/>
</return>
<status status="PASS" start="2026-05-25T01:56:22.675286" elapsed="0.000193"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:22.675267" elapsed="0.000235"/>
</if>
<kw name="Get File" owner="OperatingSystem">
<var>${volatiles}</var>
<arg>${folder}${/}volatiles.list</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:22.675648" elapsed="0.000022"/>
</kw>
<kw name="Split String" owner="String">
<var>${volatiles_list}</var>
<arg>${volatiles}</arg>
<arg>${\n}</arg>
<doc>Splits the ``string`` using ``separator`` as a delimiter string.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:22.675820" elapsed="0.000021"/>
</kw>
<return>
<value>${volatiles_list}</value>
<status status="NOT RUN" start="2026-05-25T01:56:22.675886" elapsed="0.000015"/>
</return>
<msg time="2026-05-25T01:56:22.677893" level="INFO">${volatiles_list} = </msg>
<var>${volatiles_list}</var>
<arg>${folder}</arg>
<doc>Reads Volatiles List from file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules/volatiles.list if the file exists and
returns the Volatiles List. Empty string is returned otherwise.</doc>
<status status="PASS" start="2026-05-25T01:56:22.673726" elapsed="0.004193"/>
</kw>
<kw name="Get_From_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:22.679493" level="INFO">/rests/data/ietf-yang-library:modules-state?content=nonconfig</msg>
<arg>${uri}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:22.679216" elapsed="0.000323"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:22.680026" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:22.679707" elapsed="0.000404"/>
</kw>
<if>
<branch type="IF" condition="&quot;&quot;&quot;${http_timeout}&quot;&quot;&quot; == &quot;&quot;&quot;${EMPTY}&quot;&quot;&quot;">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:22.744378" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig 
 path_url=/rests/data/ietf-yang-library:modules-state?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:22.744672" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig 
 status=401, reason=Unauthorized 
 headers={'Cache-Control': 'must-revalidate,no-cache,no-store', 'Content-Type': 'text/html;charset=iso-8859-1', 'Content-Length': '414'} 
 body=&lt;html&gt;
&lt;head&gt;
&lt;meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1"/&gt;
&lt;title&gt;Error 401 Unauthorized&lt;/title&gt;
&lt;/head&gt;
&lt;body&gt;&lt;h2&gt;HTTP ERROR 401 Unauthorized&lt;/h2&gt;
&lt;table&gt;
&lt;tr&gt;&lt;th&gt;URI:&lt;/th&gt;&lt;td&gt;/rests/data/ietf-yang-library:modules-state&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;th&gt;STATUS:&lt;/th&gt;&lt;td&gt;401&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;th&gt;MESSAGE:&lt;/th&gt;&lt;td&gt;Unauthorized&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;th&gt;SERVLET:&lt;/th&gt;&lt;td&gt;default&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;

&lt;/body&gt;
&lt;/html&gt;
 
 </msg>
<msg time="2026-05-25T01:56:22.745515" level="FAIL">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.200:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig</msg>
<var>${response}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>headers=${accept}</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="FAIL" start="2026-05-25T01:56:22.682188" elapsed="0.064683">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.200:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig</status>
</kw>
<status status="FAIL" start="2026-05-25T01:56:22.680183" elapsed="0.066911">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.200:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig</status>
</branch>
<branch type="ELSE">
<kw name="GET On Session" owner="RequestsLibrary">
<var>${response}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>headers=${accept}</arg>
<arg>timeout=${http_timeout}</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:22.747534" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:22.747177" elapsed="0.000505"/>
</branch>
<status status="FAIL" start="2026-05-25T01:56:22.680164" elapsed="0.067570">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.200:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig</status>
</if>
<kw name="Check_Status_Code" owner="TemplatedRequests">
<arg>${response}</arg>
<arg>log_response=${log_response}</arg>
<doc>Log response text, check status_code is one of allowed ones. In cases where this keyword is
called in a WUKS it could end up logging tons of data and it may be desired to skip the logging by passing
log_response=False, but by default it remains True.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:22.748901" elapsed="0.000062"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-05-25T01:56:22.749331" elapsed="0.000030"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:22.749248" elapsed="0.000174"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:56:22.749204" elapsed="0.000266"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<var>${text_normalized}</var>
<arg>${response.text}</arg>
<arg>jmes_path=${jmes_path}</arg>
<arg>keys_with_volatiles=${keys_with_volatiles}</arg>
<doc>Attempt to return sorted indented JSON string.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:22.749794" elapsed="0.000048"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="NOT RUN" start="2026-05-25T01:56:22.749950" elapsed="0.000033"/>
</return>
<var>${response_text}</var>
<arg>uri=${uri}</arg>
<arg>accept=${accept}</arg>
<arg>session=${session}</arg>
<arg>normalize_json=${normalize_json}</arg>
<arg>jmes_path=${jmes_expression}</arg>
<arg>http_timeout=${http_timeout}</arg>
<arg>keys_with_volatiles=${volatiles_list}</arg>
<arg>log_response=${log_response}</arg>
<doc>GET data from given URI, check status code and return response text.
${accept} is a Python object with headers to use.
If ${normalize_json}, normalize as JSON text before returning.</doc>
<status status="FAIL" start="2026-05-25T01:56:22.678271" elapsed="0.071954">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.200:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig</status>
</kw>
<return>
<value>${response_text}</value>
<status status="NOT RUN" start="2026-05-25T01:56:22.750399" elapsed="0.000036"/>
</return>
<var>${response_text}</var>
<arg>folder=${folder}</arg>
<arg>mapping=${mapping}</arg>
<arg>accept=${ACCEPT_EMPTY}</arg>
<arg>session=${session}</arg>
<arg>normalize_json=True</arg>
<arg>http_timeout=${http_timeout}</arg>
<arg>log_response=${log_response}</arg>
<doc>Resolve URI from folder, call Get_From_Uri, return response text.</doc>
<status status="FAIL" start="2026-05-25T01:56:22.539999" elapsed="0.210618">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.200:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig</status>
</kw>
<if>
<branch type="IF" condition="${verify}">
<kw name="Verify_Response_As_Json_Templated" owner="TemplatedRequests">
<arg>response=${response_text}</arg>
<arg>folder=${folder}</arg>
<arg>base_name=data</arg>
<arg>mapping=${mapping}</arg>
<arg>iterations=${iterations}</arg>
<arg>iter_start=${iter_start}</arg>
<arg>iter_j_offset=${iter_j_offset}</arg>
<doc>Resolve expected JSON data, should be equal to provided ${response}.
JSON normalization is used, endlines enabled for readability.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:22.751221" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:22.750873" elapsed="0.000459"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:56:22.750832" elapsed="0.000533"/>
</if>
<return>
<value>${response_text}</value>
<status status="NOT RUN" start="2026-05-25T01:56:22.751410" elapsed="0.000020"/>
</return>
<arg>session=${session}</arg>
<arg>folder=${RESTCONF_MODULES_DIR}</arg>
<arg>verify=False</arg>
<doc>Add arguments sensible for JSON data, return Get_Templated response text.
Optionally, verification against JSON data (may be iterated) is called.
Only subset of JSON data is verified and returned if JMES path is specified in
file ${folder}/jmespath.expr.</doc>
<status status="FAIL" start="2026-05-25T01:56:22.534019" elapsed="0.217527">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.200:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig</status>
</kw>
<var name="${index}">1</var>
<status status="FAIL" start="2026-05-25T01:56:22.529110" elapsed="0.222527">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.200:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig</status>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="FAIL" start="2026-05-25T01:56:22.528953" elapsed="0.222762">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.200:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig</status>
</for>
<arg>${member_index_list}</arg>
<status status="FAIL" start="2026-05-25T01:56:22.526816" elapsed="0.225024">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.200:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig</status>
</kw>
<status status="FAIL" start="2026-05-25T01:56:22.526564" elapsed="0.225353">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.200:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig</status>
</branch>
<status status="FAIL" start="2026-05-25T01:56:22.526548" elapsed="0.225410">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.200:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig</status>
</if>
<if>
<branch type="IF" condition="${verify_system_status} and (&quot;${service_list}&quot; != &quot;[[]]&quot;)">
<kw name="Check Status Of Services Is OPERATIONAL" owner="ClusterManagement">
<arg>@{service_list}</arg>
<doc>This keyword will verify whether all the services are operational in all the ODL nodes</doc>
<status status="NOT RUN" start="2026-05-25T01:56:22.752380" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:22.752050" elapsed="0.000409"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:56:22.752027" elapsed="0.000465"/>
</if>
<arg>${member_index_list}</arg>
<arg>${wait_for_sync}</arg>
<arg>${verify_restconf}</arg>
<arg>${check_system_status}</arg>
<arg>${service_list}</arg>
<doc>Verifies the specified readiness conditions for the given listed members after startup.
If ${verify_cluster_sync}, verifies the datastores have synced with the rest of the cluster.
If True, verifies RESTCONF is available.
If ${verify_system_status}, verifies the system services are OPERATIONAL.</doc>
<status status="FAIL" start="2026-05-25T01:56:22.525536" elapsed="0.227066">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.200:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig</status>
</kw>
<kw name="Verify_Members_Are_Ready" owner="ClusterManagement">
<if>
<branch type="IF" condition="${verify_cluster_sync}">
<kw name="Check_Cluster_Is_In_Sync" owner="ClusterManagement">
<arg>${member_index_list}</arg>
<doc>Fail if no-sync is detected on a member from list (or any).</doc>
<status status="NOT RUN" start="2026-05-25T01:56:32.767476" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:32.767093" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:32.767053" elapsed="0.000523"/>
</if>
<if>
<branch type="IF" condition="${verify_restconf}">
<kw name="Verify_Restconf_Is_Available" owner="ClusterManagement">
<kw name="List_Indices_Or_All" owner="ClusterManagement">
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:32.769213" level="INFO">${return_list_reference} = [1]</msg>
<var>${return_list_reference}</var>
<arg>"""${given_list}""" != ""</arg>
<arg>${given_list}</arg>
<arg>${ClusterManagement__member_index_list}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:32.768739" elapsed="0.000504"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:56:32.769754" level="INFO">${return_list_copy} = [1]</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:56:32.769435" elapsed="0.000346"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-05-25T01:56:32.769838" elapsed="0.000051"/>
</return>
<msg time="2026-05-25T01:56:32.770029" level="INFO">${index_list} = [1]</msg>
<var>${index_list}</var>
<arg>given_list=${member_index_list}</arg>
<doc>Utility to allow ${EMPTY} as default argument value, as the internal list is computed at runtime.
This keyword always returns a (shallow) copy of given or default list,
so operations with the returned list should not affect other lists.
Also note that this keyword does not consider empty list to be ${EMPTY}.</doc>
<status status="PASS" start="2026-05-25T01:56:32.768310" elapsed="0.001744"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Resolve_Http_Session_For_Member" owner="ClusterManagement">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:32.771546" level="INFO">${session} = ClusterManagement__session_1</msg>
<var>${session}</var>
<arg>ClusterManagement__session_${member_index}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:56:32.770899" elapsed="0.000676"/>
</kw>
<return>
<value>${session}</value>
<status status="PASS" start="2026-05-25T01:56:32.771624" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:56:32.771777" level="INFO">${session} = ClusterManagement__session_1</msg>
<var>${session}</var>
<arg>member_index=${index}</arg>
<doc>Return RequestsLibrary session alias pointing to node of given index.</doc>
<status status="PASS" start="2026-05-25T01:56:32.770547" elapsed="0.001256"/>
</kw>
<kw name="Get_As_Json_Templated" owner="TemplatedRequests">
<kw name="Get_Templated" owner="TemplatedRequests">
<kw name="Resolve_Text_From_Template_Folder" owner="TemplatedRequests">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:32.857573" level="INFO">${file_path_stream} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules.titanium/location.uri</msg>
<var>${file_path_stream}</var>
<arg>${folder}.${ODL_STREAM}${/}${file_name}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:56:32.856884" elapsed="0.000790"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:56:32.859412" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/restconf/modules.titanium/location.uri' does not exist.</msg>
<arg>${file_path_stream}</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:56:32.859135" elapsed="0.000355">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/restconf/modules.titanium/location.uri' does not exist.</status>
</kw>
<msg time="2026-05-25T01:56:32.859676" level="INFO">${file_stream_exists} = False</msg>
<var>${file_stream_exists}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${file_path_stream}</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:56:32.858624" elapsed="0.001141"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:32.861507" level="INFO">${file_path} = /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules/location.uri</msg>
<var>${file_path}</var>
<arg>${file_stream_exists}</arg>
<arg>${file_path_stream}</arg>
<arg>${folder}${/}${file_name}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:32.860831" elapsed="0.000767"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:56:32.862777" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/restconf/modules/location.uri"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/restconf/modules/location.uri&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:56:32.863033" level="INFO">${template} = /rests/data/ietf-yang-library:modules-state?content=nonconfig
</msg>
<var>${template}</var>
<arg>${file_path}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:56:32.862465" elapsed="0.000675"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:32.864437" level="INFO">/rests/data/ietf-yang-library:modules-state?content=nonconfig
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:32.863993" elapsed="0.000545"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:32.866038" level="INFO">mapping: {}</msg>
<arg>mapping: ${mapping}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:32.865733" elapsed="0.000430"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:56:32.866606" level="INFO">${encoded_mapping} = {}</msg>
<var>${encoded_mapping}</var>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:56:32.866332" elapsed="0.000301"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Convert To String" owner="BuiltIn">
<var>${value}</var>
<arg>${value}</arg>
<doc>Converts the given item to a Unicode string.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:32.866967" elapsed="0.000022"/>
</kw>
<kw name="Percent_Encode_String" owner="TemplatedRequests">
<var>${encoded_value}</var>
<arg>${value}</arg>
<doc>Percent encodes reserved characters in the given string so it can be used as part of url.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:32.867190" elapsed="0.000025"/>
</kw>
<kw name="Set To Dictionary" owner="Collections">
<arg>${encoded_mapping}</arg>
<arg>${key}</arg>
<arg>${encoded_value}</arg>
<doc>Adds the given ``key_value_pairs`` and/or ``items`` to the ``dictionary``.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:32.867366" elapsed="0.000022"/>
</kw>
<var name="${key}"/>
<var name="${value}"/>
<status status="NOT RUN" start="2026-05-25T01:56:32.866831" elapsed="0.000593"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="NOT RUN" start="2026-05-25T01:56:32.866688" elapsed="0.000767"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-05-25T01:56:32.867502" elapsed="0.000034"/>
</return>
<msg time="2026-05-25T01:56:32.867692" level="INFO">${mapping_to_use} = {}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-05-25T01:56:32.865364" elapsed="0.002374"/>
</kw>
<status status="PASS" start="2026-05-25T01:56:32.864692" elapsed="0.003085"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:32.868212" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:32.867831" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:32.864637" elapsed="0.003703"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:56:32.869930" level="INFO">${final_text} = /rests/data/ietf-yang-library:modules-state?content=nonconfig</msg>
<var>${final_text}</var>
<arg>string.Template('''${template}'''.rstrip()).safe_substitute(${mapping_to_use})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:56:32.869240" elapsed="0.000780"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-05-25T01:56:32.870160" elapsed="0.000052"/>
</return>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules/${file_name}.</doc>
<status status="PASS" start="2026-05-25T01:56:32.854626" elapsed="0.015818"/>
</kw>
<msg time="2026-05-25T01:56:32.870736" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>not "${iterations}"</arg>
<arg>Resolve_Text_From_Template_File</arg>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:32.808850" elapsed="0.061945"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${prolog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.prolog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:32.883304" elapsed="0.000029"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${epilog}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${name_prefix}${base_name}.epilog.${extension}</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=${percent_encode}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:32.895246" elapsed="0.000028"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<var>${item_template}</var>
<arg>folder=${folder}</arg>
<arg>file_name=${base_name}.item.${extension}</arg>
<arg>mapping=${mapping}</arg>
<doc>Check if /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules.titanium/${file_name} exists. If yes read and Log contents of file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules.titanium/${file_name},
remove endline, perform safe substitution, return result.
If no do it with the default /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules/${file_name}.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:32.907215" elapsed="0.000050"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:32.907494" elapsed="0.000024"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<var>${separator}</var>
<arg>'${extension}' != 'json'</arg>
<arg>${endline}</arg>
<arg>,${endline}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:32.907683" elapsed="0.000021"/>
</kw>
<for flavor="IN RANGE">
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:32.908204" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:32.908022" elapsed="0.000332"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:56:32.908003" elapsed="0.000380"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<var>${j}</var>
<arg>${iteration}+${iter_j_offset}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:32.908536" elapsed="0.000025"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${item}</var>
<arg>string.Template('''${item_template}''').substitute({"i":"${iteration}", "j":${j}})</arg>
<arg>modules=string</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:32.908711" elapsed="0.000020"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:32.908878" elapsed="0.000021"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-05-25T01:56:32.907961" elapsed="0.000971"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-05-25T01:56:32.907772" elapsed="0.001188"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<var>${final_text}</var>
<arg>SEPARATOR=</arg>
<arg>${prolog}</arg>
<arg>${endline}</arg>
<arg>@{items}</arg>
<arg>${endline}</arg>
<arg>${epilog}</arg>
<doc>Catenates the given items together and returns the resulted string.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:32.909127" elapsed="0.000049"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-05-25T01:56:32.909237" elapsed="0.000018"/>
</return>
<msg time="2026-05-25T01:56:32.909388" level="INFO">${uri} = /rests/data/ietf-yang-library:modules-state?content=nonconfig</msg>
<var>${uri}</var>
<arg>folder=${folder}</arg>
<arg>base_name=location</arg>
<arg>extension=uri</arg>
<arg>mapping=${mapping}</arg>
<arg>percent_encode=True</arg>
<doc>Read a template from folder, strip endline, make changes according to mapping, return the result.
If ${iterations} value is present, put text together from "prolog", "item" and "epilog" parts,
where additional template variable ${i} goes from ${iter_start}, by one ${iterations} times.
Template variable ${j} is calculated as ${i} incremented by offset ${iter_j_offset} ( j = i + iter_j_offset )
used to create non uniform data in order to be able to validate UPDATE operations.
POST (as opposed to PUT) needs slightly different data, ${name_prefix} may be used to distinguish.
(Actually, it is GET who formats data differently when URI is a top-level container.)</doc>
<status status="PASS" start="2026-05-25T01:56:32.804540" elapsed="0.104876"/>
</kw>
<kw name="Resolve_Jmes_Path" owner="TemplatedRequests">
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:56:32.911018" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/restconf/modules/jmespath.expr' does not exist.</msg>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:56:32.910585" elapsed="0.000601">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/restconf/modules/jmespath.expr' does not exist.</status>
</kw>
<msg time="2026-05-25T01:56:32.911389" level="INFO">${read_jmes_file} = False</msg>
<var>${read_jmes_file}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:56:32.910179" elapsed="0.001236"/>
</kw>
<if>
<branch type="IF" condition="${read_jmes_file} == ${true}">
<kw name="Get File" owner="OperatingSystem">
<var>${jmes_expression}</var>
<arg>${folder}${/}jmespath.expr</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:32.911751" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:32.911488" elapsed="0.000434"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:32.912669" level="INFO">${jmes_expression} = None</msg>
<var>${jmes_expression}</var>
<arg>${None}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:56:32.912173" elapsed="0.000523"/>
</kw>
<status status="PASS" start="2026-05-25T01:56:32.911949" elapsed="0.000784"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:32.911469" elapsed="0.001287"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:32.915178" level="INFO">${expression} = </msg>
<var>${expression}</var>
<arg>${read_jmes_file} == ${true}</arg>
<arg>${jmes_expression}</arg>
<arg>${EMPTY}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:32.912910" elapsed="0.002295"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-05-25T01:56:32.915259" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:56:32.915416" level="INFO">${jmes_expression} = </msg>
<var>${jmes_expression}</var>
<arg>${folder}</arg>
<doc>Reads JMES path from file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules/jmespath.expr if the file exists and
returns the JMES path. Empty string is returned otherwise.</doc>
<status status="PASS" start="2026-05-25T01:56:32.909805" elapsed="0.005637"/>
</kw>
<kw name="Resolve_Volatiles_Path" owner="TemplatedRequests">
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-05-25T01:56:32.916823" level="FAIL">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/restconf/modules/volatiles.list' does not exist.</msg>
<arg>${folder}${/}volatiles.list</arg>
<doc>Fails unless the given ``path`` points to an existing file.</doc>
<status status="FAIL" start="2026-05-25T01:56:32.916440" elapsed="0.000518">File '/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/restconf/modules/volatiles.list' does not exist.</status>
</kw>
<msg time="2026-05-25T01:56:32.917195" level="INFO">${read_volatiles_file} = False</msg>
<var>${read_volatiles_file}</var>
<arg>OperatingSystem.File Should Exist</arg>
<arg>${folder}${/}volatiles.list</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-05-25T01:56:32.916096" elapsed="0.001126"/>
</kw>
<if>
<branch type="IF" condition="${read_volatiles_file} == ${false}">
<return>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:56:32.917433" elapsed="0.000027"/>
</return>
<status status="PASS" start="2026-05-25T01:56:32.917296" elapsed="0.000197"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:32.917277" elapsed="0.000240"/>
</if>
<kw name="Get File" owner="OperatingSystem">
<var>${volatiles}</var>
<arg>${folder}${/}volatiles.list</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:32.917665" elapsed="0.000023"/>
</kw>
<kw name="Split String" owner="String">
<var>${volatiles_list}</var>
<arg>${volatiles}</arg>
<arg>${\n}</arg>
<doc>Splits the ``string`` using ``separator`` as a delimiter string.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:32.917846" elapsed="0.000021"/>
</kw>
<return>
<value>${volatiles_list}</value>
<status status="NOT RUN" start="2026-05-25T01:56:32.917913" elapsed="0.000015"/>
</return>
<msg time="2026-05-25T01:56:32.919939" level="INFO">${volatiles_list} = </msg>
<var>${volatiles_list}</var>
<arg>${folder}</arg>
<doc>Reads Volatiles List from file /w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/libraries/../variables/restconf/modules/volatiles.list if the file exists and
returns the Volatiles List. Empty string is returned otherwise.</doc>
<status status="PASS" start="2026-05-25T01:56:32.915750" elapsed="0.004216"/>
</kw>
<kw name="Get_From_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:32.921490" level="INFO">/rests/data/ietf-yang-library:modules-state?content=nonconfig</msg>
<arg>${uri}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:32.921209" elapsed="0.000327"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:32.921955" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:32.921691" elapsed="0.000309"/>
</kw>
<if>
<branch type="IF" condition="&quot;&quot;&quot;${http_timeout}&quot;&quot;&quot; == &quot;&quot;&quot;${EMPTY}&quot;&quot;&quot;">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:33.723034" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig 
 path_url=/rests/data/ietf-yang-library:modules-state?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:33.727609" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node0zr4jhv78dg2v19a2hibrvbxqm0.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 24-May-2026 01:56:33 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"ietf-yang-library:modules-state":{"module":[{"name":"hwvtep_2015-09-01","revision":"2015-09-01","schema":"/rests/modules/hwvtep?revision=2015-09-01","namespace":"urn:opendaylight:params:xml:ns:yang:ovsdb:hwvtep","conformance-type":"import"},{"name":"opendaylight-flow-table-statistics_2013-12-15","revision":"2013-12-15","schema":"/rests/modules/opendaylight-flow-table-statistics?revision=2013-12-15","namespace":"urn:opendaylight:flow:table:statistics","conformance-type":"import"},{"name":"odl-bmp-monitor-config_2020-01-20","revision":"2020-01-20","schema":"/rests/modules/odl-bmp-monitor-config?revision=2020-01-20","namespace":"urn:opendaylight:params:xml:ns:yang:bmp-monitor-config","conformance-type":"import"},{"name":"bgp-inet_2018-03-29","revision":"2018-03-29","schema":"/rests/modules/bgp-inet?revision=2018-03-29","namespace":"urn:opendaylight:params:xml:ns:yang:bgp-inet","conformance-type":"import"},{"name":"openflowplugin-extension-nicira-match_2014-07-14","revision":"2014-07-14","schema":"/rests/modules/openflowplugin-extension-nicira-match?revision=2014-07-14","namespace":"urn:opendaylight:openflowplugin:extension:nicira:match","conformance-type":"import"},{"name":"ietf-crypto-types_2024-10-10","revision":"2024-10-10","schema":"/rests/modules/ietf-crypto-types?revision=2024-10-10","namespace":"urn:ietf:params:xml:ns:yang:ietf-crypto-types","conformance-type":"import","feature":["one-asymmetric-key-format","hidden-private-keys","cleartext-passwords","one-symmetric-key-format","p10-csr-format","encrypted-symmetric-keys","cleartext-symmetric-keys","hidden-symmetric-keys","encrypted-passwords","cms-enveloped-data-format","csr-generation","encrypted-private-keys","asymmetrically-encrypted-value-format","cms-encrypted-data-format","cleartext-private-keys","symmetrically-encrypted-value-format","certificate-expiration-notification"]},{"name":"batch-common_2016-03-22","revision":"2016-03-22","schema":"/rests/modules/batch-common?revision=2016-03-22","namespace":"urn:opendaylight:service:batch:common","conformance-type":"import"},{"name":"lldp-speaker_2014-10-23","revision":"2014-10-23","schema":"/rests/modules/lldp-speaker?revision=2014-10-23","namespace":"urn:opendaylight:params:xml:ns:yang:openflow:applications:lldp-speaker","conformance-type":"import"},{"name":"openflowplugin-extension-general_2014-07-14","revision":"2014-07-14","schema":"/rests/modules/openflowplugin-extension-general?revision=2014-07-14","namespace":"urn:opendaylight:openflowplugin:extension:general","conformance-type":"import"},{"name":"opendaylight-port-statistics_2013-12-14","revision":"2013-12-14","schema":"/rests/modules/opendaylight-port-statistics?revision=2013-12-14","namespace":"urn:opendaylight:port:statistics","conformance-type":"import"},{"name":"aaa-app-config_2017-06-19","revision":"2017-06-19","schema":"/rests/modules/aaa-app-config?revision=2017-06-19","namespace":"urn:opendaylight:aaa:app:config","conformance-type":"import"},{"name":"topology-lldp-discovery-config_2016-05-11","revision":"2016-05-11","schema":"/rests/modules/topology-lldp-discovery-config?revision=2016-05-11","namespace":"urn:opendaylight:params:xml:ns:yang:topology-lldp-discovery:config","conformance-type":"import"},{"name":"ietf-network-instance_2019-01-21","revision":"2019-01-21","schema":"/rests/modules/ietf-network-instance?revision=2019-01-21","namespace":"urn:ietf:params:xml:ns:yang:ietf-network-instance","conformance-type":"import"},{"name":"nicira-action_2014-04-21","revision":"2014-04-21","schema":"/rests/modules/nicira-action?revision=2014-04-21","namespace":"urn:opendaylight:openflowjava:nx:action","conformance-type":"import"},{"name":"odl-bgp-peer-acceptor-config_2020-01-20","revision":"2020-01-20","schema":"/rests/modules/odl-bgp-peer-acceptor-config?revision=2020-01-20","namespace":"urn:opendaylight:params:xml:ns:yang:odl-bgp-peer-acceptor-config","conformance-type":"import"},{"name":"ietf-yang-schema-mount_2019-01-14","revision":"2019-01-14","schema":"/rests/modules/ietf-yang-schema-mount?revision=2019-01-14","namespace":"urn:ietf:params:xml:ns:yang:ietf-yang-schema-mount","conformance-type":"import"},{"name":"ietf-http-client_2024-02-08","revision":"2024-02-08","schema":"/rests/modules/ietf-http-client?revision=2024-02-08","namespace":"urn:ietf:params:xml:ns:yang:ietf-http-client","conformance-type":"import","feature":["basic-auth","tcp-supported","tls-supported"]},{"name":"odl-bgp-evpn_2020-01-20","revision":"2020-01-20","schema":"/rests/modules/odl-bgp-evpn?revision=2020-01-20","namespace":"urn:opendaylight:params:xml:ns:yang:bgp-evpn","conformance-type":"import"},{"name":"bgp-ll-graceful-restart_2018-11-12","revision":"2018-11-12","schema":"/rests/modules/bgp-ll-graceful-restart?revision=2018-11-12","namespace":"urn:opendaylight:params:xml:ns:yang:bgp:ll-graceful-restart","conformance-type":"import"},{"name":"bgp-linkstate_2024-12-19","revision":"2024-12-19","schema":"/rests/modules/bgp-linkstate?revision=2024-12-19","namespace":"urn:opendaylight:params:xml:ns:yang:bgp-linkstate","conformance-type":"import"},{"name":"nicira-match_2014-04-21","revision":"2014-04-21","schema":"/rests/modules/nicira-match?revision=2014-04-21","namespace":"urn:opendaylight:openflowjava:nx:match","conformance-type":"import"},{"name":"ietf-ssh-common_2024-10-10","revision":"2024-10-10","schema":"/rests/modules/ietf-ssh-common?revision=2024-10-10","namespace":"urn:ietf:params:xml:ns:yang:ietf-ssh-common","conformance-type":"import","feature":["ssh-x509-certs","transport-params"]},{"name":"frm-reconciliation_2018-02-27","revision":"2018-02-27","schema":"/rests/modules/frm-reconciliation?revision=2018-02-27","namespace":"urn:opendaylight:params:xml:ns:yang:openflowplugin:app:frm-reconciliation:service","conformance-type":"import"},{"name":"ietf-ssh-server_2024-10-10","revision":"2024-10-10","schema":"/rests/modules/ietf-ssh-server?revision=2024-10-10","namespace":"urn:ietf:params:xml:ns:yang:ietf-ssh-server","conformance-type":"import","feature":["local-users-supported","local-user-auth-publickey","local-user-auth-password","ssh-server-keepalives","local-user-auth-hostbased"]},{"name":"bgp-message_2020-01-20","revision":"2020-01-20","schema":"/rests/modules/bgp-message?revision=2020-01-20","namespace":"urn:opendaylight:params:xml:ns:yang:bgp-message","conformance-type":"import"},{"name":"ietf-inet-types_2013-07-15","revision":"2013-07-15","schema":"/rests/modules/ietf-inet-types?revision=2013-07-15","namespace":"urn:ietf:params:xml:ns:yang:ietf-inet-types","conformance-type":"import"},{"name":"sal-experimenter-message_2015-10-20","revision":"2015-10-20","schema":"/rests/modules/sal-experimenter-message?revision=2015-10-20","namespace":"urn:opendaylight:experimenter-message:service","conformance-type":"import"},{"name":"ietf-tcp-server_2024-10-10","revision":"2024-10-10","schema":"/rests/modules/ietf-tcp-server?revision=2024-10-10","namespace":"urn:ietf:params:xml:ns:yang:ietf-tcp-server","conformance-type":"import","feature":["tcp-server-keepalives"]},{"name":"sal-flow_2013-08-19","revision":"2013-08-19","schema":"/rests/modules/sal-flow?revision=2013-08-19","namespace":"urn:opendaylight:flow:service","conformance-type":"import"},{"name":"openconfig-network-instance_2015-10-18","revision":"2015-10-18","schema":"/rests/modules/openconfig-network-instance?revision=2015-10-18","namespace":"http://openconfig.net/yang/network-instance","conformance-type":"import"},{"name":"data-export-import-internal_2016-09-21","revision":"2016-09-21","schema":"/rests/modules/data-export-import-internal?revision=2016-09-21","namespace":"urn:opendaylight:daexim-internal","conformance-type":"import"},{"name":"sal-port_2013-11-07","revision":"2013-11-07","schema":"/rests/modules/sal-port?revision=2013-11-07","namespace":"urn:opendaylight:port:service","conformance-type":"import"},{"name":"iana-tls-cipher-suite-algs_2024-10-16","revision":"2024-10-16","schema":"/rests/modules/iana-tls-cipher-suite-algs?revision=2024-10-16","namespace":"urn:ietf:params:xml:ns:yang:iana-tls-cipher-suite-algs","conformance-type":"import"},{"name":"ietf-subscribed-notifications_2019-09-09","revision":"2019-09-09","schema":"/rests/modules/ietf-subscribed-notifications?revision=2019-09-09","namespace":"urn:ietf:params:xml:ns:yang:ietf-subscribed-notifications","conformance-type":"import","feature":["subtree","encode-xml","encode-json"]},{"name":"flow-topology-discovery_2013-08-19","revision":"2013-08-19","schema":"/rests/modules/flow-topology-discovery?revision=2013-08-19","namespace":"urn:opendaylight:flow:topology:discovery","conformance-type":"import"},{"name":"l3-unicast-igp-topology_2013-10-21","revision":"2013-10-21","schema":"/rests/modules/l3-unicast-igp-topology?revision=2013-10-21","namespace":"urn:TBD:params:xml:ns:yang:nt:l3-unicast-igp-topology","conformance-type":"import"},{"name":"ietf-netconf-notifications_2012-02-06","revision":"2012-02-06","schema":"/rests/modules/ietf-netconf-notifications?revision=2012-02-06","namespace":"urn:ietf:params:xml:ns:yang:ietf-netconf-notifications","conformance-type":"import"},{"name":"topology-tunnel-pcep-programming_2018-11-09","revision":"2018-11-09","schema":"/rests/modules/topology-tunnel-pcep-programming?revision=2018-11-09","namespace":"urn:opendaylight:params:xml:ns:yang:topology:tunnel:pcep:programming","conformance-type":"import"},{"name":"opendaylight-queue-types_2013-09-25","revision":"2013-09-25","schema":"/rests/modules/opendaylight-queue-types?revision=2013-09-25","namespace":"urn:opendaylight:flow:types:queue","conformance-type":"import"},{"name":"sal-echo_2015-03-05","revision":"2015-03-05","schema":"/rests/modules/sal-echo?revision=2015-03-05","namespace":"urn:opendaylight:echo:service","conformance-type":"import"},{"name":"topology-tunnel-programming_2013-09-30","revision":"2013-09-30","schema":"/rests/modules/topology-tunnel-programming?revision=2013-09-30","namespace":"urn:opendaylight:params:xml:ns:yang:topology:tunnel:programming","confo... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:56:33.728437" level="INFO">${response} = &lt;Response [200]&gt;</msg>
<var>${response}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>headers=${accept}</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:32.924087" elapsed="0.804473"/>
</kw>
<status status="PASS" start="2026-05-25T01:56:32.922084" elapsed="0.806637"/>
</branch>
<branch type="ELSE">
<kw name="GET On Session" owner="RequestsLibrary">
<var>${response}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>headers=${accept}</arg>
<arg>timeout=${http_timeout}</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:33.729291" elapsed="0.000056"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:33.728808" elapsed="0.000639"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:32.922050" elapsed="0.807446"/>
</if>
<kw name="Check_Status_Code" owner="TemplatedRequests">
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:33.735685" level="INFO">{"ietf-yang-library:modules-state":{"module":[{"name":"hwvtep_2015-09-01","revision":"2015-09-01","schema":"/rests/modules/hwvtep?revision=2015-09-01","namespace":"urn:opendaylight:params:xml:ns:yang:ovsdb:hwvtep","conformance-type":"import"},{"name":"opendaylight-flow-table-statistics_2013-12-15","revision":"2013-12-15","schema":"/rests/modules/opendaylight-flow-table-statistics?revision=2013-12-15","namespace":"urn:opendaylight:flow:table:statistics","conformance-type":"import"},{"name":"odl-bmp-monitor-config_2020-01-20","revision":"2020-01-20","schema":"/rests/modules/odl-bmp-monitor-config?revision=2020-01-20","namespace":"urn:opendaylight:params:xml:ns:yang:bmp-monitor-config","conformance-type":"import"},{"name":"bgp-inet_2018-03-29","revision":"2018-03-29","schema":"/rests/modules/bgp-inet?revision=2018-03-29","namespace":"urn:opendaylight:params:xml:ns:yang:bgp-inet","conformance-type":"import"},{"name":"openflowplugin-extension-nicira-match_2014-07-14","revision":"2014-07-14","schema":"/rests/modules/openflowplugin-extension-nicira-match?revision=2014-07-14","namespace":"urn:opendaylight:openflowplugin:extension:nicira:match","conformance-type":"import"},{"name":"ietf-crypto-types_2024-10-10","revision":"2024-10-10","schema":"/rests/modules/ietf-crypto-types?revision=2024-10-10","namespace":"urn:ietf:params:xml:ns:yang:ietf-crypto-types","conformance-type":"import","feature":["one-asymmetric-key-format","hidden-private-keys","cleartext-passwords","one-symmetric-key-format","p10-csr-format","encrypted-symmetric-keys","cleartext-symmetric-keys","hidden-symmetric-keys","encrypted-passwords","cms-enveloped-data-format","csr-generation","encrypted-private-keys","asymmetrically-encrypted-value-format","cms-encrypted-data-format","cleartext-private-keys","symmetrically-encrypted-value-format","certificate-expiration-notification"]},{"name":"batch-common_2016-03-22","revision":"2016-03-22","schema":"/rests/modules/batch-common?revision=2016-03-22","namespace":"urn:opendaylight:service:batch:common","conformance-type":"import"},{"name":"lldp-speaker_2014-10-23","revision":"2014-10-23","schema":"/rests/modules/lldp-speaker?revision=2014-10-23","namespace":"urn:opendaylight:params:xml:ns:yang:openflow:applications:lldp-speaker","conformance-type":"import"},{"name":"openflowplugin-extension-general_2014-07-14","revision":"2014-07-14","schema":"/rests/modules/openflowplugin-extension-general?revision=2014-07-14","namespace":"urn:opendaylight:openflowplugin:extension:general","conformance-type":"import"},{"name":"opendaylight-port-statistics_2013-12-14","revision":"2013-12-14","schema":"/rests/modules/opendaylight-port-statistics?revision=2013-12-14","namespace":"urn:opendaylight:port:statistics","conformance-type":"import"},{"name":"aaa-app-config_2017-06-19","revision":"2017-06-19","schema":"/rests/modules/aaa-app-config?revision=2017-06-19","namespace":"urn:opendaylight:aaa:app:config","conformance-type":"import"},{"name":"topology-lldp-discovery-config_2016-05-11","revision":"2016-05-11","schema":"/rests/modules/topology-lldp-discovery-config?revision=2016-05-11","namespace":"urn:opendaylight:params:xml:ns:yang:topology-lldp-discovery:config","conformance-type":"import"},{"name":"ietf-network-instance_2019-01-21","revision":"2019-01-21","schema":"/rests/modules/ietf-network-instance?revision=2019-01-21","namespace":"urn:ietf:params:xml:ns:yang:ietf-network-instance","conformance-type":"import"},{"name":"nicira-action_2014-04-21","revision":"2014-04-21","schema":"/rests/modules/nicira-action?revision=2014-04-21","namespace":"urn:opendaylight:openflowjava:nx:action","conformance-type":"import"},{"name":"odl-bgp-peer-acceptor-config_2020-01-20","revision":"2020-01-20","schema":"/rests/modules/odl-bgp-peer-acceptor-config?revision=2020-01-20","namespace":"urn:opendaylight:params:xml:ns:yang:odl-bgp-peer-acceptor-config","conformance-type":"import"},{"name":"ietf-yang-schema-mount_2019-01-14","revision":"2019-01-14","schema":"/rests/modules/ietf-yang-schema-mount?revision=2019-01-14","namespace":"urn:ietf:params:xml:ns:yang:ietf-yang-schema-mount","conformance-type":"import"},{"name":"ietf-http-client_2024-02-08","revision":"2024-02-08","schema":"/rests/modules/ietf-http-client?revision=2024-02-08","namespace":"urn:ietf:params:xml:ns:yang:ietf-http-client","conformance-type":"import","feature":["basic-auth","tcp-supported","tls-supported"]},{"name":"odl-bgp-evpn_2020-01-20","revision":"2020-01-20","schema":"/rests/modules/odl-bgp-evpn?revision=2020-01-20","namespace":"urn:opendaylight:params:xml:ns:yang:bgp-evpn","conformance-type":"import"},{"name":"bgp-ll-graceful-restart_2018-11-12","revision":"2018-11-12","schema":"/rests/modules/bgp-ll-graceful-restart?revision=2018-11-12","namespace":"urn:opendaylight:params:xml:ns:yang:bgp:ll-graceful-restart","conformance-type":"import"},{"name":"bgp-linkstate_2024-12-19","revision":"2024-12-19","schema":"/rests/modules/bgp-linkstate?revision=2024-12-19","namespace":"urn:opendaylight:params:xml:ns:yang:bgp-linkstate","conformance-type":"import"},{"name":"nicira-match_2014-04-21","revision":"2014-04-21","schema":"/rests/modules/nicira-match?revision=2014-04-21","namespace":"urn:opendaylight:openflowjava:nx:match","conformance-type":"import"},{"name":"ietf-ssh-common_2024-10-10","revision":"2024-10-10","schema":"/rests/modules/ietf-ssh-common?revision=2024-10-10","namespace":"urn:ietf:params:xml:ns:yang:ietf-ssh-common","conformance-type":"import","feature":["ssh-x509-certs","transport-params"]},{"name":"frm-reconciliation_2018-02-27","revision":"2018-02-27","schema":"/rests/modules/frm-reconciliation?revision=2018-02-27","namespace":"urn:opendaylight:params:xml:ns:yang:openflowplugin:app:frm-reconciliation:service","conformance-type":"import"},{"name":"ietf-ssh-server_2024-10-10","revision":"2024-10-10","schema":"/rests/modules/ietf-ssh-server?revision=2024-10-10","namespace":"urn:ietf:params:xml:ns:yang:ietf-ssh-server","conformance-type":"import","feature":["local-users-supported","local-user-auth-publickey","local-user-auth-password","ssh-server-keepalives","local-user-auth-hostbased"]},{"name":"bgp-message_2020-01-20","revision":"2020-01-20","schema":"/rests/modules/bgp-message?revision=2020-01-20","namespace":"urn:opendaylight:params:xml:ns:yang:bgp-message","conformance-type":"import"},{"name":"ietf-inet-types_2013-07-15","revision":"2013-07-15","schema":"/rests/modules/ietf-inet-types?revision=2013-07-15","namespace":"urn:ietf:params:xml:ns:yang:ietf-inet-types","conformance-type":"import"},{"name":"sal-experimenter-message_2015-10-20","revision":"2015-10-20","schema":"/rests/modules/sal-experimenter-message?revision=2015-10-20","namespace":"urn:opendaylight:experimenter-message:service","conformance-type":"import"},{"name":"ietf-tcp-server_2024-10-10","revision":"2024-10-10","schema":"/rests/modules/ietf-tcp-server?revision=2024-10-10","namespace":"urn:ietf:params:xml:ns:yang:ietf-tcp-server","conformance-type":"import","feature":["tcp-server-keepalives"]},{"name":"sal-flow_2013-08-19","revision":"2013-08-19","schema":"/rests/modules/sal-flow?revision=2013-08-19","namespace":"urn:opendaylight:flow:service","conformance-type":"import"},{"name":"openconfig-network-instance_2015-10-18","revision":"2015-10-18","schema":"/rests/modules/openconfig-network-instance?revision=2015-10-18","namespace":"http://openconfig.net/yang/network-instance","conformance-type":"import"},{"name":"data-export-import-internal_2016-09-21","revision":"2016-09-21","schema":"/rests/modules/data-export-import-internal?revision=2016-09-21","namespace":"urn:opendaylight:daexim-internal","conformance-type":"import"},{"name":"sal-port_2013-11-07","revision":"2013-11-07","schema":"/rests/modules/sal-port?revision=2013-11-07","namespace":"urn:opendaylight:port:service","conformance-type":"import"},{"name":"iana-tls-cipher-suite-algs_2024-10-16","revision":"2024-10-16","schema":"/rests/modules/iana-tls-cipher-suite-algs?revision=2024-10-16","namespace":"urn:ietf:params:xml:ns:yang:iana-tls-cipher-suite-algs","conformance-type":"import"},{"name":"ietf-subscribed-notifications_2019-09-09","revision":"2019-09-09","schema":"/rests/modules/ietf-subscribed-notifications?revision=2019-09-09","namespace":"urn:ietf:params:xml:ns:yang:ietf-subscribed-notifications","conformance-type":"import","feature":["subtree","encode-xml","encode-json"]},{"name":"flow-topology-discovery_2013-08-19","revision":"2013-08-19","schema":"/rests/modules/flow-topology-discovery?revision=2013-08-19","namespace":"urn:opendaylight:flow:topology:discovery","conformance-type":"import"},{"name":"l3-unicast-igp-topology_2013-10-21","revision":"2013-10-21","schema":"/rests/modules/l3-unicast-igp-topology?revision=2013-10-21","namespace":"urn:TBD:params:xml:ns:yang:nt:l3-unicast-igp-topology","conformance-type":"import"},{"name":"ietf-netconf-notifications_2012-02-06","revision":"2012-02-06","schema":"/rests/modules/ietf-netconf-notifications?revision=2012-02-06","namespace":"urn:ietf:params:xml:ns:yang:ietf-netconf-notifications","conformance-type":"import"},{"name":"topology-tunnel-pcep-programming_2018-11-09","revision":"2018-11-09","schema":"/rests/modules/topology-tunnel-pcep-programming?revision=2018-11-09","namespace":"urn:opendaylight:params:xml:ns:yang:topology:tunnel:pcep:programming","conformance-type":"import"},{"name":"opendaylight-queue-types_2013-09-25","revision":"2013-09-25","schema":"/rests/modules/opendaylight-queue-types?revision=2013-09-25","namespace":"urn:opendaylight:flow:types:queue","conformance-type":"import"},{"name":"sal-echo_2015-03-05","revision":"2015-03-05","schema":"/rests/modules/sal-echo?revision=2015-03-05","namespace":"urn:opendaylight:echo:service","conformance-type":"import"},{"name":"topology-tunnel-programming_2013-09-30","revision":"2013-09-30","schema":"/rests/modules/topology-tunnel-programming?revision=2013-09-30","namespace":"urn:opendaylight:params:xml:ns:yang:topology:tunnel:programming","conformance-type":"import"},{"name":"openconfig-network-instance-types_2015-10-18","revision":"2015-10-18","schema":"/rests/modules/openconfig-network-instance-types?revision=2015-10-18","namespace":"http://openconfig.net/yang/network-instance-types","conformance-type":"import"},{"name":"statistics-manager-control_2015-08-12","revision":"2015-08-12","schema":"/rests/modules/statistics-manager-control?revision=2015-08-12","namespace":"urn:opendaylight:params:xml:ns:yang:openflowplugin:sm:control","conformance-type":"import"},{"name":"openconfig-interfaces_2016-04-12","revision":"2016-04-12","schema":"/rests/modules/openconfig-interfaces?revision=2016-04-12","namespace":"http://openconfig.net/yang/interfaces","conformance-type":"import"},{"name":"iana-afn-safi_2013-07-04","revision":"2013-07-04","schema":"/rests/modules/iana-afn-safi?revision=2013-07-04","namespace":"urn:ietf:params:xml:ns:yang:iana-afn-safi","conformance-type":"import"},{"name":"bgp-epe_2024-12-19","revision":"2024-12-19","schema":"/rests/modules/bgp-epe?revision=2024-12-19","namespace":"urn:opendaylight:params:xml:ns:yang:bgp-epe","conformance-type":"import"},{"name":"barrier-common_2016-03-15","revision":"2016-03-15","schema":"/rests/modules/barrier-common?revision=2016-03-15","namespace":"urn:opendaylight:service:barrier:common","conformance-type":"import"},{"name":"flow-capable-transaction_2015-03-04","revision":"2015-03-04","schema":"/rests/modules/flow-capable-transaction?revision=2015-03-04","namespace":"urn:opendaylight:flow:transaction","conformance-type":"import"},{"name":"iana-ssh-mac-algs_2024-10-16","revision":"2024-10-16","schema":"/rests/modules/iana-ssh-mac-algs?revision=2024-10-16","namespace":"urn:ietf:params:xml:ns:yang:iana-ssh-mac-algs","conformance-type":"import"},{"name":"opendaylight-topology-inventory_2013-10-30","revision":"2013-10-30","schema":"/rests/modules/opendaylight-topology-inventory?revision=2013-10-30","namespace":"urn:opendaylight:model:topology:inventory","conformance-type":"import"},{"name":"ietf-ssh-client_2024-10-10","revision":"2024-10-10","schema":"/rests/modules/ietf-ssh-client?revision=2024-10-10","namespace":"urn:ietf:params:xml:ns:yang:ietf-ssh-client","conformance-type":"import","feature":["client-ident-hostbased","ssh-client-keepalives","client-ident-password","client-ident-publickey"]},{"name":"odl-lisp-address-types_2016-05-04","revision":"2016-05-04","schema":"/rests/modules/odl-lisp-address-types?revision=2016-05-04","namespace":"urn:opendaylight:lfm:lisp-binary-address-types","conformance-type":"import"},{"name":"pcep-message_2018-11-09","revision":"2018-11-09","schema":"/rests/modules/pcep-message?revision=2018-11-09","namespace":"urn:opendaylight:params:xml:ns:yang:pcep:message","conformance-type":"import"},{"name":"odl-controller-cds-types_2025-01-31","revision":"2025-01-31","schema":"/rests/modules/odl-controller-cds-types?revision=2025-01-31","namespace":"urn:opendaylight:params:xml:ns:yang:controller:cds:types","conformance-type":"import"},{"name":"opendaylight-meter-statistics_2013-11-11","revision":"2013-11-11","schema":"/rests/modules/opendaylight-meter-statistics?revision=2013-11-11","namespace":"urn:opendaylight:meter:statistics","conformance-type":"import"},{"name":"bgp-mvpn-ipv4_2018-04-17","revision":"2018-04-17","schema":"/rests/modules/bgp-mvpn-ipv4?revision=2018-04-17","namespace":"urn:opendaylight:params:xml:ns:yang:bgp:mvpn:ipv4","conformance-type":"import"},{"name":"ietf-tls-server_2024-10-10","revision":"2024-10-10","schema":"/rests/modules/ietf-tls-server?revision=2024-10-10","namespace":"urn:ietf:params:xml:ns:yang:ietf-tls-server","conformance-type":"import","feature":["server-ident-x509-cert","client-auth-supported","client-auth-x509-cert"]},{"name":"pmsi-tunnel_2020-01-20","revision":"2020-01-20","schema":"/rests/modules/pmsi-tunnel?revision=2020-01-20","namespace":"urn:opendaylight:params:xml:ns:yang:pmsi-tunnel","conformance-type":"import"},{"name":"ietf-restconf-monitoring_2017-01-26","revision":"2017-01-26","schema":"/rests/modules/ietf-restconf-monitoring?revision=2017-01-26","namespace":"urn:ietf:params:xml:ns:yang:ietf-restconf-monitoring","conformance-type":"import"},{"name":"opendaylight-statistics-types_2013-09-25","revision":"2013-09-25","schema":"/rests/modules/opendaylight-statistics-types?revision=2013-09-25","namespace":"urn:opendaylight:model:statistics:types","conformance-type":"import"},{"name":"bgp-vpn_2018-03-29","revision":"2018-03-29","schema":"/rests/modules/bgp-vpn?revision=2018-03-29","namespace":"urn:opendaylight:params:xml:ns:yang:bgp-vpn","conformance-type":"import"},{"name":"bgp-multiprotocol_2018-03-29","revision":"2018-03-29","schema":"/rests/modules/bgp-multiprotocol?revision=2018-03-29","namespace":"urn:opendaylight:params:xml:ns:yang:bgp-multiprotocol","conformance-type":"import"},{"name":"openflow-switch-connection-config_2016-05-06","revision":"2016-05-06","schema":"/rests/modules/openflow-switch-connection-config?revision=2016-05-06","namespace":"urn:opendaylight:params:xml:ns:yang:openflow:switch:connection:config","conformance-type":"import"},{"name":"openconfig-bgp-multiprotocol_2015-10-09","revision":"2015-10-09","schema":"/rests/modules/openconfig-bgp-multiprotocol?revision=2015-10-09","namespace":"http://openconfig.net/yang/bgp-multiprotocol","conformance-type":"import"},{"name":"ietf-yang-library_2019-01-04","revision":"2019-01-04","schema":"/rests/modules/ietf-yang-library?revision=2019-01-04","namespace":"urn:ietf:params:xml:ns:yang:ietf-yang-library","conformance-type":"import"},{"name":"openflowplugin-experimenter-types_2015-10-20","revision":"2015-10-20","schema":"/rests/modules/openflowplugin-experimenter-types?revision=2015-10-20","namespace":"urn:opendaylight:openflowplugin:experimenter:types","conformance-type":"import"},{"name":"ietf-ip_2018-02-22","revision":"2018-02-22","schema":"/rests/modules/ietf-ip?revision=2018-02-22","namespace":"urn:ietf:params:xml:ns:yang:ietf-ip","conformance-type":"import","feature":["ipv6-privacy-autoconf","ipv4-non-contiguous-netmasks"]},{"name":"openconfig-extensions_2015-10-09","revision":"2015-10-09","schema":"/rests/modules/openconfig-extensions?revision=2015-10-09","namespace":"http://openconfig.net/yang/openconfig-ext","conformance-type":"import"},{"name":"ietf-tcp-client_2024-10-10","revision":"2024-10-10","schema":"/rests/modules/ietf-tcp-client?revision=2024-10-10","namespace":"urn:ietf:params:xml:ns:yang:ietf-tcp-client","conformance-type":"import","feature":["tcp-client-keepalives","local-binding-supported"]},{"name":"node-config_2014-10-15","revision":"2014-10-15","schema":"/rests/modules/node-config?revision=2014-10-15","namespace":"urn:opendaylight:module:config","conformance-type":"import"},{"name":"overlay_2015-01-05","revision":"2015-01-05","schema":"/rests/modules/overlay?revision=2015-01-05","namespace":"urn:opendaylight:params:xml:ns:yang:overlay","conformance-type":"import"},{"name":"iana_2013-08-16","revision":"2013-08-16","schema":"/rests/modules/iana?revision=2013-08-16","namespace":"urn:opendaylight:params:xml:ns:yang:iana","conformance-type":"import"},{"name":"ietf-restconf_2017-01-26","revision":"2017-01-26","schema":"/rests/modules/ietf-restconf?revision=2017-01-26","namespace":"urn:ietf:params:xml:ns:yang:ietf-restconf","conformance-type":"import"},{"name":"ietf-datastores_2018-02-14","revision":"2018-02-14","schema":"/rests/modules/ietf-datastores?revision=2018-02-14","namespace":"urn:ietf:params:xml:ns:yang:ietf-datastores","conformance-type":"import"},{"name":"jsonrpc-inband-models_2019-01-12","revision":"2019-01-12","schema":"/rests/modules/jsonrpc-inband-models?revision=2019-01-12","namespace":"urn:opendaylight:jsonrpc:ibm","conformance-type":"import"},{"name":"ietf-yang-patch_2017-02-22","revision":"2017-02-22","schema":"/rests/modules/ietf-yang-patch?revision=2017-02-22","namespace":"urn:ietf:params:xml:ns:yang:ietf-yang-patch","conformance-type":"import"},{"name":"topology-tunnel-p2p_2013-08-19","revision":"2013-08-19","schema":"/rests/modules/topology-tunnel-p2p?revision=2013-08-19","namespace":"urn:opendaylight:params:xml:ns:yang:topology:tunnel:p2p","conformance-type":"import"},{"name":"odl-pcep-stats-provider_2022-07-30","revision":"2022-07-30","schema":"/rests/modules/odl-pcep-stats-provider?revision=2022-07-30","namespace":"urn:opendaylight:params:xml:ns:yang:odl:pcep:stats:provider:config","conformance-type":"import"},{"name":"sal-group_2013-09-18","revision":"2013-09-18","schema":"/rests/modules/sal-group?revision=2013-09-18","namespace":"urn:opendaylight:group:service","conformance-type":"import"},{"name":"odl-codegen-extensions_2024-06-27","revision":"2024-06-27","schema":"/rests/modules/odl-codegen-extensions?revision=2024-06-27","namespace":"urn:opendaylight:yang:extension:codegen","conformance-type":"import"},{"name":"sal-meter_2013-09-18","revision":"2013-09-18","schema":"/rests/modules/sal-meter?revision=2013-09-18","namespace":"urn:opendaylight:meter:service","conformance-type":"import"},{"name":"ietf-interfaces_2018-02-20","revision":"2018-02-20","schema":"/rests/modules/ietf-interfaces?revision=2018-02-20","namespace":"urn:ietf:params:xml:ns:yang:ietf-interfaces","conformance-type":"import","feature":["pre-provisioning","arbitrary-names","if-mib"]},{"name":"bgp-labeled-unicast_2018-03-29","revision":"2018-03-29","schema":"/rests/modules/bgp-labeled-unicast?revision=2018-03-29","namespace":"urn:opendaylight:params:xml:ns:yang:bgp-labeled-unicast","conformance-type":"import"},{"name":"opendaylight-l2-types_2013-08-27","revision":"2013-08-27","schema":"/rests/modules/opendaylight-l2-types?revision=2013-08-27","namespace":"urn:opendaylight:l2:types","conformance-type":"import"},{"name":"opendaylight-flow-types_2013-10-26","revision":"2013-10-26","schema":"/rests/modules/opendaylight-flow-types?revision=2013-10-26","namespace":"urn:opendaylight:flow:types","conformance-type":"import"},{"name":"lldp-speaker-config_2016-05-12","revision":"2016-05-12","schema":"/rests/modules/lldp-speaker-config?revision=2016-05-12","namespace":"urn:opendaylight:params:xml:ns:yang:openflow:applications:lldp-speaker:config","conformance-type":"import"},{"name":"ieee754_2013-08-19","revision":"2013-08-19","schema":"/rests/modules/ieee754?revision=2013-08-19","namespace":"urn:opendaylight:params:xml:ns:yang:ieee754","conformance-type":"import"},{"name":"aaa-cert_2015-11-26","revision":"2015-11-26","schema":"/rests/modules/aaa-cert?revision=2015-11-26","namespace":"urn:opendaylight:yang:aaa:cert","conformance-type":"import"},{"name":"openconfig-routing-policy_2015-10-09","revision":"2015-10-09","schema":"/rests/modules/openconfig-routing-policy?revision=2015-10-09","namespace":"http://openconfig.net/yang/routing-policy","conformance-type":"import"},{"name":"pcep-config_2025-06-02","revision":"2025-06-02","schema":"/rests/modules/pcep-config?revision=2025-06-02","namespace":"urn:opendaylight:params:xml:ns:yang:pcep:config","conformance-type":"import"},{"name":"openconfig-bgp-operational_2015-10-09","revision":"2015-10-09","schema":"/rests/modules/openconfig-bgp-operational?revision=2015-10-09","namespace":"http://openconfig.net/yang/bgp-operational","conformance-type":"import"},{"name":"openflow-action_2015-02-03","revision":"2015-02-03","schema":"/rests/modules/openflow-action?revision=2015-02-03","namespace":"urn:opendaylight:openflow:common:action","conformance-type":"import"},{"name":"openflow-approved-extensions_2016-08-02","revision":"2016-08-02","schema":"/rests/modules/openflow-approved-extensions?revision=2016-08-02","namespace":"urn:opendaylight:openflow:approved:extensions","conformance-type":"import"},{"name":"nc-notifications_2008-07-14","revision":"2008-07-14","schema":"/rests/modules/nc-notifications?revision=2008-07-14","namespace":"urn:ietf:params:xml:ns:netmod:notification","conformance-type":"import"},{"name":"ietf-netconf-nmda_2019-01-07","revision":"2019-01-07","schema":"/rests/modules/ietf-netconf-nmda?revision=2019-01-07","namespace":"urn:ietf:params:xml:ns:yang:ietf-netconf-nmda","conformance-type":"import","feature":["with-defaults","origin"]},{"name":"ietf-tcp-common_2024-10-10","revision":"2024-10-10","schema":"/rests/modules/ietf-tcp-common?revision=2024-10-10","namespace":"urn:ietf:params:xml:ns:yang:ietf-tcp-common","conformance-type":"import","feature":["keepalives-supported"]},{"name":"odl-lisp-proto_2015-11-05","revision":"2015-11-05","schema":"/rests/modules/odl-lisp-proto?revision=2015-11-05","namespace":"urn:opendaylight:lfm:lisp-proto","conformance-type":"import"},{"name":"odl-bgp-topology-config_2018-03-29","revision":"2018-03-29","schema":"/rests/modules/odl-bgp-topology-config?revision=2018-03-29","namespace":"urn:opendaylight:params:xml:ns:yang:odl-bgp-topology-config","conformance-type":"import"},{"name":"network-topology_2013-10-21","revision":"2013-10-21","schema":"/rests/modules/network-topology?revision=2013-10-21","namespace":"urn:TBD:params:xml:ns:yang:network-topology","conformance-type":"import"},{"name":"topology-tunnel-sr_2013-08-19","revision":"2013-08-19","schema":"/rests/modules/topology-tunnel-sr?revision=2013-08-19","namespace":"urn:opendaylight:params:xml:ns:yang:topology:tunnel:sr","conformance-type":"import"},{"name":"odl-pcep-topology-sync-optimizations-config_2018-11-09","revision":"2018-11-09","schema":"/rests/modules/odl-pcep-topology-sync-optimizations-config?revision=2018-11-09","namespace":"urn:opendaylight:params:xml:ns:yang:topology:pcep:sync:optimizations:config","conformance-type":"import"},{"name":"openconfig-policy-types_2015-10-09","revision":"2015-10-09","schema":"/rests/modules/openconfig-policy-types?revision=2015-10-09","namespace":"http://openconfig.net/yang/policy-types","conformance-type":"import"},{"name":"odl-pcep-sync-optimizations_2020-07-20","revision":"2020-07-20","schema":"/rests/modules/odl-pcep-sync-optimizations?revision=2020-07-20","namespace":"urn:opendaylight:params:xml:ns:yang:controller:pcep:sync:optimizations","conformance-type":"import"},{"name":"bgp-vpn-ipv4_2018-03-29","revision":"2018-03-29","schema":"/rests/modules/bgp-vpn-ipv4?revision=2018-03-29","namespace":"urn:opendaylight:params:xml:ns:yang:bgp-vpn-ipv4","conformance-type":"import"},{"name":"openflowplugin-extension-nicira-action_2014-07-14","revision":"2014-07-14","schema":"/rests/modules/openflowplugin-extension-nicira-action?revision=2014-07-14","namespace":"urn:opendaylight:openflowplugin:extension:nicira:action","conformance-type":"import"},{"name":"odl-pcep-segment-routing_2025-04-02","revision":"2025-04-02","schema":"/rests/modules/odl-pcep-segment-routing?revision=2025-04-02","namespace":"urn:opendaylight:params:xml:ns:yang:pcep:segment:routing","conformance-type":"import"},{"name":"aaa-encrypt-service-config_2024-02-02","revision":"2024-02-02","schema":"/rests/modules/aaa-encrypt-service-config?revision=2024-02-02","namespace":"config:aaa:authn:encrypt:service:config","conformance-type":"import"},{"name":"openflow-instruction_2013-07-31","revision":"2013-07-31","schema":"/rests/modules/openflow-instruction?revision=2013-07-31","namespace":"urn:opendaylight:openflow:common:instruction","conformance-type":"import"},{"name":"bgp-segment-routing_2024-12-19","revision":"2024-12-19","schema":"/rests/modules/bgp-segment-routing?revision=2024-12-19","namespace":"urn:opendaylight:params:xml:ns:yang:bgp-segment-routing","conformance-type":"import"},{"name":"bgp-mvpn-ipv6_2018-04-17","revision":"2018-04-17","schema":"/rests/modules/bgp-mvpn-ipv6?revision=2018-04-17","namespace":"urn:opendaylight:params:xml:ns:yang:bgp:mvpn:ipv6","conformance-type":"import"},{"name":"ietf-tls-client_2024-10-10","revision":"2024-10-10","schema":"/rests/modules/ietf-tls-client?revision=2024-10-10","namespace":"urn:ietf:params:xml:ns:yang:ietf-tls-client","conformance-type":"import","feature":["client-ident-x509-cert","server-auth-x509-cert"]},{"name":"network-topology-pcep-programming_2018-11-09","revision":"2018-11-09","schema":"/rests/modules/network-topology-pcep-programming?revision=2018-11-09","namespace":"urn:opendaylight:params:xml:ns:yang:topology:pcep:programming","conformance-type":"import"},{"name":"opendaylight-group-statistics_2013-11-11","revision":"2013-11-11","schema":"/rests/modules/opendaylight-group-statistics?revision=2013-11-11","namespace":"urn:opendaylight:group:statistics","conformance-type":"import"},{"name":"cluster-admin_2025-01-31","revision":"2025-01-31","schema":"/rests/modules/cluster-admin?revision=2025-01-31","namespace":"urn:opendaylight:params:xml:ns:yang:controller:md:sal:cluster:admin","conformance-type":"import"},{"name":"opendaylight-flow-statistics_2013-08-19","revision":"2013-08-19","schema":"/rests/modules/opendaylight-flow-statistics?revision=2013-08-19","namespace":"urn:opendaylight:flow:statistics","conformance-type":"import"},{"name":"odl-pcep-stateful-stats_2018-11-09","revision":"2018-11-09","schema":"/rests/modules/odl-pcep-stateful-stats?revision=2018-11-09","namespace":"urn:opendaylight:params:xml:ns:yang:pcep:stateful:stats","conformance-type":"import"},{"name":"pcep-topology-stats-rpc_2019-03-21","revision":"2019-03-21","schema":"/rests/modules/pcep-topology-stats-rpc?revision=2019-03-21","namespace":"urn:opendaylight:params:xml:ns:yang:pcep:topology:stats:rpc","conformance-type":"import"},{"name":"rsvp_2015-08-20","revision":"2015-08-20","schema":"/rests/modules/rsvp?revision=2015-08-20","namespace":"urn:opendaylight:params:xml:ns:yang:rsvp","conformance-type":"import"},{"name":"ietf-lisp-address-types_2015-11-05","revision":"2015-11-05","schema":"/rests/modules/ietf-lisp-address-types?revision=2015-11-05","namespace":"urn:ietf:params:xml:ns:yang:ietf-lisp-address-types","conformance-type":"import"},{"name":"pcep-session-stats_2017-11-13","revision":"2017-11-13","schema":"/rests/modules/pcep-session-stats?revision=2017-11-13","namespace":"urn:opendaylight:params:xml:ns:yang:pcep:stats","conformance-type":"import"},{"name":"odl-bgp-topology-types_2016-05-24","revision":"2016-05-24","schema":"/rests/modules/odl-bgp-topology-types?revision=2016-05-24","namespace":"urn:opendaylight:params:xml:ns:yang:odl-bgp-topology-types","conformance-type":"import"},{"name":"odl-pcep-ietf-stateful-config_2023-01-15","revision":"2023-01-15","schema":"/rests/modules/odl-pcep-ietf-stateful-config?revision=2023-01-15","namespace":"urn:opendaylight:params:xml:ns:yang:pcep:ietf-stateful-config","conformance-type":"import"},{"name":"opendaylight-table-types_2013-10-26","revision":"2013-10-26","schema":"/rests/modules/opendaylight-table-types?revision=2013-10-26","namespace":"urn:opendaylight:table:types","conformance-type":"import"},{"name":"forwarding-rules-manager-config_2016-05-11","revision":"2016-05-11","schema":"/rests/modules/forwarding-rules-manager-config?revision=2016-05-11","namespace":"urn:opendaylight:params:xml:ns:yang:openflowplugin:app:forwardingrules-manager:config","conformance-type":"import"},{"name":"odl-srm-types_2018-06-26","revision":"2018-06-26","schema":"/rests/modules/odl-srm-types?revision=2018-06-26","namespace":"urn:opendaylight:serviceutils:srm:types","conformance-type":"import"},{"name":"ietf-x509-cert-to-name_2014-12-10","revision":"2014-12-10","schema":"/rests/modules/ietf-x509-cert-to-name?revision=2014-12-10","namespace":"urn:ietf:params:xml:ns:yang:ietf-x509-cert-to-name","conformance-type":"import"},{"name":"flow-node-inventory_2013-08-19","revision":"2013-08-19","schema":"/rests/modules/flow-node-inventory?revision=2013-08-19","namespace":"urn:opendaylight:flow:inventory","conformance-type":"import"},{"name":"network-topology-sr_2013-08-19","revision":"2013-08-19","schema":"/rests/modules/network-topology-sr?revision=2013-08-19","namespace":"urn:opendaylight:params:xml:ns:yang:topology:sr","conformance-type":"import"},{"name":"flow-errors_2013-11-16","revision":"2013-11-16","schema":"/rests/modules/flow-errors?revision=2013-11-16","namespace":"urn:opendaylight:flow:errors","conformance-type":"import"},{"name":"rfc2385_2016-03-24","revision":"2016-03-24","schema":"/rests/modules/rfc2385?revision=2016-03-24","namespace":"urn:opendaylight:params:xml:ns:yang:controller:rfc2385:cfg","conformance-type":"import"},{"name":"network-topology-programming_2013-11-02","revision":"2013-11-02","schema":"/rests/modules/network-topology-programming?revision=2013-11-02","namespace":"urn:opendaylight:params:xml:ns:yang:topology:programming","conformance-type":"import"},{"name":"graph_2025-01-15","revision":"2025-01-15","schema":"/rests/modules/graph?revision=2025-01-15","namespace":"urn:opendaylight:params:xml:ns:yang:graph","conformance-type":"import"},{"name":"ietf-netconf_2011-06-01","revision":"2011-06-01","schema":"/rests/modules/ietf-netconf?revision=2011-06-01","namespace":"urn:ietf:params:xml:ns:netconf:base:1.0","conformance-type":"import","feature":["url","xpath","rollback-on-error","validate","confirmed-commit","candidate","startup","writable-running"]},{"name":"odl-network-topology_2014-01-13","revision":"2014-01-13","schema":"/rests/modules/odl-network-topology?revision=2014-01-13","namespace":"urn:opendaylight:params:xml:ns:yang:network:topology","conformance-type":"import"},{"name":"iana-ssh-public-key-algs_2024-10-16","revision":"2024-10-16","schema":"/rests/modules/iana-ssh-public-key-algs?revision=2024-10-16","namespace":"urn:ietf:params:xml:ns:yang:iana-ssh-public-key-algs","conformance-type":"import"},{"name":"aaa-cert-mdsal_2016-03-21","revision":"2016-03-21","schema":"/rests/modules/aaa-cert-mdsal?revision=2016-03-21","namespace":"urn:opendaylight:yang:aaa:cert:mdsal","conformance-type":"import"},{"name":"odl-device-notification_2024-02-18","revision":"2024-02-18","schema":"/rests/modules/odl-device-notification?revision=2024-02-18","namespace":"urn:opendaylight:device:notification","conformance-type":"import"},{"name":"ietf-origin_2018-02-14","revision":"2018-02-14","schema":"/rests/modules/ietf-origin?revision=2018-02-14","namespace":"urn:ietf:params:xml:ns:yang:ietf-origin","conformance-type":"import"},{"name":"openflow-augments_2015-02-25","revision":"2015-02-25","schema":"/rests/modules/openflow-augments?revision=2015-02-25","namespace":"urn:opendaylight:openflow:augments","conformance-type":"import"},{"name":"iana-ssh-encryption-algs_2024-10-16","revision":"2024-10-16","schema":"/rests/modules/iana-ssh-encryption-algs?revision=2024-10-16","namespace":"urn:ietf:params:xml:ns:yang:iana-ssh-encryption-algs","conformance-type":"import"},{"name":"ietf-truststore_2024-10-10","revision":"2024-10-10","schema":"/rests/modules/ietf-truststore?revision=2024-10-10","namespace":"urn:ietf:params:xml:ns:yang:ietf-truststore","conformance-type":"import","feature":["inline-definitions-supported"]},{"name":"openconfig-bgp_2015-10-09","revision":"2015-10-09","schema":"/rests/modules/openconfig-bgp?revision=2015-10-09","namespace":"http://openconfig.net/yang/bgp","conformance-type":"import"},{"name":"bgp-peer-rpc_2018-03-29","revision":"2018-03-29","schema":"/rests/modules/bgp-peer-rpc?revision=2018-03-29","namespace":"urn:opendaylight:params:xml:ns:yang:bgp-peer-rpc","conformance-type":"import"},{"name":"pcep-server_2022-03-21","revision":"2022-03-21","schema":"/rests/modules/pcep-server?revision=2022-03-21","namespace":"urn:opendaylight:params:xml:ns:yang:pcep:server","conformance-type":"import"},{"name":"distributed-datastore-provider_2025-01-30","revision":"2025-01-30","schema":"/rests/modules/distributed-datastore-provider?revision=2025-01-30","namespace":"urn:opendaylight:params:xml:ns:yang:controller:config:distributed-datastore-provider","conformance-type":"import"},{"name":"network-topology-pcep_2025-03-28","revision":"2025-03-28","schema":"/rests/modules/network-topology-pcep?revision=2025-03-28","namespace":"urn:opendaylight:params:xml:ns:yang:topology:pcep","conformance-type":"import"},{"name":"opendaylight-group-types_2013-10-18","revision":"2013-10-18","schema":"/rests/modules/opendaylight-group-types?revision=2013-10-18","namespace":"urn:opendaylight:group:types","conformance-type":"import"},{"name":"ovsdb_2015-01-05","revision":"2015-01-05","schema":"/rests/modules/ovsdb?revision=2015-01-05","namespace":"urn:opendaylight:params:xml:ns:yang:ovsdb","conformance-type":"import"},{"name":"bgp-l3vpn-mcast_2018-04-17","revision":"2018-04-17","schema":"/rests/modules/bgp-l3vpn-mcast?revision=2018-04-17","namespace":"urn:opendaylight:params:xml:ns:yang:bgp:l3vpn:mcast","conformance-type":"import"},{"name":"sal-remote-augment_2023-11-03","revision":"2023-11-03","schema":"/rests/modules/sal-remote-augment?revision=2023-11-03","namespace":"urn:sal:restconf:event:subscription","conformance-type":"import"},{"name":"iana-routing-types_2022-08-19","revision":"2022-08-19","schema":"/rests/modules/iana-routing-types?revision=2022-08-19","namespace":"urn:ietf:params:xml:ns:yang:iana-routing-types","conformance-type":"import"},{"name":"odl-mappingservice_2015-09-06","revision":"2015-09-06","schema":"/rests/modules/odl-mappingservice?revision=2015-09-06","namespace":"urn:opendaylight:lfm:mappingservice","conformance-type":"import"},{"name":"opendaylight-ipv6-arbitrary-bitmask-fields_2016-02-24","revision":"2016-02-24","schema":"/rests/modules/opendaylight-ipv6-arbitrary-bitmask-fields?revision=2016-02-24","namespace":"urn:opendaylight:opendaylight-ipv6-arbitrary-bitmask-fields","conformance-type":"import"},{"name":"sal-flows-batch_2016-03-14","revision":"2016-03-14","schema":"/rests/modules/sal-flows-batch?revision=2016-03-14","namespace":"urn:opendaylight:flows:service","conformance-type":"import"},{"name":"bmp-monitor_2020-01-20","revision":"2020-01-20","schema":"/rests/modules/bmp-monitor?revision=2020-01-20","namespace":"urn:opendaylight:params:xml:ns:yang:bmp-monitor","conformance-type":"import"},{"name":"ietf-tls-common_2024-10-10","revision":"2024-10-10","schema":"/rests/modules/ietf-tls-common?revision=2024-10-10","namespace":"urn:ietf:params:xml:ns:yang:ietf-tls-common","conformance-type":"import","feature":["hello-params","tls12","tls13"]},{"name":"openflow-types_2013-07-31","revision":"2013-07-31","schema":"/rests/modules/openflow-types?revision=2013-07-31","namespace":"urn:opendaylight:openflow:common:types","conformance-type":"import"},{"name":"odl-pcep-ietf-stateful_2025-03-28","revision":"2025-03-28","schema":"/rests/modules/odl-pcep-ietf-stateful?revision=2025-03-28","namespace":"urn:opendaylight:params:xml:ns:yang:pcep:ietf:stateful","conformance-type":"import"},{"name":"ietf-netconf-with-defaults_2011-06-01","revision":"2011-06-01","schema":"/rests/modules/ietf-netconf-with-defaults?revision=2011-06-01","namespace":"urn:ietf:params:xml:ns:yang:ietf-netconf-with-defaults","conformance-type":"import"},{"name":"jsonrpc_2016-12-01","revision":"2016-12-01","schema":"/rests/modules/jsonrpc?revision=2016-12-01","namespace":"urn:opendaylight:jsonrpc","conformance-type":"import"},{"name":"odl-srm-ops_2018-06-26","revision":"2018-06-26","schema":"/rests/modules/odl-srm-ops?revision=2018-06-26","namespace":"urn:opendaylight:serviceutils:srm:ops","conformance-type":"import"},{"name":"odl-general-entity_2015-09-30","revision":"2015-09-30","schema":"/rests/modules/odl-general-entity?revision=2015-09-30","namespace":"urn:opendaylight:params:xml:ns:yang:mdsal:core:general-entity","conformance-type":"import"},{"name":"path-computation_2022-03-24","revision":"2022-03-24","schema":"/rests/modules/path-computation?revision=2022-03-24","namespace":"urn:opendaylight:params:xml:ns:yang:path:computation","conformance-type":"import"},{"name":"iana-ssh-key-exchange-algs_2024-10-16","revision":"2024-10-16","schema":"/rests/modules/iana-ssh-key-exchange-algs?revision=2024-10-16","namespace":"urn:ietf:params:xml:ns:yang:iana-ssh-key-exchange-algs","conformance-type":"import"},{"name":"node-ssl-connection-error_2019-07-23","revision":"2019-07-23","schema":"/rests/modules/node-ssl-connection-error?revision=2019-07-23","namespace":"urn:opendaylight:node-ssl-connection-error:service","conformance-type":"import"},{"name":"openflow-protocol_2013-07-31","revision":"2013-07-31","schema":"/rests/modules/openflow-protocol?revision=2013-07-31","namespace":"urn:opendaylight:openflow:protocol","conformance-type":"import"},{"name":"pcep-types_2025-06-02","revision":"2025-06-02","schema":"/rests/modules/pcep-types?revision=2025-06-02","namespace":"urn:opendaylight:params:xml:ns:yang:pcep:types","conformance-type":"import"},{"name":"network-concepts_2013-11-25","revision":"2013-11-25","schema":"/rests/modules/network-concepts?revision=2013-11-25","namespace":"urn:opendaylight:params:xml:ns:yang:network:concepts","conformance-type":"import"},{"name":"bgp-test_2018-05-15","revision":"2018-05-15","schema":"/rests/modules/bgp-test?revision=2018-05-15","namespace":"urn:opendaylight:params:xml:ns:yang:bgp:test","conformance-type":"import"},{"name":"ted_2013-10-21","revision":"2013-10-21","schema":"/rests/modules/ted?revision=2013-10-21","namespace":"urn:TBD:params:xml:ns:yang:network:ted","conformance-type":"import"},{"name":"odl-pcep-p2mp-te-lsp_2018-11-09","revision":"2018-11-09","schema":"/rests/modules/odl-pcep-p2mp-te-lsp?revision=2018-11-09","namespace":"urn:opendaylight:params:xml:ns:yang:pcep:p2mp:te:lsp","conformance-type":"import"},{"name":"ietf-keystore_2024-10-10","revision":"2024-10-10","schema":"/rests/modules/ietf-keystore?revision=2024-10-10","namespace":"urn:ietf:params:xml:ns:yang:ietf-keystore","conformance-type":"import","feature":["asymmetric-keys","inline-definitions-supported"]},{"name":"aaa_2016-12-14","revision":"2016-12-14","schema":"/rests/modules/aaa?revision=2016-12-14","namespace":"urn:opendaylight:params:xml:ns:yang:aaa","conformance-type":"import"},{"name":"aaa-cert-rpc_2015-12-15","revision":"2015-12-15","schema":"/rests/modules/aaa-cert-rpc?revision=2015-12-15","namespace":"urn:opendaylight:yang:aaa:cert:rpc","conformance-type":"import"},{"name":"openconfig-types_2015-10-09","revision":"2015-10-09","schema":"/rests/modules/openconfig-types?revision=2015-10-09","namespace":"http://openconfig.net/yang/openconfig-types","conformance-type":"import"},{"name":"system-notifications_2013-09-27","revision":"2013-09-27","schema":"/rests/modules/system-notifications?revision=2013-09-27","namespace":"urn:opendaylight:openflow:system","conformance-type":"import"},{"name":"sal-flat-batch_2016-03-21","revision":"2016-03-21","schema":"/rests/modules/sal-flat-batch?revision=2016-03-21","namespace":"urn:opendaylight:flat-batch:service","conformance-type":"import"},{"name":"bgp-openconfig-extensions_2018-03-29","revision":"2018-03-29","schema":"/rests/modules/bgp-openconfig-extensions?revision=2018-03-29","namespace":"urn:opendaylight:params:xml:ns:yang:bgp:openconfig-extensions","conformance-type":"import"},{"name":"notifications_2008-07-14","revision":"2008-07-14","schema":"/rests/modules/notifications?revision=2008-07-14","namespace":"urn:ietf:params:xml:ns:netconf:notification:1.0","conformance-type":"import"},{"name":"bgp-mvpn_2020-01-20","revision":"2020-01-20","schema":"/rests/modules/bgp-mvpn?revision=2020-01-20","namespace":"urn:opendaylight:params:xml:ns:yang:bgp:mvpn","conformance-type":"import"},{"name":"sal-remote_2014-01-14","revision":"2014-01-14","schema":"/rests/modules/sal-remote?revision=2014-01-14","namespace":"urn:opendaylight:params:xml:ns:yang:controller:md:sal:remote","conformance-type":"import"},{"name":"odl-lisp-sb_2015-09-04","revision":"2015-09-04","schema":"/rests/modules/odl-lisp-sb?revision=2015-09-04","namespace":"urn:opendaylight:lfm:lisp-sb","conformance-type":"import"},{"name":"yang-ext_2013-07-09","revision":"2013-07-09","schema":"/rests/modules/yang-ext?revision=2013-07-09","namespace":"urn:opendaylight:yang:extension:yang-ext","conformance-type":"import"},{"name":"opendaylight-multipart-types_2017-01-12","revision":"2017-01-12","schema":"/rests/modules/opendaylight-multipart-types?revision=2017-01-12","namespace":"urn:opendaylight:multipart:types","conformance-type":"import"},{"name":"opendaylight-inventory_2013-08-19","revision":"2013-08-19","schema":"/rests/modules/opendaylight-inventory?revision=2013-08-19","namespace":"urn:opendaylight:inventory","conformance-type":"import"},{"name":"sal-queue_2015-03-05","revision":"2015-03-05","schema":"/rests/modules/sal-queue?revision=2015-03-05","namespace":"urn:opendaylight:queue:service","conformance-type":"import"},{"name":"sal-groups-batch_2016-03-15","revision":"2016-03-15","schema":"/rests/modules/sal-groups-batch?revision=2016-03-15","namespace":"urn:opendaylight:groups:service","conformance-type":"import"},{"name":"odl-pcep-ietf-initiated_2020-07-20","revision":"2020-07-20","schema":"/rests/modules/odl-pcep-ietf-initiated?revision=2020-07-20","namespace":"urn:opendaylight:params:xml:ns:yang:pcep:ietf:initiated","conformance-type":"import"},{"name":"arbitrator-reconcile_2018-02-27","revision":"2018-02-27","schema":"/rests/modules/arbitrator-reconcile?revision=2018-02-27","namespace":"urn:opendaylight:params:xml:ns:yang:openflowplugin:app:arbitrator-reconcile:service","conformance-type":"import"},{"name":"ietf-yang-metadata_2016-08-05","revision":"2016-08-05","schema":"/rests/modules/ietf-yang-metadata?revision=2016-08-05","namespace":"urn:ietf:params:xml:ns:yang:ietf-yang-metadata","conformance-type":"import"},{"name":"bgp-rib_2018-03-29","revision":"2018-03-29","schema":"/rests/modules/bgp-rib?revision=2018-03-29","namespace":"urn:opendaylight:params:xml:ns:yang:bgp-rib","conformance-type":"import"},{"name":"opendaylight-arbitrary-bitmask-fields_2016-01-30","revision":"2016-01-30","schema":"/rests/modules/opendaylight-arbitrary-bitmask-fields?revision=2016-01-30","namespace":"urn:opendaylight:arbitrary:bitmask:fields","conformance-type":"import"},{"name":"network-pcep-topology-stats_2018-11-09","revision":"2018-11-09","schema":"/rests/modules/network-pcep-topology-stats?revision=2018-11-09","namespace":"urn:opendaylight:params:xml:ns:yang:topology:pcep:stats","conformance-type":"import"},{"name":"opendaylight-meter-types_2013-09-18","revision":"2013-09-18","schema":"/rests/modules/opendaylight-meter-types?revision=2013-09-18","namespace":"urn:opendaylight:meter:types","conformance-type":"import"},{"name":"opendaylight-action-types_2013-11-12","revision":"2013-11-12","schema":"/rests/modules/opendaylight-action-types?revision=2013-11-12","namespace":"urn:opendaylight:action:types","conformance-type":"import"},{"name":"sal-role_2015-07-27","revision":"2015-07-27","schema":"/rests/modules/sal-role?revision=2015-07-27","namespace":"urn:opendaylight:role:service","conformance-type":"import"},{"name":"openflow-provider-config_2016-05-10","revision":"2016-05-10","schema":"/rests/modules/openflow-provider-config?revision=2016-05-10","namespace":"urn:opendaylight:params:xml:ns:yang:openflow:provider:config","conformance-type":"import"},{"name":"topology-tunnel-pcep-config_2018-11-09","revision":"2018-11-09","schema":"/rests/modules/topology-tunnel-pcep-config?revision=2018-11-09","namespace":"urn:opendaylight:params:xml:ns:yang:topology:tunnel:pcep:config","conformance-type":"import"},{"name":"odl-serviceutils-upgrade_2018-07-02","revision":"2018-07-02","schema":"/rests/modules/odl-serviceutils-upgrade?revision=2018-07-02","namespace":"urn:opendaylight:serviceutils:upgrade","conformance-type":"import"},{"name":"opendaylight-match-types_2013-10-26","revision":"2013-10-26","schema":"/rests/modules/opendaylight-match-types?revision=2013-10-26","namespace":"urn:opendaylight:model:match:types","conformance-type":"import"},{"name":"odl-inet-binary-types_2016-03-03","revision":"2016-03-03","schema":"/rests/modules/odl-inet-binary-types?revision=2016-03-03","namespace":"urn:opendaylight:lfm:inet-binary-types","conformance-type":"import"},{"name":"ietf-restconf-server_2024-08-14","revision":"2024-08-14","schema":"/rests/modules/ietf-restconf-server?revision=2024-08-14","namespace":"urn:ietf:params:xml:ns:yang:ietf-restconf-server","conformance-type":"import","feature":["https-listen","http-listen"]},{"name":"reconciliation-result-state_2017-07-13","revision":"2017-07-13","schema":"/rests/modules/reconciliation-result-state?revision=2017-07-13","namespace":"urn:opendaylight:params:xml:ns:yang:openflowplugin:rf:state","conformance-type":"import"},{"name":"ietf-routing-types_2017-12-04","revision":"2017-12-04","schema":"/rests/modules/ietf-routing-types?revision=2017-12-04","namespace":"urn:ietf:params:xml:ns:yang:ietf-routing-types","conformance-type":"import"},{"name":"onf-extensions_2017-01-24","revision":"2017-01-24","schema":"/rests/modules/onf-extensions?revision=2017-01-24","namespace":"urn:opendaylight:openflowplugin:extension:onf","conformance-type":"import"},{"name":"sal-table_2013-10-26","revision":"2013-10-26","schema":"/rests/modules/sal-table?revision=2013-10-26","namespace":"urn:opendaylight:table:service","conformance-type":"import"},{"name":"odl-bgp-policy_2020-01-20","revision":"2020-01-20","schema":"/rests/modules/odl-bgp-policy?revision=2020-01-20","namespace":"urn:opendaylight:params:xml:ns:yang:odl:bgp:default:policy","conformance-type":"import"},{"name":"opendaylight-direct-statistics_2016-05-11","revision":"2016-05-11","schema":"/rests/modules/opendaylight-direct-statistics?revision=2016-05-11","namespace":"urn:opendaylight:direct:statistics","conformance-type":"import"},{"name":"openconfig-local-routing_2015-10-09","revision":"2015-10-09","schema":"/rests/modules/openconfig-local-routing?revision=2015-10-09","namespace":"http://openconfig.net/yang/local-routing","conformance-type":"import"},{"name":"programming_2015-07-20","revision":"2015-07-20","schema":"/rests/modules/programming?revision=2015-07-20","namespace":"urn:opendaylight:params:xml:ns:yang:programming","conformance-type":"import"},{"name":"bgp-types_2020-01-20","revision":"2020-01-20","schema":"/rests/modules/bgp-types?revision=2020-01-20","namespace":"urn:opendaylight:params:xml:ns:yang:bgp-types","conformance-type":"import"},{"name":"bgp-route-target-constrain_2018-06-18","revision":"2018-06-18","schema":"/rests/modules/bgp-route-target-constrain?revision=2018-06-18","namespace":"urn:opendaylight:params:xml:ns:yang:bgp:route:target:constrain","conformance-type":"import"},{"name":"opendaylight-port-types_2013-09-25","revision":"2013-09-25","schema":"/rests/modules/opendaylight-port-types?revision=2013-09-25","namespace":"urn:opendaylight:flow:types:port","conformance-type":"import"},{"name":"sal-async-config_2017-06-19","revision":"2017-06-19","schema":"/rests/modules/sal-async-config?revision=2017-06-19","namespace":"urn:opendaylight:async-config:service","conformance-type":"import"},{"name":"aaa-password-service-config_2017-06-19","revision":"2017-06-19","schema":"/rests/modules/aaa-password-service-config?revision=2017-06-19","namespace":"urn:opendaylight:aaa:password:service:config","conformance-type":"import"},{"name":"openconfig-bgp-types_2015-10-09","revision":"2015-10-09","schema":"/rests/modules/openconfig-bgp-types?revision=2015-10-09","namespace":"http://openconfig.net/yang/bgp-types","conformance-type":"import"},{"name":"data-export-import_2016-09-21","revision":"2016-09-21","schema":"/rests/modules/data-export-import?revision=2016-09-21","namespace":"urn:opendaylight:daexim","conformance-type":"import"},{"name":"topology-tunnel_2013-08-19","revision":"2013-08-19","schema":"/rests/modules/topology-tunnel?revision=2013-08-19","namespace":"urn:opendaylight:params:xml:ns:yang:topology:tunnel","conformance-type":"import"},{"name":"ietf-yang-types_2013-07-15","revision":"2013-07-15","schema":"/rests/modules/ietf-yang-types?revision=2013-07-15","namespace":"urn:ietf:params:xml:ns:yang:ietf-yang-types","conformance-type":"import"},{"name":"opendaylight-queue-statistics_2013-12-16","revision":"2013-12-16","schema":"/rests/modules/opendaylight-queue-statistics?revision=2013-12-16","namespace":"urn:opendaylight:queue:statistics","conformance-type":"import"},{"name":"sal-bundle_2017-01-24","revision":"2017-01-24","schema":"/rests/modules/sal-bundle?revision=2017-01-24","namespace":"urn:opendaylight:openflowplugin:extension:onf:bundle:service","conformance-type":"import"},{"name":"ietf-restconf-subscribed-notifications_2019-11-17","revision":"2019-11-17","schema":"/rests/modules/ietf-restconf-subscribed-notifications?revision=2019-11-17","namespace":"urn:ietf:params:xml:ns:yang:ietf-restconf-subscribed-notifications","conformance-type":"import"},{"name":"bgp-vpn-ipv6_2018-03-29","revision":"2018-03-29","schema":"/rests/modules/bgp-vpn-ipv6?revision=2018-03-29","namespace":"urn:opendaylight:params:xml:ns:yang:bgp-vpn-ipv6","conformance-type":"import"},{"name":"bmp-message_2020-01-20","revision":"2020-01-20","schema":"/rests/modules/bmp-message?revision=2020-01-20","namespace":"urn:opendaylight:params:xml:ns:yang:bmp-message","conformance-type":"import"},{"name":"sal-meters-batch_2016-03-16","revision":"2016-03-16","schema":"/rests/modules/sal-meters-batch?revision=2016-03-16","namespace":"urn:opendaylight:meters:service","conformance-type":"import"},{"name":"odl-entity-owners","revision":"","schema":"/rests/modules/odl-entity-owners","namespace":"urn:opendaylight:params:xml:ns:yang:controller:entity-owners","conformance-type":"import"},{"name":"ietf-http-server_2024-02-08","revision":"2024-02-08","schema":"/rests/modules/ietf-http-server?revision=2024-02-08","namespace":"urn:ietf:params:xml:ns:yang:ietf-http-server","conformance-type":"import","feature":["tcp-supported","tls-supported"]},{"name":"sal-experimenter-mp-message_2015-10-20","revision":"2015-10-20","schema":"/rests/modules/sal-experimenter-mp-message?revision=2015-10-20","namespace":"urn:opendaylight:experimenter-mp-message:service","conformance-type":"import"},{"name":"odl-pcep-auto-bandwidth_2018-11-09","revision":"2018-11-09","schema":"/rests/modules/odl-pcep-auto-bandwidth?revision=2018-11-09","namespace":"urn:opendaylight:params:xml:ns:yang:controller:pcep:auto:bandwidth","conformance-type":"import"},{"name":"topology-tunnel-pcep_2018-11-09","revision":"2018-11-09","schema":"/rests/modules/topology-tunnel-pcep?revision=2018-11-09","namespace":"urn:opendaylight:params:xml:ns:yang:topology:tunnel:pcep","conformance-type":"import"},{"name":"odl-pcep-topology-provider_2023-01-15","revision":"2023-01-15","schema":"/rests/modules/odl-pcep-topology-provider?revision=2023-01-15","namespace":"urn:opendaylight:params:xml:ns:yang:odl:pcep:topology-provider","conformance-type":"import"},{"name":"openconfig-bgp-policy_2015-10-09","revision":"2015-10-09","schema":"/rests/modules/openconfig-bgp-policy?revision=2015-10-09","namespace":"http://openconfig.net/yang/bgp-policy","conformance-type":"import"},{"name":"ospf-topology_2013-10-21","revision":"2013-10-21","schema":"/rests/modules/ospf-topology?revision=2013-10-21","namespace":"urn:TBD:params:xml:ns:yang:ospf-topology","conformance-type":"import"},{"name":"packet-processing_2013-07-09","revision":"2013-07-09","schema":"/rests/modules/packet-processing?revision=2013-07-09","namespace":"urn:opendaylight:packet:service","conformance-type":"import"},{"name":"openflow-configuration_2014-06-30","revision":"2014-06-30","schema":"/rests/modules/openflow-configuration?revision=2014-06-30","namespace":"urn:opendaylight:openflow:config","conformance-type":"import"},{"name":"odl-srm-rpcs_2018-06-26","revision":"2018-06-26","schema":"/rests/modules/odl-srm-rpcs?revision=2018-06-26","namespace":"urn:opendaylight:serviceutils:srm:rpc","conformance-type":"import"},{"name":"isis-topology_2013-10-21","revision":"2013-10-21","schema":"/rests/modules/isis-topology?revision=2013-10-21","namespace":"urn:TBD:params:xml:ns:yang:network:isis-topology","conformance-type":"import"},{"name":"ietf-netconf-acm_2018-02-14","revision":"2018-02-14","schema":"/rests/modules/ietf-netconf-acm?revision=2018-02-14","namespace":"urn:ietf:params:xml:ns:yang:ietf-netconf-acm","conformance-type":"import"},{"name":"bgp-flowspec_2020-01-20","revision":"2020-01-20","schema":"/rests/modules/bgp-flowspec?revision=2020-01-20","namespace":"urn:opendaylight:params:xml:ns:yang:bgp-flowspec","conformance-type":"import"},{"name":"iana-crypt-hash_2014-08-06","revision":"2014-08-06","schema":"/rests/modules/iana-crypt-hash?revision=2014-08-06","namespace":"urn:ietf:params:xml:ns:yang:iana-crypt-hash","conformance-type":"import","feature":["crypt-hash-sha-512","crypt-hash-sha-256","crypt-hash-md5"]},{"name":"openflow-extensible-match_2015-02-25","revision":"2015-02-25","schema":"/rests/modules/openflow-extensible-match?revision=2015-02-25","namespace":"urn:opendaylight:openflow:oxm","conformance-type":"import"}],"module-set-id":"12"}}</msg>
<arg>${response.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:33.731492" elapsed="0.005020"/>
</kw>
<status status="PASS" start="2026-05-25T01:56:33.731050" elapsed="0.005594"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:33.731019" elapsed="0.005684"/>
</if>
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:33.740739" level="INFO">200</msg>
<arg>${response.status_code}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:33.737231" elapsed="0.003660"/>
</kw>
<status status="PASS" start="2026-05-25T01:56:33.736791" elapsed="0.004193"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:33.736764" elapsed="0.004256"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:56:33.742001" level="INFO">${status_codes_type} = list</msg>
<var>${status_codes_type}</var>
<arg>type($additional_allowed_status_codes).__name__</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:56:33.741320" elapsed="0.000708"/>
</kw>
<if>
<branch type="IF" condition="&quot;${status_codes_type}&quot;!=&quot;list&quot;">
<kw name="Create List" owner="BuiltIn">
<var>${allowed_status_codes_list}</var>
<arg>${additional_allowed_status_codes}</arg>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:33.742736" elapsed="0.000072"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:33.742146" elapsed="0.000739"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:33.744061" level="INFO">${allowed_status_codes_list} = []</msg>
<var>${allowed_status_codes_list}</var>
<arg>${additional_allowed_status_codes}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:56:33.743407" elapsed="0.000728"/>
</kw>
<status status="PASS" start="2026-05-25T01:56:33.742911" elapsed="0.001301"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:33.742126" elapsed="0.002111"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:56:33.744965" level="INFO">${status_codes_type} = list</msg>
<var>${status_codes_type}</var>
<arg>type($explicit_status_codes).__name__</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:56:33.744414" elapsed="0.000578"/>
</kw>
<if>
<branch type="IF" condition="&quot;${status_codes_type}&quot;!=&quot;list&quot;">
<kw name="Create List" owner="BuiltIn">
<var>${explicit_status_codes_list}</var>
<arg>${explicit_status_codes}</arg>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:33.745693" elapsed="0.000071"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:33.745111" elapsed="0.000731"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:33.747049" level="INFO">${explicit_status_codes_list} = []</msg>
<var>${explicit_status_codes_list}</var>
<arg>${explicit_status_codes}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:56:33.746366" elapsed="0.000741"/>
</kw>
<status status="PASS" start="2026-05-25T01:56:33.745869" elapsed="0.001317"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:33.745089" elapsed="0.002120"/>
</if>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>"""${explicit_status_codes_list}""" != """${NO_STATUS_CODES}"""</arg>
<arg>Collections.List_Should_Contain_Value</arg>
<arg>${explicit_status_codes_list}</arg>
<arg>${response.status_code}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:33.747373" elapsed="0.000739"/>
</kw>
<kw name="Combine Lists" owner="Collections">
<msg time="2026-05-25T01:56:33.748883" level="INFO">${final_allowd_list} = [200, 201, 204]</msg>
<var>${final_allowd_list}</var>
<arg>${ALLOWED_STATUS_CODES}</arg>
<arg>${allowed_status_codes_list}</arg>
<doc>Combines the given ``lists`` together and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:56:33.748330" elapsed="0.000580"/>
</kw>
<kw name="List Should Contain Value" owner="Collections">
<arg>${final_allowd_list}</arg>
<arg>${response.status_code}</arg>
<doc>Fails if the ``value`` is not found from ``list``.</doc>
<status status="PASS" start="2026-05-25T01:56:33.749123" elapsed="0.002608"/>
</kw>
<arg>${response}</arg>
<arg>log_response=${log_response}</arg>
<doc>Log response text, check status_code is one of allowed ones. In cases where this keyword is
called in a WUKS it could end up logging tons of data and it may be desired to skip the logging by passing
log_response=False, but by default it remains True.</doc>
<status status="PASS" start="2026-05-25T01:56:33.730354" elapsed="0.021469"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-05-25T01:56:33.752010" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:33.751895" elapsed="0.000164"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:33.751875" elapsed="0.000291"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<msg time="2026-05-25T01:56:33.778492" level="INFO">${text_normalized} = {
 "ietf-yang-library:modules-state": {
  "module": [
   {
    "conformance-type": "import",
    "feature": [
     "arbitrary-names",
     "if-mib",
     "pre-provisioning"
    ],
    "name": "ietf-in...</msg>
<var>${text_normalized}</var>
<arg>${response.text}</arg>
<arg>jmes_path=${jmes_path}</arg>
<arg>keys_with_volatiles=${keys_with_volatiles}</arg>
<doc>Attempt to return sorted indented JSON string.</doc>
<status status="PASS" start="2026-05-25T01:56:33.752317" elapsed="0.026216"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="PASS" start="2026-05-25T01:56:33.778607" elapsed="0.000050"/>
</return>
<msg time="2026-05-25T01:56:33.778805" level="INFO">${response_text} = {
 "ietf-yang-library:modules-state": {
  "module": [
   {
    "conformance-type": "import",
    "feature": [
     "arbitrary-names",
     "if-mib",
     "pre-provisioning"
    ],
    "name": "ietf-in...</msg>
<var>${response_text}</var>
<arg>uri=${uri}</arg>
<arg>accept=${accept}</arg>
<arg>session=${session}</arg>
<arg>normalize_json=${normalize_json}</arg>
<arg>jmes_path=${jmes_expression}</arg>
<arg>http_timeout=${http_timeout}</arg>
<arg>keys_with_volatiles=${volatiles_list}</arg>
<arg>log_response=${log_response}</arg>
<doc>GET data from given URI, check status code and return response text.
${accept} is a Python object with headers to use.
If ${normalize_json}, normalize as JSON text before returning.</doc>
<status status="PASS" start="2026-05-25T01:56:32.920324" elapsed="0.858507"/>
</kw>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-05-25T01:56:33.778897" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:56:33.779049" level="INFO">${response_text} = {
 "ietf-yang-library:modules-state": {
  "module": [
   {
    "conformance-type": "import",
    "feature": [
     "arbitrary-names",
     "if-mib",
     "pre-provisioning"
    ],
    "name": "ietf-in...</msg>
<var>${response_text}</var>
<arg>folder=${folder}</arg>
<arg>mapping=${mapping}</arg>
<arg>accept=${ACCEPT_EMPTY}</arg>
<arg>session=${session}</arg>
<arg>normalize_json=True</arg>
<arg>http_timeout=${http_timeout}</arg>
<arg>log_response=${log_response}</arg>
<doc>Resolve URI from folder, call Get_From_Uri, return response text.</doc>
<status status="PASS" start="2026-05-25T01:56:32.781620" elapsed="0.997470"/>
</kw>
<if>
<branch type="IF" condition="${verify}">
<kw name="Verify_Response_As_Json_Templated" owner="TemplatedRequests">
<arg>response=${response_text}</arg>
<arg>folder=${folder}</arg>
<arg>base_name=data</arg>
<arg>mapping=${mapping}</arg>
<arg>iterations=${iterations}</arg>
<arg>iter_start=${iter_start}</arg>
<arg>iter_j_offset=${iter_j_offset}</arg>
<doc>Resolve expected JSON data, should be equal to provided ${response}.
JSON normalization is used, endlines enabled for readability.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:33.779481" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:33.779184" elapsed="0.000432"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:33.779163" elapsed="0.000480"/>
</if>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-05-25T01:56:33.779677" elapsed="0.000026"/>
</return>
<arg>session=${session}</arg>
<arg>folder=${RESTCONF_MODULES_DIR}</arg>
<arg>verify=False</arg>
<doc>Add arguments sensible for JSON data, return Get_Templated response text.
Optionally, verification against JSON data (may be iterated) is called.
Only subset of JSON data is verified and returned if JMES path is specified in
file ${folder}/jmespath.expr.</doc>
<status status="PASS" start="2026-05-25T01:56:32.775658" elapsed="1.004147"/>
</kw>
<var name="${index}">1</var>
<status status="PASS" start="2026-05-25T01:56:32.770377" elapsed="1.009469"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="PASS" start="2026-05-25T01:56:32.770226" elapsed="1.009657"/>
</for>
<arg>${member_index_list}</arg>
<status status="PASS" start="2026-05-25T01:56:32.767900" elapsed="1.012043"/>
</kw>
<status status="PASS" start="2026-05-25T01:56:32.767633" elapsed="1.012339"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:32.767617" elapsed="1.012380"/>
</if>
<if>
<branch type="IF" condition="${verify_system_status} and (&quot;${service_list}&quot; != &quot;[[]]&quot;)">
<kw name="Check Status Of Services Is OPERATIONAL" owner="ClusterManagement">
<arg>@{service_list}</arg>
<doc>This keyword will verify whether all the services are operational in all the ODL nodes</doc>
<status status="NOT RUN" start="2026-05-25T01:56:33.780499" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:33.780054" elapsed="0.000506"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:33.780037" elapsed="0.000547"/>
</if>
<arg>${member_index_list}</arg>
<arg>${wait_for_sync}</arg>
<arg>${verify_restconf}</arg>
<arg>${check_system_status}</arg>
<arg>${service_list}</arg>
<doc>Verifies the specified readiness conditions for the given listed members after startup.
If ${verify_cluster_sync}, verifies the datastores have synced with the rest of the cluster.
If True, verifies RESTCONF is available.
If ${verify_system_status}, verifies the system services are OPERATIONAL.</doc>
<status status="PASS" start="2026-05-25T01:56:32.766553" elapsed="1.014080"/>
</kw>
<arg>${timeout}</arg>
<arg>10s</arg>
<arg>Verify_Members_Are_Ready</arg>
<arg>${member_index_list}</arg>
<arg>${wait_for_sync}</arg>
<arg>${verify_restconf}</arg>
<arg>${check_system_status}</arg>
<arg>${service_list}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:56:12.332303" elapsed="21.448395"/>
</kw>
<kw name="Run_Bash_Command_On_List_Or_All" owner="ClusterManagement" type="TEARDOWN">
<kw name="List_Indices_Or_All" owner="ClusterManagement">
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:33.784056" level="INFO">${return_list_reference} = [1]</msg>
<var>${return_list_reference}</var>
<arg>"""${given_list}""" != ""</arg>
<arg>${given_list}</arg>
<arg>${ClusterManagement__member_index_list}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:33.783651" elapsed="0.000484"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-05-25T01:56:33.784630" level="INFO">${return_list_copy} = [1]</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-05-25T01:56:33.784301" elapsed="0.000355"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-05-25T01:56:33.784702" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:56:33.784856" level="INFO">${index_list} = [1]</msg>
<var>${index_list}</var>
<arg>given_list=${member_index_list}</arg>
<doc>Utility to allow ${EMPTY} as default argument value, as the internal list is computed at runtime.
This keyword always returns a (shallow) copy of given or default list,
so operations with the returned list should not affect other lists.
Also note that this keyword does not consider empty list to be ${EMPTY}.</doc>
<status status="PASS" start="2026-05-25T01:56:33.783236" elapsed="0.001645"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Run_Bash_Command_On_Member" owner="ClusterManagement">
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-05-25T01:56:33.785963" level="INFO">${member_ip} = 10.30.170.200</msg>
<var>${member_ip}</var>
<arg>dictionary=${ClusterManagement__index_to_ip_mapping}</arg>
<arg>key=${member_index}</arg>
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
<status status="PASS" start="2026-05-25T01:56:33.785697" elapsed="0.000292"/>
</kw>
<kw name="Run_Keyword_Preserve_Connection" owner="SSHKeywords">
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:33.786806" level="INFO">index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:56:33.786909" level="INFO">${current_connection} = index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:56:33.786655" elapsed="0.000281"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Controller" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:33.790836" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:33.790413" elapsed="0.000509"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:33.790385" elapsed="0.000571"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:33.791353" level="INFO">index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:56:33.791499" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:56:33.791190" elapsed="0.000347"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:33.792869" level="INFO">Attempting to execute command "netstat -pnatu | grep 2550" on remote system "10.30.170.200" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:33.791750" elapsed="0.001197"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:33.793991" level="INFO">${conn_id} = 17</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:33.793202" elapsed="0.000828"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:56:33.795991" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:56:33.796204" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:56:33.795105" elapsed="0.001153"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:33.796664" elapsed="0.000924"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:56:33.799759" level="INFO">Logging into '10.30.170.200:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:56:34.439013" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-173-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:56:34 UTC 2026

  System load:  1.21               Processes:             122
  Usage of /:   11.1% of 77.35GB   Users logged in:       0
  Memory usage: 8%                 IPv4 address for ens3: 10.30.170.200
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

10 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:56:12 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-0-builder-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:56:33.799278" elapsed="0.640211"/>
</kw>
<msg time="2026-05-25T01:56:34.439707" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:33.797924" elapsed="0.642059"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:56:33.794368" elapsed="0.646083"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:56:34.441500" level="INFO">Executing command 'netstat -pnatu | grep 2550'.</msg>
<msg time="2026-05-25T01:56:34.454246" level="INFO">Command exited with return code 1.</msg>
<msg time="2026-05-25T01:56:34.454495" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:56:34.454594" level="INFO">${stderr} = bash: line 1: netstat: command not found</msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:56:34.440912" elapsed="0.013734"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:34.455025" elapsed="0.000536"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:34.456822" level="INFO">bash: line 1: netstat: command not found</msg>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:34.456059" elapsed="0.000869"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:34.457469" elapsed="0.000040"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:34.457150" elapsed="0.000430"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:34.457055" elapsed="0.000578"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:56:34.457998" elapsed="0.000061"/>
</return>
<status status="PASS" start="2026-05-25T01:56:34.457756" elapsed="0.000416"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:34.457721" elapsed="0.000505"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:34.458303" elapsed="0.000033"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:56:34.480913" elapsed="0.000329"/>
</kw>
<msg time="2026-05-25T01:56:34.481318" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:34.479027" elapsed="0.002400"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:34.481623" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:34.481805" elapsed="0.000020"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:56:34.459016" elapsed="0.022870"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:56:33.789590" elapsed="0.692386"/>
</kw>
<msg time="2026-05-25T01:56:34.482029" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:33.788608" elapsed="0.693496"/>
</kw>
<arg>@{args}</arg>
<arg>&amp;{kwargs}</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Controller machine.</doc>
<status status="PASS" start="2026-05-25T01:56:33.787724" elapsed="0.694459"/>
</kw>
<msg time="2026-05-25T01:56:34.482225" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${keyword_name}</arg>
<arg>@{args}</arg>
<arg>&amp;{kwargs}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:33.787136" elapsed="0.695203"/>
</kw>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:56:34.485849" elapsed="0.000136"/>
</kw>
<msg time="2026-05-25T01:56:34.486029" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:34.485395" elapsed="0.000712"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:34.486267" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:34.486428" elapsed="0.000021"/>
</kw>
<arg>${current_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:56:34.482640" elapsed="0.003868"/>
</kw>
<msg time="2026-05-25T01:56:34.486599" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>Utils.Run_Command_On_Controller</arg>
<arg>${member_ip}</arg>
<arg>${command}</arg>
<doc>Store current connection index, run keyword returning its result, restore connection in teardown.
Note that in order to avoid "got positional argument after named arguments", it is safer to use positional (not named) arguments on call.</doc>
<status status="PASS" start="2026-05-25T01:56:33.786222" elapsed="0.700401"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:34.487213" level="INFO"/>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:34.486815" elapsed="0.000444"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:56:34.487303" elapsed="0.000029"/>
</return>
<arg>command=${command}</arg>
<arg>member_index=${index}</arg>
<doc>Obtain IP, call Utils and return output. This keeps previous ssh session active.</doc>
<status status="PASS" start="2026-05-25T01:56:33.785265" elapsed="0.702163"/>
</kw>
<var name="${index}">1</var>
<status status="PASS" start="2026-05-25T01:56:33.785085" elapsed="0.702382"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="PASS" start="2026-05-25T01:56:33.784936" elapsed="0.702567"/>
</for>
<arg>command=netstat -pnatu | grep 2550</arg>
<doc>Cycle through indices (or all), run command on each.</doc>
<status status="PASS" start="2026-05-25T01:56:33.780971" elapsed="0.706591"/>
</kw>
<arg>wait_for_sync=False</arg>
<doc>If the list is empty, start all cluster members. Otherwise, start members based on present indices.
If ${wait_for_sync}, wait for cluster sync on listed members.
Optionally karaf_home can be overriden. Optionally specific JAVA_HOME is used for starting.
Garbage collection is unconditionally logged to files. TODO: Make that reasonable conditional?</doc>
<status status="PASS" start="2026-05-25T01:56:11.946851" elapsed="22.540764"/>
</kw>
<doc>Stop and Start controller.</doc>
<status status="PASS" start="2026-05-25T01:56:03.309913" elapsed="31.177831"/>
</test>
<test id="s1-s5-s1-t18" name="Check Linear Topology After Controller Restarts" line="128">
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Linear Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:34.507551" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:34.511040" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 24-May-2026 01:56:34 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3118'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}]},{"node-id":"openflow:3","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}]},{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}]}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:56:34.511437" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:34.489550" elapsed="0.022068"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:34.517764" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"},{"tp-id":"openflow:2:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:1']"},{"tp-id":"openflow:2:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:2']"},{"tp-id":"openflow:2:3","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:3']"}]},{"node-id":"openflow:3","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']","termination-point":[{"tp-id":"openflow:3:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:1']"},{"tp-id":"openflow:3:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:2']"},{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}]},{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}]}],"link":[{"link-id":"openflow:2:2","source":{"source-node":"openflow:2","source-tp":"openflow:2:2"},"destination":{"dest-tp":"openflow:1:2","dest-node":"openflow:1"}},{"link-id":"openflow:3:2","source":{"source-node":"openflow:3","source-tp":"openflow:3:2"},"destination":{"dest-tp":"openflow:2:3","dest-node":"openflow:2"}},{"link-id":"openflow:2:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:3:2","dest-node":"openflow:3"}},{"link-id":"openflow:1:2","source":{"source-node":"openflow:1","source-tp":"openflow:1:2"},"destination":{"dest-tp":"openflow:2:2","dest-node":"openflow:2"}}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:34.512397" elapsed="0.005473"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"node-id":"openflow:${switch}"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:56:34.521522" elapsed="0.003856"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:1"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:56:34.525654" elapsed="0.003355"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:56:34.529218" elapsed="0.002417"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:56:34.531829" elapsed="0.002440"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:56:34.534463" elapsed="0.002421"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:56:34.537576" level="INFO">${edge} = True</msg>
<var>${edge}</var>
<arg>${switch}==1 or ${switch}==${switches}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:56:34.537102" elapsed="0.000501"/>
</kw>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:34.537943" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:34.537692" elapsed="0.000310"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:34.537666" elapsed="0.000367"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:34.538343" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:34.538105" elapsed="0.000296"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:34.538088" elapsed="0.000336"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:34.538707" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:34.538475" elapsed="0.000288"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:34.538460" elapsed="0.000326"/>
</if>
<var name="${switch}">1</var>
<status status="PASS" start="2026-05-25T01:56:34.521268" elapsed="0.017540"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"node-id":"openflow:${switch}"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:56:34.539202" elapsed="0.002629"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:1"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:56:34.542027" elapsed="0.002436"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:56:34.544655" elapsed="0.002403"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:56:34.547266" elapsed="0.002429"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:56:34.549890" elapsed="0.002463"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:56:34.553044" level="INFO">${edge} = False</msg>
<var>${edge}</var>
<arg>${switch}==1 or ${switch}==${switches}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:56:34.552595" elapsed="0.000493"/>
</kw>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:56:34.553406" elapsed="0.002426"/>
</kw>
<status status="PASS" start="2026-05-25T01:56:34.553164" elapsed="0.002710"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:34.553144" elapsed="0.002757"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:56:34.556218" elapsed="0.002422"/>
</kw>
<status status="PASS" start="2026-05-25T01:56:34.555957" elapsed="0.002725"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:34.555940" elapsed="0.002767"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:56:34.559004" elapsed="0.002435"/>
</kw>
<status status="PASS" start="2026-05-25T01:56:34.558762" elapsed="0.002718"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:34.558746" elapsed="0.002758"/>
</if>
<var name="${switch}">2</var>
<status status="PASS" start="2026-05-25T01:56:34.539025" elapsed="0.022502"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"node-id":"openflow:${switch}"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:56:34.561910" elapsed="0.002449"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:1"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:56:34.564550" elapsed="0.002390"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:56:34.567144" elapsed="0.002406"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:56:34.569746" elapsed="0.002455"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:2"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:56:34.572391" elapsed="0.002498"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:56:34.575533" level="INFO">${edge} = True</msg>
<var>${edge}</var>
<arg>${switch}==1 or ${switch}==${switches}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:56:34.575092" elapsed="0.000469"/>
</kw>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"tp-id":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:34.575899" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:34.575634" elapsed="0.000324"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:34.575613" elapsed="0.000369"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"source-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:34.576284" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:34.576034" elapsed="0.000307"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:34.576019" elapsed="0.000345"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>"dest-tp":"openflow:${switch}:3"</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:34.576645" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:34.576415" elapsed="0.000290"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:34.576400" elapsed="0.000332"/>
</if>
<var name="${switch}">3</var>
<status status="PASS" start="2026-05-25T01:56:34.561745" elapsed="0.015013"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-05-25T01:56:34.517965" elapsed="0.058823"/>
</for>
<arg>${SWITCHES}</arg>
<doc>Check Linear topology.</doc>
<status status="PASS" start="2026-05-25T01:56:34.489219" elapsed="0.087641"/>
</kw>
<arg>300s</arg>
<arg>2s</arg>
<arg>FlowLib.Check Linear Topology</arg>
<arg>${SWITCHES}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:56:34.488459" elapsed="0.088455"/>
</kw>
<doc>Check Linear Topology.</doc>
<status status="PASS" start="2026-05-25T01:56:34.487988" elapsed="0.089065"/>
</test>
<test id="s1-s5-s1-t19" name="Check Flows In Operational DS After Controller Restarts" line="132">
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Number Of Flows" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:34.689872" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:34.694960" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":48088,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":386000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":377000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":377000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":376000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":376000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":376000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":376000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":376000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":375000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":371000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":369000000}},"flags":""},{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":368000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":364000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":364000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":364000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":363000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statisti... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:56:34.695501" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_NODES_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:34.579418" elapsed="0.116146"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:34.700250" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":48088,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":386000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":377000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":377000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":376000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":376000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":376000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":376000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":376000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":375000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":371000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":369000000}},"flags":""},{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":368000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":364000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":364000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":364000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":363000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":363000000}},"flags":""},{"id":"75","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.75/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":75}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":359000000}},"flags":""},{"id":"74","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.74/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":74}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":359000000}},"flags":""},{"id":"73","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.73/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":73}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":359000000}},"flags":""},{"id":"72","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.72/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":72}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":359000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":359000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":359000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":359000000}},"flags":""},{"id":"89","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.89/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":89}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":359000000}},"flags":""},{"id":"88","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.88/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":88}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":359000000}},"flags":""},{"id":"87","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.87/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":87}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":359000000}},"flags":""},{"id":"86","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.86/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":86}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":330000000}},"flags":""},{"id":"85","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.85/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":85}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":330000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":330000000}},"flags":""},{"id":"83","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.83/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":83}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":328000000}},"flags":""},{"id":"19","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.19/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":19}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":328000000}},"flags":""},{"id":"18","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.18/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":18}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":328000000}},"flags":""},{"id":"17","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.17/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":17}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":328000000}},"flags":""},{"id":"16","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.16/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":16}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":272000000}},"flags":""},{"id":"15","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.15/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":15}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":272000000}},"flags":""},{"id":"14","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.14/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":14}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":271000000}},"flags":""},{"id":"2","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.2/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":2}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":271000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":271000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":271000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":271000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":271000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":271000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":271000000}},"flags":""},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":271000000}},"flags":""},{"id":"99","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.99/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":99}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":271000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":270000000}},"flags":""},{"id":"98","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.98/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":98}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":270000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":270000000}},"flags":""},{"id":"96","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.96/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":96}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":270000000}},"flags":""},{"id":"95","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.95/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":95}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":270000000}},"flags":""},{"id":"94","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.94/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":94}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":270000000}},"flags":""},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":270000000}},"flags":""},{"id":"28","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.28/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":28}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"27","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.27/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":27}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"8","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.8/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":8}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"6","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.6/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":6}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"5","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.5/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":5}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"4","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.4/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":4}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"3","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.3/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":3}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"24","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.24/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":24}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"23","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.23/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":23}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"22","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.22/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":22}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"21","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.21/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":21}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"20","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.20/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":20}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"39","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.39/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":39}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"38","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.38/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":38}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"37","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.37/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":37}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"36","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.36/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":36}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"35","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.35/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":35}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"34","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.34/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":34}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"33","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.33/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":33}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"32","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.32/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":32}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"31","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.31/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":31}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"30","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.30/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":30}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"49","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.49/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":49}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"48","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.48/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":48}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"47","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.47/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":47}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"#UF$TABLE*0-3","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"11","byte-count":"845","duration":{"second":3,"nanosecond":128000000}},"flags":"SEND_FLOW_REM"},{"id":"46","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.46/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":46}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"45","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.45/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":45}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"44","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.44/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":44}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"43","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.43/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":43}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"42","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.42/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":42}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"41","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.41/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":41}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"40","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.40/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":40}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"59","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.59/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":59}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"58","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.58/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":58}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"57","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.57/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":57}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"56","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.56/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":56}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"55","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.55/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":55}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"54","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.54/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":54}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"53","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.53/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":53}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"52","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.52/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":52}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"51","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.51/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":51}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"50","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.50/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":50}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":100,"packets-matched":"11"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s3","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:56:34.138Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"d2:3e:6c:b7:77:4e","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":53,"nanosecond":835000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"ea:2e:56:2c:59:09","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"15","received":"15"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":53,"nanosecond":839000000},"bytes":{"transmitted":"1236","received":"1236"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"1e:18:44:08:21:c8","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"15","received":"9"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":53,"nanosecond":839000000},"bytes":{"transmitted":"1236","received":"726"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:group":[{"group-id":56,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":56000}}],"watch_group":56000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":56,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":22000}}],"watch_group":22000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":22,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":99000}}],"watch_group":99000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":99,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":34000,"duration":{"second":53,"nanosecond":498000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":89000,"duration":{"second":53,"nanosecond":498000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":60000,"duration":{"second":53,"nanosecond":498000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":91000,"duration":{"second":53,"nanosecond":498000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":57000}}],"watch_group":57000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":57,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":23000}}],"watch_group":23000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":23,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":14000,"duration":{"second":53,"nanosecond":498000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":98000}}],"watch_group":98000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":98,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":56000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":56000,"duration":{"second":53,"nanosecond":498000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":85000,"duration":{"second":53,"nanosecond":498000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":54000}}],"watch_group":54000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":54,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":24000}}],"watch_group":24000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":24,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":36000,"duration":{"second":53,"nanosecond":498000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":87000,"duration":{"second":53,"nanosecond":498000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":59000,"duration":{"second":53,"nanosecond":498000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":25000,"duration":{"second":53,"nanosecond":498000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":43000,"duration":{"second":53,"nanosecond":498000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":55000}}],"watch_group":55000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":55,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":25000}}],"watch_group":25000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":25,"duration":{"second":53,"nanosecond":202000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":100000}}],"watch_group":100000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":100,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":58000,"duration":{"second":53,"nanosecond":202000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":86000,"duration":{"second":53,"nanosecond":202000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":60000}}],"watch_group":60000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":60,"duration":{"second":53,"nanosecond":202000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":26000}}],"watch_group":26000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":26,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":41000,"duration":{"second":53,"nanosecond":202000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":95000}}],"watch_group":95000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":95,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":82000,"duration":{"second":53,"nanosecond":202000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":61000}}],"watch_group":61000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":61,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":27000}}],"watch_group":27000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":27,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":94000}}],"watch_group":94000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":94,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":98000,"duration":{"second":53,"nanosecond":202000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":27000,"duration":{"second":53,"nanosecond":202000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":57000,"duration":{"second":53,"nanosecond":202000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":16000,"duration":{"second":53,"nanosecond":201000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":83000,"duration":{"second":53,"nanosecond":201000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":58000}}],"watch_group":58000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":58,"duration":{"second":52,"nanosecond":698000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":28000}}],"watch_group":28000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":28,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":97000}}],"watch_group":97000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":97,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":100000,"duration":{"second":52,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":59000}}],"watch_group":59000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":59,"duration":{"second":52,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":38000,"duration":{"second":52,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":29000}}],"watch_group":29000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":29,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":96000}}],"watch_group":96000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":96,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":84000,"duration":{"second":52,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":64000}}],"watch_group":64000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":64,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":30000}}],"watch_group":30000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":30,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":4000}}],"watch_group":4000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":4,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":91000}}],"watch_group":91000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":91,"duration":{"second":52,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":7000,"duration":{"second":52,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":29000,"duration":{"second":52,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":65000}}],"watch_group":65000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":65,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":31000}}],"watch_group":31000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":31,"duration":{"second":50,"nanosecond":194000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":5000}}],"watch_group":5000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":5,"duration":{"second":50,"nanosecond":194000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":90000}}],"watch_group":90000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":90,"duration":{"second":50,"nanosecond":194000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":18000,"duration":{"second":52,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":62000}}],"watch_group":62000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":62,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":65000,"duration":{"second":52,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":32000}}],"watch_group":32000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":32,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":2000}}],"watch_group":2000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":2,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":93000}}],"watch_group":93000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":93,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":64000,"duration":{"second":52,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":63000}}],"watch_group":63000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":63,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":33000}}],"watch_group":33000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":33,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":3000}}],"watch_group":3000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":3,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":80000,"duration":{"second":52,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":9000,"duration":{"second":52,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":92000}}],"watch_group":92000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":92,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":5000,"duration":{"second":52,"nanosecond":695000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":20000,"duration":{"second":52,"nanosecond":695000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":81000,"duration":{"second":52,"nanosecond":695000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":97000,"duration":{"second":52,"nanosecond":695000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":31000,"duration":{"second":52,"nanosecond":694000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":68000}}],"watch_group":68000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":68,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":11000,"duration":{"second":52,"nanosecond":693000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":34000}}],"watch_group":34000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":34,"duration":{"second":52,"nanosecond":693000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":78000,"duration":{"second":52,"nanosecond":692000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":87000}}],"watch_group":87000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":87,"duration":{"second":52,"nanosecond":692000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":93000,"duration":{"second":52,"nanosecond":692000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":63000,"duration":{"second":52,"nanosecond":692000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":69000}}],"watch_group":69000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":69,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":35000}}],"watch_group":35000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":35,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":33000,"duration":{"second":52,"nanosecond":692000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":79000,"duration":{"second":52,"nanosecond":692000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":86000}}],"watch_group":86000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":86,"duration":{"second":52,"nanosecond":691000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":62000,"duration":{"second":52,"nanosecond":691000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":66000}}],"watch_group":66000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":66,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":77000,"duration":{"second":52,"nanosecond":691000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":36000}}],"watch_group":36000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":36,"duration":{"second":52,"nanosecond":691000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":89000}}],"watch_group":89000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":89,"duration":{"second":52,"nanosecond":691000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":22000,"duration":{"second":52,"nanosecond":690000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":95000,"duration":{"second":52,"nanosecond":690000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":67000}}],"watch_group":67000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":67,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":37000}}],"watch_group":37000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":37,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":88000}}],"watch_group":88000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":88,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":61000,"duration":{"second":52,"nanosecond":689000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":3000,"duration":{"second":52,"nanosecond":689000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":73000}}],"watch_group":73000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":73,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":39000}}],"watch_group":39000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":39,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":13000}}],"watch_group":13000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":13,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":74000,"duration":{"second":52,"nanosecond":689000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":15000,"duration":{"second":52,"nanosecond":689000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":44000,"duration":{"second":52,"nanosecond":689000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":45000,"duration":{"second":52,"nanosecond":689000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":68000,"duration":{"second":52,"nanosecond":689000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":72000}}],"watch_group":72000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":72,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":38000}}],"watch_group":38000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":38,"duration":{"second":52,"nanosecond":202000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":75000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":12000}}],"watch_group":12000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":12,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":35000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":24000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":90000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":71000}}],"watch_group":71000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":71,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":41000}}],"watch_group":41000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":41,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":42000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":11000}}],"watch_group":11000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":11,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":92000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":46000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":67000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":70000}}],"watch_group":70000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":70,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":76000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":40000}}],"watch_group":40000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":40,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":13000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":10000}}],"watch_group":10000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":10,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":88000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":47000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":66000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":77000}}],"watch_group":77000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":77,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":43000}}],"watch_group":43000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":43,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":9000}}],"watch_group":9000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":9,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":99000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":26000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":70000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":76000}}],"watch_group":76000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":76,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":42000}}],"watch_group":42000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":42,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":8000}}],"watch_group":8000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":8,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":37000,"duration":{"second":51,"nanosecond":700000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":49000,"duration":{"second":51,"nanosecond":700000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":71000,"duration":{"second":51,"nanosecond":700000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":48000,"duration":{"second":51,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":75000}}],"watch_group":75000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":75,"duration":{"second":51,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":45000}}],"watch_group":45000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":45,"duration":{"second":51,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":7000}}],"watch_group":7000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":7,"duration":{"second":51,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":39000,"duration":{"second":51,"nanosecond":698000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":73000,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":69000,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":17000,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":28000,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":74000}}],"watch_group":74000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":74,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":44000}}],"watch_group":44000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":44,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":6000}}],"watch_group":6000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":6,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":40000,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":81000}}],"watch_group":81000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":81,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":47000}}],"watch_group":47000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":47,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":21000}}],"watch_group":21000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":21,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":8000,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":19000,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":96000,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":80000}}],"watch_group":80000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":80,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":46000}}],"watch_group":46000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":46,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":20000}}],"watch_group":20000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":20,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":52000,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":6000,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":79000}}],"watch_group":79000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":79,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":49000}}],"watch_group":49000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":49,"duration":{"second":51,"nanosecond":199000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":19000}}],"watch_group":19000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":19,"duration":{"second":51,"nanosecond":199000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":50000,"duration":{"second":51,"nanosecond":199000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":72000,"duration":{"second":51,"nanosecond":199000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":30000,"duration":{"second":51,"nanosecond":199000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":78000}}],"watch_group":78000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":78,"duration":{"second":51,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":48000}}],"watch_group":48000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":48,"duration":{"second":51,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":18000}}],"watch_group":18000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":18,"duration":{"second":51,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":51000,"duration":{"second":51,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":85000}}],"watch_group":85000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":85,"duration":{"second":51,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":55000,"duration":{"second":51,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":51000}}],"watch_group":51000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":51,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":17000}}],"watch_group":17000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":17,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":21000,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":4000,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":84000}}],"watch_group":84000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":84,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":50000}}],"watch_group":50000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":50,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":16000}}],"watch_group":16000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":16,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":10000,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":54000,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":83000}}],"watch_group":83000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":83,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":32000,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":53000}}],"watch_group":53000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":53,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":15000}}],"watch_group":15000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":15,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":2000,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":82000}}],"watch_group":82000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":82,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":52000}}],"watch_group":52000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":52,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":14000}}],"watch_group":14000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":14,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":53000,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":12000,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":23000,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":94000,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:56:34.302Z"}},{"id":"openflow:1","flow-node-inventory:port-number":48076,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":359000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":354000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":354000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":354000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":353000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":353000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":353000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":353000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":353000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":353000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":353000000}},"flags":""},{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":353000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":353000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":352000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":348000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":348000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":348000000}},"flags":""},{"id":"75","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.75/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":75}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":348000000}},"flags":""},{"id":"74","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.74/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":74}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":348000000}},"flags":""},{"id":"73","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.73/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":73}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":348000000}},"flags":""},{"id":"72","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.72/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":72}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":348000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":347000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":344000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":341000000}},"flags":""},{"id":"89","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.89/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":89}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":340000000}},"flags":""},{"id":"88","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.88/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":88}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":339000000}},"flags":""},{"id":"87","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.87/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":87}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":338000000}},"flags":""},{"id":"86","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.86/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":86}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":336000000}},"flags":""},{"id":"85","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.85/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":85}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":336000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":334000000}},"flags":""},{"id":"83","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.83/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":83}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":333000000}},"flags":""},{"id":"19","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.19/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":19}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":331000000}},"flags":""},{"id":"18","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.18/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":18}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":331000000}},"flags":""},{"id":"17","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.17/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":17}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":327000000}},"flags":""},{"id":"16","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.16/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":16}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":327000000}},"flags":""},{"id":"15","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.15/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":15}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":327000000}},"flags":""},{"id":"14","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.14/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":14}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":324000000}},"flags":""},{"id":"2","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.2/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":2}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":324000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":324000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":321000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":321000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":319000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":311000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":311000000}},"flags":""},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":311000000}},"flags":""},{"id":"99","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.99/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":99}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":311000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":311000000}},"flags":""},{"id":"98","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.98/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":98}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":311000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":311000000}},"flags":""},{"id":"96","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.96/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":96}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":306000000}},"flags":""},{"id":"95","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.95/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":95}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":306000000}},"flags":""},{"id":"94","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.94/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":94}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":260000000}},"flags":""},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":260000000}},"flags":""},{"id":"28","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.28/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":28}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":260000000}},"flags":""},{"id":"27","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.27/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":27}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":259000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":259000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":259000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":259000000}},"flags":""},{"id":"8","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.8/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":8}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":259000000}},"flags":""},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":259000000}},"flags":""},{"id":"6","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.6/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":6}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":259000000}},"flags":""},{"id":"5","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.5/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":5}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":259000000}},"flags":""},{"id":"4","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.4/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":4}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":259000000}},"flags":""},{"id":"3","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.3/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":3}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":259000000}},"flags":""},{"id":"24","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.24/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":24}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":259000000}},"flags":""},{"id":"23","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.23/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":23}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":259000000}},"flags":""},{"id":"22","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.22/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":22}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"21","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.21/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":21}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"20","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.20/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":20}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"39","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.39/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":39}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"38","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.38/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":38}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"37","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.37/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":37}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"36","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.36/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":36}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"35","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.35/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":35}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"34","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.34/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":34}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"33","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.33/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":33}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"32","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.32/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":32}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"31","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.31/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":31}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"30","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.30/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":30}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"49","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.49/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":49}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"48","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.48/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":48}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"47","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.47/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":47}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"#UF$TABLE*0-1","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"11","byte-count":"845","duration":{"second":3,"nanosecond":95000000}},"flags":"SEND_FLOW_REM"},{"id":"46","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.46/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":46}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":177000000}},"flags":""},{"id":"45","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.45/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":45}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":177000000}},"flags":""},{"id":"44","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.44/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":44}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":177000000}},"flags":""},{"id":"43","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.43/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":43}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":177000000}},"flags":""},{"id":"42","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.42/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":42}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":177000000}},"flags":""},{"id":"41","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.41/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":41}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":177000000}},"flags":""},{"id":"40","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.40/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":40}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":177000000}},"flags":""},{"id":"59","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.59/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":59}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":177000000}},"flags":""},{"id":"58","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.58/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":58}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"57","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.57/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":57}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"56","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.56/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":56}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"55","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.55/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":55}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"54","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.54/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":54}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"53","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.53/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":53}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"52","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.52/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":52}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"51","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.51/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":51}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"50","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.50/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":50}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":100,"packets-matched":"11"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s1","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:56:34.133Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"de:fd:88:3a:0f:fe","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"15","received":"9"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":53,"nanosecond":828000000},"bytes":{"transmitted":"1236","received":"726"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ee:44:6a:8a:83:4e","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":53,"nanosecond":817000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"3a:a8:41:44:b3:f9","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"15","received":"15"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":53,"nanosecond":829000000},"bytes":{"transmitted":"1236","received":"1236"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:group":[{"group-id":56,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":56000}}],"watch_group":56000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":56,"duration":{"second":50,"nanosecond":673000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":22000}}],"watch_group":22000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":22,"duration":{"second":50,"nanosecond":673000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":99000}}],"watch_group":99000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":99,"duration":{"second":50,"nanosecond":673000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":34000,"duration":{"second":53,"nanosecond":473000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":89000,"duration":{"second":53,"nanosecond":473000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":60000,"duration":{"second":53,"nanosecond":473000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":91000,"duration":{"second":53,"nanosecond":473000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":57000}}],"watch_group":57000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":57,"duration":{"second":50,"nanosecond":673000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":23000}}],"watch_group":23000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":23,"duration":{"second":50,"nanosecond":175000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":14000,"duration":{"second":53,"nanosecond":473000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":98000}}],"watch_group":98000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":98,"duration":{"second":50,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":56000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":56000,"duration":{"second":53,"nanosecond":472000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":85000,"duration":{"second":53,"nanosecond":471000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":54000}}],"watch_group":54000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":54,"duration":{"second":50,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":24000}}],"watch_group":24000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":24,"duration":{"second":50,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":36000,"duration":{"second":53,"nanosecond":471000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":87000,"duration":{"second":53,"nanosecond":471000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":59000,"duration":{"second":53,"nanosecond":471000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":25000,"duration":{"second":53,"nanosecond":471000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":43000,"duration":{"second":53,"nanosecond":471000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":55000}}],"watch_group":55000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":55,"duration":{"second":50,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":25000}}],"watch_group":25000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":25,"duration":{"second":53,"nanosecond":176000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":100000}}],"watch_group":100000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":100,"duration":{"second":50,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":58000,"duration":{"second":53,"nanosecond":176000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":86000,"duration":{"second":53,"nanosecond":176000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":60000}}],"watch_group":60000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":60,"duration":{"second":53,"nanosecond":175000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":26000}}],"watch_group":26000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":26,"duration":{"second":50,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":41000,"duration":{"second":53,"nanosecond":175000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":95000}}],"watch_group":95000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":95,"duration":{"second":50,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":82000,"duration":{"second":53,"nanosecond":175000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":61000}}],"watch_group":61000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":61,"duration":{"second":50,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":27000}}],"watch_group":27000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":27,"duration":{"second":50,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":94000}}],"watch_group":94000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":94,"duration":{"second":50,"nanosecond":172000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":98000,"duration":{"second":53,"nanosecond":175000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":27000,"duration":{"second":53,"nanosecond":175000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":57000,"duration":{"second":53,"nanosecond":175000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":16000,"duration":{"second":53,"nanosecond":175000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":83000,"duration":{"second":53,"nanosecond":175000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":58000}}],"watch_group":58000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":58,"duration":{"second":52,"nanosecond":668000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":28000}}],"watch_group":28000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":28,"duration":{"second":50,"nanosecond":172000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":97000}}],"watch_group":97000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":97,"duration":{"second":50,"nanosecond":172000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":100000,"duration":{"second":52,"nanosecond":668000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":59000}}],"watch_group":59000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":59,"duration":{"second":52,"nanosecond":668000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":38000,"duration":{"second":52,"nanosecond":665000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":29000}}],"watch_group":29000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":29,"duration":{"second":50,"nanosecond":172000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":96000}}],"watch_group":96000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":96,"duration":{"second":50,"nanosecond":172000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":84000,"duration":{"second":52,"nanosecond":665000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":64000}}],"watch_group":64000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":64,"duration":{"second":50,"nanosecond":172000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":30000}}],"watch_group":30000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":30,"duration":{"second":50,"nanosecond":172000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":4000}}],"watch_group":4000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":4,"duration":{"second":50,"nanosecond":172000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":91000}}],"watch_group":91000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":91,"duration":{"second":52,"nanosecond":665000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":7000,"duration":{"second":52,"nanosecond":665000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":29000,"duration":{"second":52,"nanosecond":665000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":65000}}],"watch_group":65000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":65,"duration":{"second":50,"nanosecond":172000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":31000}}],"watch_group":31000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":31,"duration":{"second":50,"nanosecond":172000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":5000}}],"watch_group":5000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":5,"duration":{"second":50,"nanosecond":172000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":90000}}],"watch_group":90000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":90,"duration":{"second":50,"nanosecond":172000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":18000,"duration":{"second":52,"nanosecond":665000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":62000}}],"watch_group":62000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":62,"duration":{"second":50,"nanosecond":171000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":65000,"duration":{"second":52,"nanosecond":665000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":32000}}],"watch_group":32000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":32,"duration":{"second":50,"nanosecond":171000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":2000}}],"watch_group":2000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":2,"duration":{"second":50,"nanosecond":171000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":93000}}],"watch_group":93000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":93,"duration":{"second":50,"nanosecond":171000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":64000,"duration":{"second":52,"nanosecond":665000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":63000}}],"watch_group":63000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":63,"duration":{"second":50,"nanosecond":171000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":33000}}],"watch_group":33000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":33,"duration":{"second":50,"nanosecond":171000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":3000}}],"watch_group":3000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":3,"duration":{"second":50,"nanosecond":171000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":80000,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":9000,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":92000}}],"watch_group":92000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":92,"duration":{"second":50,"nanosecond":171000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":5000,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":20000,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":81000,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":97000,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":31000,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":68000}}],"watch_group":68000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":68,"duration":{"second":50,"nanosecond":171000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":11000,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":34000}}],"watch_group":34000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":34,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":78000,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":87000}}],"watch_group":87000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":87,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":93000,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":63000,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":69000}}],"watch_group":69000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":69,"duration":{"second":50,"nanosecond":171000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":35000}}],"watch_group":35000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":35,"duration":{"second":50,"nanosecond":170000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":33000,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":79000,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":86000}}],"watch_group":86000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":86,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":62000,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":66000}}],"watch_group":66000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":66,"duration":{"second":50,"nanosecond":170000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":77000,"duration":{"second":52,"nanosecond":663000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":36000}}],"watch_group":36000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":36,"duration":{"second":52,"nanosecond":663000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":89000}}],"watch_group":89000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":89,"duration":{"second":52,"nanosecond":663000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":22000,"duration":{"second":52,"nanosecond":663000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":95000,"duration":{"second":52,"nanosecond":662000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":67000}}],"watch_group":67000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":67,"duration":{"second":50,"nanosecond":170000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":37000}}],"watch_group":37000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":37,"duration":{"second":50,"nanosecond":170000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":88000}}],"watch_group":88000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":88,"duration":{"second":50,"nanosecond":170000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":61000,"duration":{"second":52,"nanosecond":662000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":3000,"duration":{"second":52,"nanosecond":662000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":73000}}],"watch_group":73000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":73,"duration":{"second":50,"nanosecond":170000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":39000}}],"watch_group":39000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":39,"duration":{"second":50,"nanosecond":170000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":13000}}],"watch_group":13000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":13,"duration":{"second":50,"nanosecond":170000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":74000,"duration":{"second":52,"nanosecond":661000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":15000,"duration":{"second":52,"nanosecond":661000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":44000,"duration":{"second":52,"nanosecond":661000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":45000,"duration":{"second":52,"nanosecond":661000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":68000,"duration":{"second":52,"nanosecond":661000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":72000}}],"watch_group":72000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":72,"duration":{"second":50,"nanosecond":165000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":38000}}],"watch_group":38000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":38,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":75000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":12000}}],"watch_group":12000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":12,"duration":{"second":50,"nanosecond":164000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":35000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":24000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":90000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":71000}}],"watch_group":71000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":71,"duration":{"second":50,"nanosecond":164000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":41000}}],"watch_group":41000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":41,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":42000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":11000}}],"watch_group":11000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":11,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":92000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":46000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":67000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":70000}}],"watch_group":70000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":70,"duration":{"second":50,"nanosecond":164000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":76000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":40000}}],"watch_group":40000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":40,"duration":{"second":50,"nanosecond":164000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":13000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":10000}}],"watch_group":10000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":10,"duration":{"second":50,"nanosecond":164000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":88000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":47000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":66000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":77000}}],"watch_group":77000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":77,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":43000}}],"watch_group":43000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":43,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":9000}}],"watch_group":9000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":9,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":99000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":26000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":70000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":76000}}],"watch_group":76000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":76,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":42000}}],"watch_group":42000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":42,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":8000}}],"watch_group":8000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":8,"duration":{"second":50,"nanosecond":164000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":37000,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":49000,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":71000,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":48000,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":75000}}],"watch_group":75000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":75,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":45000}}],"watch_group":45000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":45,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":7000}}],"watch_group":7000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":7,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":39000,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":73000,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":69000,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":17000,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":28000,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":74000}}],"watch_group":74000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":74,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":44000}}],"watch_group":44000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":44,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":6000}}],"watch_group":6000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":6,"duration":{"second":50,"nanosecond":164000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":40000,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":81000}}],"watch_group":81000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":81,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":47000}}],"watch_group":47000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":47,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":21000}}],"watch_group":21000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":21,"duration":{"second":50,"nanosecond":164000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":8000,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":19000,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":96000,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":80000}}],"watch_group":80000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":80,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":46000}}],"watch_group":46000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":46,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":20000}}],"watch_group":20000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":20,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":52000,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":6000,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":79000}}],"watch_group":79000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":79,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":49000}}],"watch_group":49000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":49,"duration":{"second":51,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":19000}}],"watch_group":19000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":19,"duration":{"second":51,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":50000,"duration":{"second":51,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":72000,"duration":{"second":51,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":30000,"duration":{"second":51,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":78000}}],"watch_group":78000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":78,"duration":{"second":51,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":48000}}],"watch_group":48000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":48,"duration":{"second":51,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":18000}}],"watch_group":18000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":18,"duration":{"second":51,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":51000,"duration":{"second":51,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":85000}}],"watch_group":85000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":85,"duration":{"second":51,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":55000,"duration":{"second":51,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":51000}}],"watch_group":51000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":51,"duration":{"second":50,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":17000}}],"watch_group":17000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":17,"duration":{"second":50,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":21000,"duration":{"second":50,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":4000,"duration":{"second":50,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":84000}}],"watch_group":84000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":84,"duration":{"second":50,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":50000}}],"watch_group":50000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":50,"duration":{"second":50,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":16000}}],"watch_group":16000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":16,"duration":{"second":50,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":10000,"duration":{"second":50,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":54000,"duration":{"second":50,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":83000}}],"watch_group":83000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":83,"duration":{"second":50,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":32000,"duration":{"second":50,"nanosecond":673000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":53000}}],"watch_group":53000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":53,"duration":{"second":50,"nanosecond":164000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":15000}}],"watch_group":15000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":15,"duration":{"second":50,"nanosecond":673000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":2000,"duration":{"second":50,"nanosecond":673000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":82000}}],"watch_group":82000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":82,"duration":{"second":50,"nanosecond":673000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":52000}}],"watch_group":52000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":52,"duration":{"second":50,"nanosecond":673000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":14000}}],"watch_group":14000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":14,"duration":{"second":50,"nanosecond":673000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":53000,"duration":{"second":50,"nanosecond":673000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":12000,"duration":{"second":50,"nanosecond":673000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":23000,"duration":{"second":50,"nanosecond":673000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":94000,"duration":{"second":50,"nanosecond":673000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:56:34.280Z"}},{"id":"openflow:2","flow-node-inventory:port-number":48094,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"75","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.75/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":75}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"74","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.74/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":74}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"73","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.73/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":73}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"72","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.72/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":72}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"89","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.89/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":89}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"88","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.88/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":88}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"87","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.87/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":87}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"86","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.86/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":86}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"85","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.85/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":85}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"83","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.83/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":83}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"19","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.19/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":19}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"18","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.18/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":18}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"17","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.17/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":17}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"16","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.16/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":16}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"15","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.15/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":15}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"14","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.14/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":14}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"2","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.2/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":2}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"99","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.99/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":99}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"98","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.98/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":98}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"96","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.96/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":96}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"95","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.95/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":95}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"94","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.94/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":94}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"28","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.28/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":28}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"27","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.27/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":27}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"8","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.8/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":8}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"6","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.6/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":6}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"5","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.5/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":5}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"4","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.4/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":4}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"3","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.3/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":3}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"24","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.24/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":24}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"23","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.23/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":23}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"22","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.22/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":22}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"21","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.21/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":21}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"20","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.20/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":20}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"39","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.39/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":39}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"38","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.38/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":38}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"37","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.37/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":37}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"36","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.36/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":36}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"35","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.35/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":35}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"34","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.34/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":34}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"33","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.33/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":33}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"32","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.32/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":32}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"31","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.31/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":31}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"30","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.30/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":30}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"49","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.49/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":49}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"48","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.48/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":48}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"47","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.47/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":47}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"#UF$TABLE*0-2","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"21","byte-count":"1650","duration":{"second":3,"nanosecond":122000000}},"flags":"SEND_FLOW_REM"},{"id":"46","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.46/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":46}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"45","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.45/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":45}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"44","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.44/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":44}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"43","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.43/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":43}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"42","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.42/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":42}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"41","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.41/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":41}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"40","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.40/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":40}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"59","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.59/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":59}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"58","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.58/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":58}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"57","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.57/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":57}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"56","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.56/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":56}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"55","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.55/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":55}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"54","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.54/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":54}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"53","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.53/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":53}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"52","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.52/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":52}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"51","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.51/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":51}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"50","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.50/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":50}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"35","active-flows":100,"packets-matched":"21"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s2","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:56:34.130Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"96:6d:7e:e3:20:cb","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"15","received":"15"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":53,"nanosecond":857000000},"bytes":{"transmitted":"1236","received":"1236"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"aa:85:98:60:af:45","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":53,"nanosecond":853000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"b2:63:e2:1f:6f:f5","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"15","received":"15"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":53,"nanosecond":857000000},"bytes":{"transmitted":"1236","received":"1236"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"6e:ec:a4:2a:50:8d","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"15","received":"9"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":53,"nanosecond":857000000},"bytes":{"transmitted":"1236","received":"726"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:group":[{"group-id":56,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":56000}}],"watch_group":56000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":56,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":22000}}],"watch_group":22000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":22,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":99000}}],"watch_group":99000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":99,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":34000,"duration":{"second":53,"nanosecond":503000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":89000,"duration":{"second":53,"nanosecond":503000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":60000,"duration":{"second":53,"nanosecond":503000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":91000,"duration":{"second":53,"nanosecond":503000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":57000}}],"watch_group":57000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":57,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":23000}}],"watch_group":23000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":23,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":14000,"duration":{"second":53,"nanosecond":503000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":98000}}],"watch_group":98000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":98,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":56000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":56000,"duration":{"second":53,"nanosecond":503000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":85000,"duration":{"second":53,"nanosecond":503000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":54000}}],"watch_group":54000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":54,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":24000}}],"watch_group":24000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":24,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":36000,"duration":{"second":53,"nanosecond":503000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":87000,"duration":{"second":53,"nanosecond":503000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":59000,"duration":{"second":53,"nanosecond":502000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":25000,"duration":{"second":53,"nanosecond":502000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":43000,"duration":{"second":53,"nanosecond":502000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":55000}}],"watch_group":55000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":55,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":25000}}],"watch_group":25000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":25,"duration":{"second":53,"nanosecond":207000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":100000}}],"watch_group":100000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":100,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":58000,"duration":{"second":53,"nanosecond":207000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":86000,"duration":{"second":53,"nanosecond":207000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":60000}}],"watch_group":60000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":60,"duration":{"second":53,"nanosecond":207000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":26000}}],"watch_group":26000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":26,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":41000,"duration":{"second":53,"nanosecond":205000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":95000}}],"watch_group":95000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":95,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":82000,"duration":{"second":53,"nanosecond":205000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":61000}}],"watch_group":61000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":61,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":27000}}],"watch_group":27000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":27,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":94000}}],"watch_group":94000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":94,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":98000,"duration":{"second":53,"nanosecond":205000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":27000,"duration":{"second":53,"nanosecond":205000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":57000,"duration":{"second":53,"nanosecond":205000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":16000,"duration":{"second":53,"nanosecond":203000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":83000,"duration":{"second":53,"nanosecond":203000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":58000}}],"watch_group":58000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":58,"duration":{"second":52,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":28000}}],"watch_group":28000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":28,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":97000}}],"watch_group":97000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":97,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":100000,"duration":{"second":52,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":59000}}],"watch_group":59000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":59,"duration":{"second":52,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":38000,"duration":{"second":52,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":29000}}],"watch_group":29000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":29,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":96000}}],"watch_group":96000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":96,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":84000,"duration":{"second":52,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":64000}}],"watch_group":64000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":64,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":30000}}],"watch_group":30000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":30,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":4000}}],"watch_group":4000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":4,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":91000}}],"watch_group":91000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":91,"duration":{"second":52,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":7000,"duration":{"second":52,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":29000,"duration":{"second":52,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":65000}}],"watch_group":65000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":65,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":31000}}],"watch_group":31000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":31,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":5000}}],"watch_group":5000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":5,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":90000}}],"watch_group":90000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":90,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":18000,"duration":{"second":52,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":62000}}],"watch_group":62000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":62,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":65000,"duration":{"second":52,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":32000}}],"watch_group":32000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":32,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":2000}}],"watch_group":2000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":2,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":93000}}],"watch_group":93000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":93,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":64000,"duration":{"second":52,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":63000}}],"watch_group":63000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":63,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":33000}}],"watch_group":33000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":33,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":3000}}],"watch_group":3000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":3,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":80000,"duration":{"second":52,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":9000,"duration":{"second":52,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":92000}}],"watch_group":92000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":92,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":5000,"duration":{"second":52,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":20000,"duration":{"second":52,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":81000,"duration":{"second":52,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":97000,"duration":{"second":52,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":31000,"duration":{"second":52,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":68000}}],"watch_group":68000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":68,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":11000,"duration":{"second":52,"nanosecond":700000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":34000}}],"watch_group":34000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":34,"duration":{"second":52,"nanosecond":700000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":78000,"duration":{"second":52,"nanosecond":700000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":87000}}],"watch_group":87000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":87,"duration":{"second":52,"nanosecond":700000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":93000,"duration":{"second":52,"nanosecond":700000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":63000,"duration":{"second":52,"nanosecond":700000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":69000}}],"watch_group":69000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":69,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":35000}}],"watch_group":35000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":35,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":33000,"duration":{"second":52,"nanosecond":700000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":79000,"duration":{"second":52,"nanosecond":700000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":86000}}],"watch_group":86000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":86,"duration":{"second":52,"nanosecond":700000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":62000,"duration":{"second":52,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":66000}}],"watch_group":66000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":66,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":77000,"duration":{"second":52,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":36000}}],"watch_group":36000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":36,"duration":{"second":52,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":89000}}],"watch_group":89000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":89,"duration":{"second":52,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":22000,"duration":{"second":52,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":95000,"duration":{"second":52,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":67000}}],"watch_group":67000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":67,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":37000}}],"watch_group":37000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":37,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":88000}}],"watch_group":88000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":88,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":61000,"duration":{"second":52,"nanosecond":698000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":3000,"duration":{"second":52,"nanosecond":695000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":73000}}],"watch_group":73000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":73,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":39000}}],"watch_group":39000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":39,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":13000}}],"watch_group":13000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":13,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":74000,"duration":{"second":52,"nanosecond":694000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":15000,"duration":{"second":52,"nanosecond":694000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":44000,"duration":{"second":52,"nanosecond":694000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":45000,"duration":{"second":52,"nanosecond":694000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":68000,"duration":{"second":52,"nanosecond":694000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":72000}}],"watch_group":72000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":72,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":38000}}],"watch_group":38000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":38,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":75000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":12000}}],"watch_group":12000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":12,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":35000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":24000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":90000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":71000}}],"watch_group":71000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":71,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":41000}}],"watch_group":41000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":41,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":42000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":11000}}],"watch_group":11000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":11,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":92000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":46000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":67000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":70000}}],"watch_group":70000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":70,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":76000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":40000}}],"watch_group":40000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":40,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":13000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":10000}}],"watch_group":10000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":10,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":88000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":47000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":66000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":77000}}],"watch_group":77000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":77,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":43000}}],"watch_group":43000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":43,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":9000}}],"watch_group":9000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":9,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":99000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":26000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":70000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":76000}}],"watch_group":76000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":76,"duration":{"second":51,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":42000}}],"watch_group":42000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":42,"duration":{"second":51,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":8000}}],"watch_group":8000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":8,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":37000,"duration":{"second":51,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":49000,"duration":{"second":51,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":71000,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":48000,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":75000}}],"watch_group":75000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":75,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":45000}}],"watch_group":45000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":45,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":7000}}],"watch_group":7000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":7,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":39000,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":73000,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":69000,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":17000,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":28000,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":74000}}],"watch_group":74000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":74,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":44000}}],"watch_group":44000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":44,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":6000}}],"watch_group":6000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":6,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":40000,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":81000}}],"watch_group":81000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":81,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":47000}}],"watch_group":47000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":47,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":21000}}],"watch_group":21000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":21,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":8000,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":19000,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":96000,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":80000}}],"watch_group":80000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":80,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":46000}}],"watch_group":46000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":46,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":20000}}],"watch_group":20000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":20,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":52000,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":6000,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":79000}}],"watch_group":79000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":79,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":49000}}],"watch_group":49000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":49,"duration":{"second":51,"nanosecond":201000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":19000}}],"watch_group":19000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":19,"duration":{"second":51,"nanosecond":201000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":50000,"duration":{"second":51,"nanosecond":201000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":72000,"duration":{"second":51,"nanosecond":201000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":30000,"duration":{"second":51,"nanosecond":201000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":78000}}],"watch_group":78000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":78,"duration":{"second":51,"nanosecond":201000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":48000}}],"watch_group":48000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":48,"duration":{"second":51,"nanosecond":201000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":18000}}],"watch_group":18000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":18,"duration":{"second":51,"nanosecond":201000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":51000,"duration":{"second":51,"nanosecond":201000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":85000}}],"watch_group":85000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":85,"duration":{"second":51,"nanosecond":201000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":55000,"duration":{"second":51,"nanosecond":201000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":51000}}],"watch_group":51000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":51,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":17000}}],"watch_group":17000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":17,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":21000,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":4000,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":84000}}],"watch_group":84000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":84,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":50000}}],"watch_group":50000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":50,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":16000}}],"watch_group":16000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":16,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":10000,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":54000,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":83000}}],"watch_group":83000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":83,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":32000,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":53000}}],"watch_group":53000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":53,"duration":{"second":50,"nanosecond":187000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":15000}}],"watch_group":15000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":15,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":2000,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":82000}}],"watch_group":82000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":82,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":52000}}],"watch_group":52000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":52,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":14000}}],"watch_group":14000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":14,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":53000,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":12000,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":23000,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":94000,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:56:34.323Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:34.696135" elapsed="0.010341"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-05-25T01:56:34.710426" level="INFO">Item found from container 300 times.</msg>
<msg time="2026-05-25T01:56:34.710509" level="INFO">${count} = 300</msg>
<var>${count}</var>
<arg>${resp.text}</arg>
<arg>"priority"</arg>
<doc>Returns and logs how many times ``item`` is found from ``container``.</doc>
<status status="PASS" start="2026-05-25T01:56:34.706755" elapsed="0.003779"/>
</kw>
<kw name="Should Be Equal As Integers" owner="BuiltIn">
<arg>${count}</arg>
<arg>${flows}</arg>
<doc>Fails if objects are unequal after converting them to integers.</doc>
<status status="PASS" start="2026-05-25T01:56:34.710737" elapsed="0.000317"/>
</kw>
<arg>${less_flows}</arg>
<doc>Check number of flows in the inventory.</doc>
<status status="PASS" start="2026-05-25T01:56:34.578801" elapsed="0.132339"/>
</kw>
<arg>30s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Number Of Flows</arg>
<arg>${less_flows}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:56:34.578196" elapsed="0.132995"/>
</kw>
<doc>Check Flows after mininet starts.</doc>
<status status="PASS" start="2026-05-25T01:56:34.577575" elapsed="0.133736"/>
</test>
<test id="s1-s5-s1-t20" name="Check Groups In Operational DS After Controller Restarts" line="136">
<kw name="Check Number Of Groups" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:34.777594" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:34.779597" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":48088,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":386000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":377000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":377000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":376000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":376000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":376000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":376000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":376000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":375000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":371000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":369000000}},"flags":""},{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":368000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":364000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":364000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":364000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":363000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statisti... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:56:34.780128" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_NODES_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:34.712811" elapsed="0.067381"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:34.786258" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":48088,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":386000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":377000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":377000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":376000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":376000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":376000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":376000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":376000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":375000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":371000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":369000000}},"flags":""},{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":368000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":364000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":364000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":364000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":363000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":363000000}},"flags":""},{"id":"75","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.75/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":75}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":359000000}},"flags":""},{"id":"74","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.74/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":74}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":359000000}},"flags":""},{"id":"73","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.73/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":73}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":359000000}},"flags":""},{"id":"72","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.72/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":72}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":359000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":359000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":359000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":359000000}},"flags":""},{"id":"89","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.89/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":89}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":359000000}},"flags":""},{"id":"88","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.88/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":88}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":359000000}},"flags":""},{"id":"87","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.87/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":87}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":359000000}},"flags":""},{"id":"86","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.86/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":86}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":330000000}},"flags":""},{"id":"85","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.85/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":85}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":330000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":330000000}},"flags":""},{"id":"83","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.83/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":83}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":328000000}},"flags":""},{"id":"19","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.19/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":19}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":328000000}},"flags":""},{"id":"18","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.18/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":18}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":328000000}},"flags":""},{"id":"17","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.17/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":17}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":328000000}},"flags":""},{"id":"16","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.16/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":16}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":272000000}},"flags":""},{"id":"15","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.15/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":15}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":272000000}},"flags":""},{"id":"14","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.14/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":14}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":271000000}},"flags":""},{"id":"2","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.2/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":2}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":271000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":271000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":271000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":271000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":271000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":271000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":271000000}},"flags":""},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":271000000}},"flags":""},{"id":"99","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.99/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":99}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":271000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":270000000}},"flags":""},{"id":"98","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.98/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":98}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":270000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":270000000}},"flags":""},{"id":"96","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.96/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":96}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":270000000}},"flags":""},{"id":"95","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.95/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":95}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":270000000}},"flags":""},{"id":"94","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.94/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":94}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":270000000}},"flags":""},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":270000000}},"flags":""},{"id":"28","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.28/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":28}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"27","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.27/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":27}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"8","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.8/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":8}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"6","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.6/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":6}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"5","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.5/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":5}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"4","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.4/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":4}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"3","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.3/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":3}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"24","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.24/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":24}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"23","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.23/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":23}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"22","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.22/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":22}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"21","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.21/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":21}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"20","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.20/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":20}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"39","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.39/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":39}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"38","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.38/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":38}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"37","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.37/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":37}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"36","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.36/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":36}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"35","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.35/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":35}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"34","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.34/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":34}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"33","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.33/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":33}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"32","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.32/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":32}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"31","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.31/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":31}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"30","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.30/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":30}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"49","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.49/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":49}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"48","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.48/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":48}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"47","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.47/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":47}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"#UF$TABLE*0-3","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"11","byte-count":"845","duration":{"second":3,"nanosecond":128000000}},"flags":"SEND_FLOW_REM"},{"id":"46","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.46/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":46}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"45","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.45/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":45}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"44","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.44/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":44}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"43","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.43/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":43}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"42","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.42/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":42}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"41","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.41/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":41}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"40","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.40/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":40}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"59","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.59/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":59}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"58","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.58/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":58}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"57","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.57/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":57}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"56","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.56/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":56}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"55","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.55/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":55}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"54","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.54/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":54}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"53","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.53/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":53}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"52","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.52/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":52}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"51","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.51/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":51}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"50","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.50/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":50}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":100,"packets-matched":"11"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s3","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:56:34.138Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"d2:3e:6c:b7:77:4e","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":53,"nanosecond":835000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"ea:2e:56:2c:59:09","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"15","received":"15"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":53,"nanosecond":839000000},"bytes":{"transmitted":"1236","received":"1236"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"1e:18:44:08:21:c8","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s3-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"15","received":"9"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":53,"nanosecond":839000000},"bytes":{"transmitted":"1236","received":"726"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:group":[{"group-id":56,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":56000}}],"watch_group":56000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":56,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":22000}}],"watch_group":22000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":22,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":99000}}],"watch_group":99000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":99,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":34000,"duration":{"second":53,"nanosecond":498000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":89000,"duration":{"second":53,"nanosecond":498000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":60000,"duration":{"second":53,"nanosecond":498000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":91000,"duration":{"second":53,"nanosecond":498000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":57000}}],"watch_group":57000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":57,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":23000}}],"watch_group":23000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":23,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":14000,"duration":{"second":53,"nanosecond":498000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":98000}}],"watch_group":98000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":98,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":56000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":56000,"duration":{"second":53,"nanosecond":498000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":85000,"duration":{"second":53,"nanosecond":498000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":54000}}],"watch_group":54000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":54,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":24000}}],"watch_group":24000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":24,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":36000,"duration":{"second":53,"nanosecond":498000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":87000,"duration":{"second":53,"nanosecond":498000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":59000,"duration":{"second":53,"nanosecond":498000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":25000,"duration":{"second":53,"nanosecond":498000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":43000,"duration":{"second":53,"nanosecond":498000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":55000}}],"watch_group":55000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":55,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":25000}}],"watch_group":25000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":25,"duration":{"second":53,"nanosecond":202000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":100000}}],"watch_group":100000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":100,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":58000,"duration":{"second":53,"nanosecond":202000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":86000,"duration":{"second":53,"nanosecond":202000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":60000}}],"watch_group":60000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":60,"duration":{"second":53,"nanosecond":202000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":26000}}],"watch_group":26000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":26,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":41000,"duration":{"second":53,"nanosecond":202000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":95000}}],"watch_group":95000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":95,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":82000,"duration":{"second":53,"nanosecond":202000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":61000}}],"watch_group":61000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":61,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":27000}}],"watch_group":27000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":27,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":94000}}],"watch_group":94000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":94,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":98000,"duration":{"second":53,"nanosecond":202000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":27000,"duration":{"second":53,"nanosecond":202000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":57000,"duration":{"second":53,"nanosecond":202000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":16000,"duration":{"second":53,"nanosecond":201000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":83000,"duration":{"second":53,"nanosecond":201000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":58000}}],"watch_group":58000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":58,"duration":{"second":52,"nanosecond":698000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":28000}}],"watch_group":28000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":28,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":97000}}],"watch_group":97000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":97,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":100000,"duration":{"second":52,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":59000}}],"watch_group":59000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":59,"duration":{"second":52,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":38000,"duration":{"second":52,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":29000}}],"watch_group":29000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":29,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":96000}}],"watch_group":96000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":96,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":84000,"duration":{"second":52,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":64000}}],"watch_group":64000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":64,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":30000}}],"watch_group":30000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":30,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":4000}}],"watch_group":4000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":4,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":91000}}],"watch_group":91000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":91,"duration":{"second":52,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":7000,"duration":{"second":52,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":29000,"duration":{"second":52,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":65000}}],"watch_group":65000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":65,"duration":{"second":50,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":31000}}],"watch_group":31000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":31,"duration":{"second":50,"nanosecond":194000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":5000}}],"watch_group":5000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":5,"duration":{"second":50,"nanosecond":194000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":90000}}],"watch_group":90000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":90,"duration":{"second":50,"nanosecond":194000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":18000,"duration":{"second":52,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":62000}}],"watch_group":62000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":62,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":65000,"duration":{"second":52,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":32000}}],"watch_group":32000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":32,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":2000}}],"watch_group":2000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":2,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":93000}}],"watch_group":93000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":93,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":64000,"duration":{"second":52,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":63000}}],"watch_group":63000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":63,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":33000}}],"watch_group":33000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":33,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":3000}}],"watch_group":3000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":3,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":80000,"duration":{"second":52,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":9000,"duration":{"second":52,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":92000}}],"watch_group":92000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":92,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":5000,"duration":{"second":52,"nanosecond":695000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":20000,"duration":{"second":52,"nanosecond":695000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":81000,"duration":{"second":52,"nanosecond":695000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":97000,"duration":{"second":52,"nanosecond":695000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":31000,"duration":{"second":52,"nanosecond":694000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":68000}}],"watch_group":68000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":68,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":11000,"duration":{"second":52,"nanosecond":693000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":34000}}],"watch_group":34000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":34,"duration":{"second":52,"nanosecond":693000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":78000,"duration":{"second":52,"nanosecond":692000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":87000}}],"watch_group":87000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":87,"duration":{"second":52,"nanosecond":692000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":93000,"duration":{"second":52,"nanosecond":692000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":63000,"duration":{"second":52,"nanosecond":692000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":69000}}],"watch_group":69000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":69,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":35000}}],"watch_group":35000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":35,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":33000,"duration":{"second":52,"nanosecond":692000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":79000,"duration":{"second":52,"nanosecond":692000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":86000}}],"watch_group":86000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":86,"duration":{"second":52,"nanosecond":691000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":62000,"duration":{"second":52,"nanosecond":691000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":66000}}],"watch_group":66000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":66,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":77000,"duration":{"second":52,"nanosecond":691000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":36000}}],"watch_group":36000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":36,"duration":{"second":52,"nanosecond":691000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":89000}}],"watch_group":89000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":89,"duration":{"second":52,"nanosecond":691000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":22000,"duration":{"second":52,"nanosecond":690000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":95000,"duration":{"second":52,"nanosecond":690000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":67000}}],"watch_group":67000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":67,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":37000}}],"watch_group":37000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":37,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":88000}}],"watch_group":88000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":88,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":61000,"duration":{"second":52,"nanosecond":689000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":3000,"duration":{"second":52,"nanosecond":689000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":73000}}],"watch_group":73000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":73,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":39000}}],"watch_group":39000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":39,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":13000}}],"watch_group":13000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":13,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":74000,"duration":{"second":52,"nanosecond":689000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":15000,"duration":{"second":52,"nanosecond":689000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":44000,"duration":{"second":52,"nanosecond":689000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":45000,"duration":{"second":52,"nanosecond":689000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":68000,"duration":{"second":52,"nanosecond":689000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":72000}}],"watch_group":72000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":72,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":38000}}],"watch_group":38000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":38,"duration":{"second":52,"nanosecond":202000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":75000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":12000}}],"watch_group":12000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":12,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":35000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":24000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":90000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":71000}}],"watch_group":71000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":71,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":41000}}],"watch_group":41000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":41,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":42000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":11000}}],"watch_group":11000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":11,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":92000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":46000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":67000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":70000}}],"watch_group":70000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":70,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":76000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":40000}}],"watch_group":40000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":40,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":13000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":10000}}],"watch_group":10000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":10,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":88000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":47000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":66000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":77000}}],"watch_group":77000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":77,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":43000}}],"watch_group":43000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":43,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":9000}}],"watch_group":9000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":9,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":99000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":26000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":70000,"duration":{"second":52,"nanosecond":200000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":76000}}],"watch_group":76000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":76,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":42000}}],"watch_group":42000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":42,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":8000}}],"watch_group":8000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":8,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":37000,"duration":{"second":51,"nanosecond":700000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":49000,"duration":{"second":51,"nanosecond":700000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":71000,"duration":{"second":51,"nanosecond":700000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":48000,"duration":{"second":51,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":75000}}],"watch_group":75000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":75,"duration":{"second":51,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":45000}}],"watch_group":45000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":45,"duration":{"second":51,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":7000}}],"watch_group":7000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":7,"duration":{"second":51,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":39000,"duration":{"second":51,"nanosecond":698000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":73000,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":69000,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":17000,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":28000,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":74000}}],"watch_group":74000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":74,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":44000}}],"watch_group":44000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":44,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":6000}}],"watch_group":6000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":6,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":40000,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":81000}}],"watch_group":81000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":81,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":47000}}],"watch_group":47000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":47,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":21000}}],"watch_group":21000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":21,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":8000,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":19000,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":96000,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":80000}}],"watch_group":80000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":80,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":46000}}],"watch_group":46000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":46,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":20000}}],"watch_group":20000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":20,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":52000,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":6000,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":79000}}],"watch_group":79000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":79,"duration":{"second":51,"nanosecond":697000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":49000}}],"watch_group":49000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":49,"duration":{"second":51,"nanosecond":199000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":19000}}],"watch_group":19000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":19,"duration":{"second":51,"nanosecond":199000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":50000,"duration":{"second":51,"nanosecond":199000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":72000,"duration":{"second":51,"nanosecond":199000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":30000,"duration":{"second":51,"nanosecond":199000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":78000}}],"watch_group":78000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":78,"duration":{"second":51,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":48000}}],"watch_group":48000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":48,"duration":{"second":51,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":18000}}],"watch_group":18000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":18,"duration":{"second":51,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":51000,"duration":{"second":51,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":85000}}],"watch_group":85000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":85,"duration":{"second":51,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":55000,"duration":{"second":51,"nanosecond":198000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":51000}}],"watch_group":51000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":51,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":17000}}],"watch_group":17000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":17,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":21000,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":4000,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":84000}}],"watch_group":84000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":84,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":50000}}],"watch_group":50000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":50,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":16000}}],"watch_group":16000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":16,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":10000,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":54000,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":83000}}],"watch_group":83000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":83,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":32000,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":53000}}],"watch_group":53000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":53,"duration":{"second":50,"nanosecond":189000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":15000}}],"watch_group":15000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":15,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":2000,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":82000}}],"watch_group":82000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":82,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":52000}}],"watch_group":52000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":52,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":14000}}],"watch_group":14000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":14,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":53000,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":12000,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":23000,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":94000,"duration":{"second":50,"nanosecond":696000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:56:34.302Z"}},{"id":"openflow:1","flow-node-inventory:port-number":48076,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":359000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":354000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":354000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":354000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":353000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":353000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":353000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":353000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":353000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":353000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":353000000}},"flags":""},{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":353000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":353000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":352000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":348000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":348000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":348000000}},"flags":""},{"id":"75","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.75/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":75}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":348000000}},"flags":""},{"id":"74","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.74/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":74}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":348000000}},"flags":""},{"id":"73","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.73/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":73}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":348000000}},"flags":""},{"id":"72","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.72/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":72}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":348000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":347000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":344000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":341000000}},"flags":""},{"id":"89","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.89/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":89}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":340000000}},"flags":""},{"id":"88","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.88/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":88}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":339000000}},"flags":""},{"id":"87","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.87/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":87}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":338000000}},"flags":""},{"id":"86","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.86/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":86}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":336000000}},"flags":""},{"id":"85","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.85/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":85}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":336000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":334000000}},"flags":""},{"id":"83","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.83/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":83}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":333000000}},"flags":""},{"id":"19","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.19/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":19}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":331000000}},"flags":""},{"id":"18","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.18/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":18}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":331000000}},"flags":""},{"id":"17","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.17/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":17}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":327000000}},"flags":""},{"id":"16","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.16/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":16}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":327000000}},"flags":""},{"id":"15","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.15/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":15}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":327000000}},"flags":""},{"id":"14","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.14/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":14}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":324000000}},"flags":""},{"id":"2","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.2/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":2}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":324000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":324000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":321000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":321000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":319000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":311000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":311000000}},"flags":""},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":311000000}},"flags":""},{"id":"99","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.99/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":99}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":311000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":311000000}},"flags":""},{"id":"98","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.98/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":98}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":311000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":311000000}},"flags":""},{"id":"96","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.96/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":96}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":306000000}},"flags":""},{"id":"95","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.95/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":95}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":306000000}},"flags":""},{"id":"94","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.94/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":94}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":260000000}},"flags":""},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":260000000}},"flags":""},{"id":"28","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.28/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":28}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":260000000}},"flags":""},{"id":"27","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.27/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":27}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":259000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":259000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":259000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":259000000}},"flags":""},{"id":"8","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.8/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":8}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":259000000}},"flags":""},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":259000000}},"flags":""},{"id":"6","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.6/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":6}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":259000000}},"flags":""},{"id":"5","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.5/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":5}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":259000000}},"flags":""},{"id":"4","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.4/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":4}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":259000000}},"flags":""},{"id":"3","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.3/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":3}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":259000000}},"flags":""},{"id":"24","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.24/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":24}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":259000000}},"flags":""},{"id":"23","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.23/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":23}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":259000000}},"flags":""},{"id":"22","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.22/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":22}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"21","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.21/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":21}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"20","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.20/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":20}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"39","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.39/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":39}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"38","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.38/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":38}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"37","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.37/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":37}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"36","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.36/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":36}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"35","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.35/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":35}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"34","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.34/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":34}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"33","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.33/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":33}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"32","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.32/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":32}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"31","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.31/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":31}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"30","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.30/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":30}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"49","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.49/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":49}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"48","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.48/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":48}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"47","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.47/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":47}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":242000000}},"flags":""},{"id":"#UF$TABLE*0-1","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"11","byte-count":"845","duration":{"second":3,"nanosecond":95000000}},"flags":"SEND_FLOW_REM"},{"id":"46","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.46/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":46}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":177000000}},"flags":""},{"id":"45","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.45/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":45}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":177000000}},"flags":""},{"id":"44","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.44/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":44}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":177000000}},"flags":""},{"id":"43","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.43/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":43}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":177000000}},"flags":""},{"id":"42","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.42/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":42}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":177000000}},"flags":""},{"id":"41","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.41/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":41}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":177000000}},"flags":""},{"id":"40","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.40/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":40}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":177000000}},"flags":""},{"id":"59","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.59/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":59}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":177000000}},"flags":""},{"id":"58","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.58/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":58}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"57","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.57/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":57}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"56","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.56/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":56}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"55","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.55/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":55}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"54","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.54/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":54}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"53","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.53/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":53}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"52","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.52/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":52}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"51","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.51/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":51}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""},{"id":"50","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.50/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":50}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":176000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":100,"packets-matched":"11"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s1","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:56:34.133Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"de:fd:88:3a:0f:fe","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"15","received":"9"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":53,"nanosecond":828000000},"bytes":{"transmitted":"1236","received":"726"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ee:44:6a:8a:83:4e","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":53,"nanosecond":817000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"3a:a8:41:44:b3:f9","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"15","received":"15"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":53,"nanosecond":829000000},"bytes":{"transmitted":"1236","received":"1236"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:group":[{"group-id":56,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":56000}}],"watch_group":56000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":56,"duration":{"second":50,"nanosecond":673000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":22000}}],"watch_group":22000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":22,"duration":{"second":50,"nanosecond":673000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":99000}}],"watch_group":99000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":99,"duration":{"second":50,"nanosecond":673000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":34000,"duration":{"second":53,"nanosecond":473000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":89000,"duration":{"second":53,"nanosecond":473000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":60000,"duration":{"second":53,"nanosecond":473000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":91000,"duration":{"second":53,"nanosecond":473000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":57000}}],"watch_group":57000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":57,"duration":{"second":50,"nanosecond":673000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":23000}}],"watch_group":23000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":23,"duration":{"second":50,"nanosecond":175000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":14000,"duration":{"second":53,"nanosecond":473000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":98000}}],"watch_group":98000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":98,"duration":{"second":50,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":56000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":56000,"duration":{"second":53,"nanosecond":472000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":85000,"duration":{"second":53,"nanosecond":471000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":54000}}],"watch_group":54000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":54,"duration":{"second":50,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":24000}}],"watch_group":24000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":24,"duration":{"second":50,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":36000,"duration":{"second":53,"nanosecond":471000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":87000,"duration":{"second":53,"nanosecond":471000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":59000,"duration":{"second":53,"nanosecond":471000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":25000,"duration":{"second":53,"nanosecond":471000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":43000,"duration":{"second":53,"nanosecond":471000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":55000}}],"watch_group":55000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":55,"duration":{"second":50,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":25000}}],"watch_group":25000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":25,"duration":{"second":53,"nanosecond":176000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":100000}}],"watch_group":100000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":100,"duration":{"second":50,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":58000,"duration":{"second":53,"nanosecond":176000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":86000,"duration":{"second":53,"nanosecond":176000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":60000}}],"watch_group":60000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":60,"duration":{"second":53,"nanosecond":175000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":26000}}],"watch_group":26000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":26,"duration":{"second":50,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":41000,"duration":{"second":53,"nanosecond":175000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":95000}}],"watch_group":95000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":95,"duration":{"second":50,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":82000,"duration":{"second":53,"nanosecond":175000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":61000}}],"watch_group":61000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":61,"duration":{"second":50,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":27000}}],"watch_group":27000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":27,"duration":{"second":50,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":94000}}],"watch_group":94000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":94,"duration":{"second":50,"nanosecond":172000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":98000,"duration":{"second":53,"nanosecond":175000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":27000,"duration":{"second":53,"nanosecond":175000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":57000,"duration":{"second":53,"nanosecond":175000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":16000,"duration":{"second":53,"nanosecond":175000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":83000,"duration":{"second":53,"nanosecond":175000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":58000}}],"watch_group":58000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":58,"duration":{"second":52,"nanosecond":668000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":28000}}],"watch_group":28000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":28,"duration":{"second":50,"nanosecond":172000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":97000}}],"watch_group":97000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":97,"duration":{"second":50,"nanosecond":172000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":100000,"duration":{"second":52,"nanosecond":668000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":59000}}],"watch_group":59000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":59,"duration":{"second":52,"nanosecond":668000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":38000,"duration":{"second":52,"nanosecond":665000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":29000}}],"watch_group":29000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":29,"duration":{"second":50,"nanosecond":172000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":96000}}],"watch_group":96000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":96,"duration":{"second":50,"nanosecond":172000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":84000,"duration":{"second":52,"nanosecond":665000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":64000}}],"watch_group":64000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":64,"duration":{"second":50,"nanosecond":172000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":30000}}],"watch_group":30000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":30,"duration":{"second":50,"nanosecond":172000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":4000}}],"watch_group":4000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":4,"duration":{"second":50,"nanosecond":172000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":91000}}],"watch_group":91000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":91,"duration":{"second":52,"nanosecond":665000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":7000,"duration":{"second":52,"nanosecond":665000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":29000,"duration":{"second":52,"nanosecond":665000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":65000}}],"watch_group":65000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":65,"duration":{"second":50,"nanosecond":172000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":31000}}],"watch_group":31000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":31,"duration":{"second":50,"nanosecond":172000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":5000}}],"watch_group":5000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":5,"duration":{"second":50,"nanosecond":172000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":90000}}],"watch_group":90000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":90,"duration":{"second":50,"nanosecond":172000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":18000,"duration":{"second":52,"nanosecond":665000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":62000}}],"watch_group":62000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":62,"duration":{"second":50,"nanosecond":171000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":65000,"duration":{"second":52,"nanosecond":665000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":32000}}],"watch_group":32000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":32,"duration":{"second":50,"nanosecond":171000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":2000}}],"watch_group":2000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":2,"duration":{"second":50,"nanosecond":171000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":93000}}],"watch_group":93000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":93,"duration":{"second":50,"nanosecond":171000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":64000,"duration":{"second":52,"nanosecond":665000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":63000}}],"watch_group":63000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":63,"duration":{"second":50,"nanosecond":171000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":33000}}],"watch_group":33000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":33,"duration":{"second":50,"nanosecond":171000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":3000}}],"watch_group":3000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":3,"duration":{"second":50,"nanosecond":171000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":80000,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":9000,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":92000}}],"watch_group":92000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":92,"duration":{"second":50,"nanosecond":171000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":5000,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":20000,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":81000,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":97000,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":31000,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":68000}}],"watch_group":68000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":68,"duration":{"second":50,"nanosecond":171000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":11000,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":34000}}],"watch_group":34000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":34,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":78000,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":87000}}],"watch_group":87000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":87,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":93000,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":63000,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":69000}}],"watch_group":69000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":69,"duration":{"second":50,"nanosecond":171000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":35000}}],"watch_group":35000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":35,"duration":{"second":50,"nanosecond":170000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":33000,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":79000,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":86000}}],"watch_group":86000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":86,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":62000,"duration":{"second":52,"nanosecond":664000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":66000}}],"watch_group":66000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":66,"duration":{"second":50,"nanosecond":170000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":77000,"duration":{"second":52,"nanosecond":663000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":36000}}],"watch_group":36000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":36,"duration":{"second":52,"nanosecond":663000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":89000}}],"watch_group":89000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":89,"duration":{"second":52,"nanosecond":663000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":22000,"duration":{"second":52,"nanosecond":663000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":95000,"duration":{"second":52,"nanosecond":662000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":67000}}],"watch_group":67000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":67,"duration":{"second":50,"nanosecond":170000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":37000}}],"watch_group":37000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":37,"duration":{"second":50,"nanosecond":170000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":88000}}],"watch_group":88000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":88,"duration":{"second":50,"nanosecond":170000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":61000,"duration":{"second":52,"nanosecond":662000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":3000,"duration":{"second":52,"nanosecond":662000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":73000}}],"watch_group":73000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":73,"duration":{"second":50,"nanosecond":170000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":39000}}],"watch_group":39000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":39,"duration":{"second":50,"nanosecond":170000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":13000}}],"watch_group":13000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":13,"duration":{"second":50,"nanosecond":170000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":74000,"duration":{"second":52,"nanosecond":661000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":15000,"duration":{"second":52,"nanosecond":661000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":44000,"duration":{"second":52,"nanosecond":661000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":45000,"duration":{"second":52,"nanosecond":661000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":68000,"duration":{"second":52,"nanosecond":661000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":72000}}],"watch_group":72000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":72,"duration":{"second":50,"nanosecond":165000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":38000}}],"watch_group":38000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":38,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":75000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":12000}}],"watch_group":12000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":12,"duration":{"second":50,"nanosecond":164000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":35000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":24000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":90000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":71000}}],"watch_group":71000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":71,"duration":{"second":50,"nanosecond":164000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":41000}}],"watch_group":41000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":41,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":42000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":11000}}],"watch_group":11000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":11,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":92000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":46000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":67000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":70000}}],"watch_group":70000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":70,"duration":{"second":50,"nanosecond":164000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":76000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":40000}}],"watch_group":40000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":40,"duration":{"second":50,"nanosecond":164000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":13000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":10000}}],"watch_group":10000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":10,"duration":{"second":50,"nanosecond":164000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":88000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":47000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":66000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":77000}}],"watch_group":77000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":77,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":43000}}],"watch_group":43000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":43,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":9000}}],"watch_group":9000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":9,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":99000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":26000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":70000,"duration":{"second":52,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":76000}}],"watch_group":76000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":76,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":42000}}],"watch_group":42000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":42,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":8000}}],"watch_group":8000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":8,"duration":{"second":50,"nanosecond":164000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":37000,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":49000,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":71000,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":48000,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":75000}}],"watch_group":75000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":75,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":45000}}],"watch_group":45000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":45,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":7000}}],"watch_group":7000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":7,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":39000,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":73000,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":69000,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":17000,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":28000,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":74000}}],"watch_group":74000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":74,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":44000}}],"watch_group":44000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":44,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":6000}}],"watch_group":6000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":6,"duration":{"second":50,"nanosecond":164000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":40000,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":81000}}],"watch_group":81000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":81,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":47000}}],"watch_group":47000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":47,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":21000}}],"watch_group":21000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":21,"duration":{"second":50,"nanosecond":164000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":8000,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":19000,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":96000,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":80000}}],"watch_group":80000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":80,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":46000}}],"watch_group":46000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":46,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":20000}}],"watch_group":20000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":20,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":52000,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":6000,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":79000}}],"watch_group":79000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":79,"duration":{"second":51,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":49000}}],"watch_group":49000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":49,"duration":{"second":51,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":19000}}],"watch_group":19000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":19,"duration":{"second":51,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":50000,"duration":{"second":51,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":72000,"duration":{"second":51,"nanosecond":174000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":30000,"duration":{"second":51,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":78000}}],"watch_group":78000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":78,"duration":{"second":51,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":48000}}],"watch_group":48000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":48,"duration":{"second":51,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":18000}}],"watch_group":18000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":18,"duration":{"second":51,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":51000,"duration":{"second":51,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":85000}}],"watch_group":85000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":85,"duration":{"second":51,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":55000,"duration":{"second":51,"nanosecond":173000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":51000}}],"watch_group":51000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":51,"duration":{"second":50,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":17000}}],"watch_group":17000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":17,"duration":{"second":50,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":21000,"duration":{"second":50,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":4000,"duration":{"second":50,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":84000}}],"watch_group":84000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":84,"duration":{"second":50,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":50000}}],"watch_group":50000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":50,"duration":{"second":50,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":16000}}],"watch_group":16000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":16,"duration":{"second":50,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":10000,"duration":{"second":50,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":54000,"duration":{"second":50,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":83000}}],"watch_group":83000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":83,"duration":{"second":50,"nanosecond":675000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":32000,"duration":{"second":50,"nanosecond":673000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":53000}}],"watch_group":53000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":53,"duration":{"second":50,"nanosecond":164000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":15000}}],"watch_group":15000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":15,"duration":{"second":50,"nanosecond":673000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":2000,"duration":{"second":50,"nanosecond":673000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":82000}}],"watch_group":82000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":82,"duration":{"second":50,"nanosecond":673000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":52000}}],"watch_group":52000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":52,"duration":{"second":50,"nanosecond":673000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":14000}}],"watch_group":14000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":14,"duration":{"second":50,"nanosecond":673000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":53000,"duration":{"second":50,"nanosecond":673000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":12000,"duration":{"second":50,"nanosecond":673000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":23000,"duration":{"second":50,"nanosecond":673000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":94000,"duration":{"second":50,"nanosecond":673000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:56:34.280Z"}},{"id":"openflow:2","flow-node-inventory:port-number":48094,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"69","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.69/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":69}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"60","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.60/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":60}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"68","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.68/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":68}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"67","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.67/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":67}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"66","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.66/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":66}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"65","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.65/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":65}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"64","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.64/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":64}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"63","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.63/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":63}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"62","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.62/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":62}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"61","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.61/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":61}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"100","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.100/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":100}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"71","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.71/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":71}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"70","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.70/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":70}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"79","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.79/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":79}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"78","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.78/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":78}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"77","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.77/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":77}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"76","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.76/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":76}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"75","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.75/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":75}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"74","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.74/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":74}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"73","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.73/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":73}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"72","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.72/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":72}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"82","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.82/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":82}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"81","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.81/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":81}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"80","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.80/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":80}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"89","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.89/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":89}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"88","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.88/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":88}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"87","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.87/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":87}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"86","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.86/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":86}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"85","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.85/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":85}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"84","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.84/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":84}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"83","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.83/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":83}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"19","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.19/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":19}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"18","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.18/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":18}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"17","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.17/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":17}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"16","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.16/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":16}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"15","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.15/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":15}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"14","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.14/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":14}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"2","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.2/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":2}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"93","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.93/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":93}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":169000000}},"flags":""},{"id":"92","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.92/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":92}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"91","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.91/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":91}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"90","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.90/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":90}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"13","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.13/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":13}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"12","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.12/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":12}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"11","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.11/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":11}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"99","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.99/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":99}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"10","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.10/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":10}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"98","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.98/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":98}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"97","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.97/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":97}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"96","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.96/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":96}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"95","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.95/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":95}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"94","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.94/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":94}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"29","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.29/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":29}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"28","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.28/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":28}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"27","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.27/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":27}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"26","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.26/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":26}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"25","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.25/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":25}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"9","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.9/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":9}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"8","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.8/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":8}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"7","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.7/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":7}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"6","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.6/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":6}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"5","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.5/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":5}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"4","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.4/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":4}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"3","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.3/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":3}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"24","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.24/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":24}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"23","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.23/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":23}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"22","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.22/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":22}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"21","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.21/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":21}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"20","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.20/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":20}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"39","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.39/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":39}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"38","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.38/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":38}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"37","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.37/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":37}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"36","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.36/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":36}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"35","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.35/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":35}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"34","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.34/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":34}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"33","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.33/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":33}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"32","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.32/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":32}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"31","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.31/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":31}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"30","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.30/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":30}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"49","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.49/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":49}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"48","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.48/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":48}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"47","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.47/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":47}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"#UF$TABLE*0-2","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"21","byte-count":"1650","duration":{"second":3,"nanosecond":122000000}},"flags":"SEND_FLOW_REM"},{"id":"46","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.46/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":46}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"45","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.45/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":45}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"44","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.44/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":44}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"43","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.43/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":43}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"42","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.42/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":42}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"41","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.41/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":41}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"40","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.40/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":40}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"59","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.59/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":59}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"58","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.58/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":58}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"57","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.57/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":57}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"56","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.56/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":56}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"55","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.55/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":55}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"54","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.54/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":54}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"53","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.53/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":53}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"52","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.52/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":52}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"51","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.51/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":51}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""},{"id":"50","table_id":0,"priority":100,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-type":{"type":2048}},"ipv4-destination":"10.0.10.50/32"},"cookie":"0","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"group-action":{"group-id":50}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":3,"nanosecond":168000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"35","active-flows":100,"packets-matched":"21"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s2","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:56:34.130Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"96:6d:7e:e3:20:cb","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth3","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"15","received":"15"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":53,"nanosecond":857000000},"bytes":{"transmitted":"1236","received":"1236"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"aa:85:98:60:af:45","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":53,"nanosecond":853000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"b2:63:e2:1f:6f:f5","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"15","received":"15"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":53,"nanosecond":857000000},"bytes":{"transmitted":"1236","received":"1236"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"6e:ec:a4:2a:50:8d","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s2-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"15","received":"9"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":53,"nanosecond":857000000},"bytes":{"transmitted":"1236","received":"726"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:group":[{"group-id":56,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":56000}}],"watch_group":56000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":56,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":22000}}],"watch_group":22000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":22,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":99000}}],"watch_group":99000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":99,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":34000,"duration":{"second":53,"nanosecond":503000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":89000,"duration":{"second":53,"nanosecond":503000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":60000,"duration":{"second":53,"nanosecond":503000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":91000,"duration":{"second":53,"nanosecond":503000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":57000}}],"watch_group":57000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":57,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":23000}}],"watch_group":23000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":23,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":14000,"duration":{"second":53,"nanosecond":503000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":98000}}],"watch_group":98000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":98,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":56000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":56000,"duration":{"second":53,"nanosecond":503000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":85000,"duration":{"second":53,"nanosecond":503000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":54000}}],"watch_group":54000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":54,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":24000}}],"watch_group":24000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":24,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":36000,"duration":{"second":53,"nanosecond":503000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":87000,"duration":{"second":53,"nanosecond":503000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":59000,"duration":{"second":53,"nanosecond":502000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":25000,"duration":{"second":53,"nanosecond":502000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":43000,"duration":{"second":53,"nanosecond":502000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":55000}}],"watch_group":55000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":55,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":25,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":25000}}],"watch_group":25000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":25,"duration":{"second":53,"nanosecond":207000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":100000}}],"watch_group":100000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":100,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":58000,"duration":{"second":53,"nanosecond":207000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":86000,"duration":{"second":53,"nanosecond":207000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":60,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":60000}}],"watch_group":60000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":60,"duration":{"second":53,"nanosecond":207000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":26000}}],"watch_group":26000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":26,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":41000,"duration":{"second":53,"nanosecond":205000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":95000}}],"watch_group":95000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":95,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":82000,"duration":{"second":53,"nanosecond":205000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":61000}}],"watch_group":61000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":61,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":27000}}],"watch_group":27000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":27,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":94000}}],"watch_group":94000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":94,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":98000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":98000,"duration":{"second":53,"nanosecond":205000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":27000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":27000,"duration":{"second":53,"nanosecond":205000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":57000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":57000,"duration":{"second":53,"nanosecond":205000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":16000,"duration":{"second":53,"nanosecond":203000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":83000,"duration":{"second":53,"nanosecond":203000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":58,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":58000}}],"watch_group":58000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":58,"duration":{"second":52,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":28000}}],"watch_group":28000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":28,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":97000}}],"watch_group":97000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":97,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":100000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":100000,"duration":{"second":52,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":59,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":59000}}],"watch_group":59000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":59,"duration":{"second":52,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":38000,"duration":{"second":52,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":29000}}],"watch_group":29000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":29,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":96000}}],"watch_group":96000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":96,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":84000,"duration":{"second":52,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":64000}}],"watch_group":64000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":64,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":30000}}],"watch_group":30000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":30,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":4000}}],"watch_group":4000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":4,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":91,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":91000}}],"watch_group":91000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":91,"duration":{"second":52,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":7000,"duration":{"second":52,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":29000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":29000,"duration":{"second":52,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":65000}}],"watch_group":65000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":65,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":31000}}],"watch_group":31000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":31,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":5000}}],"watch_group":5000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":5,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":90000}}],"watch_group":90000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":90,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":18000,"duration":{"second":52,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":62000}}],"watch_group":62000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":62,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":65000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":65000,"duration":{"second":52,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":32000}}],"watch_group":32000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":32,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":2000}}],"watch_group":2000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":2,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":93000}}],"watch_group":93000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":93,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":64000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":64000,"duration":{"second":52,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":63000}}],"watch_group":63000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":63,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":33000}}],"watch_group":33000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":33,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":3000}}],"watch_group":3000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":3,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":80000,"duration":{"second":52,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":9000,"duration":{"second":52,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":92000}}],"watch_group":92000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":92,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":5000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":5000,"duration":{"second":52,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":20000,"duration":{"second":52,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":81000,"duration":{"second":52,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":97000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":97000,"duration":{"second":52,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":31000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":31000,"duration":{"second":52,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":68000}}],"watch_group":68000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":68,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":11000,"duration":{"second":52,"nanosecond":700000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":34,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":34000}}],"watch_group":34000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":34,"duration":{"second":52,"nanosecond":700000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":78000,"duration":{"second":52,"nanosecond":700000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":87,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":87000}}],"watch_group":87000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":87,"duration":{"second":52,"nanosecond":700000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":93000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":93000,"duration":{"second":52,"nanosecond":700000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":63000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":63000,"duration":{"second":52,"nanosecond":700000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":69000}}],"watch_group":69000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":69,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":35000}}],"watch_group":35000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":35,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":33000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":33000,"duration":{"second":52,"nanosecond":700000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":79000,"duration":{"second":52,"nanosecond":700000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":86,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":86000}}],"watch_group":86000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":86,"duration":{"second":52,"nanosecond":700000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":62000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":62000,"duration":{"second":52,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":66000}}],"watch_group":66000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":66,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":77000,"duration":{"second":52,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":36,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":36000}}],"watch_group":36000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":36,"duration":{"second":52,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":89,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":89000}}],"watch_group":89000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":89,"duration":{"second":52,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":22000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":22000,"duration":{"second":52,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":95000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":95000,"duration":{"second":52,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":67000}}],"watch_group":67000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":67,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":37000}}],"watch_group":37000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":37,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":88000}}],"watch_group":88000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":88,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":61000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":61000,"duration":{"second":52,"nanosecond":698000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":3000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":3000,"duration":{"second":52,"nanosecond":695000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":73000}}],"watch_group":73000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":73,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":39000}}],"watch_group":39000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":39,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":13000}}],"watch_group":13000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":13,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":74000,"duration":{"second":52,"nanosecond":694000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":15000,"duration":{"second":52,"nanosecond":694000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":44000,"duration":{"second":52,"nanosecond":694000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":45000,"duration":{"second":52,"nanosecond":694000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":68000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":68000,"duration":{"second":52,"nanosecond":694000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":72000}}],"watch_group":72000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":72,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":38,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":38000}}],"watch_group":38000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":38,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":75000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":12000}}],"watch_group":12000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":12,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":35000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":35000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":24000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":24000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":90000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":90000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":71000}}],"watch_group":71000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":71,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":41,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":41000}}],"watch_group":41000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":41,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":42000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":11,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":11000}}],"watch_group":11000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":11,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":92000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":92000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":46000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":67000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":67000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":70000}}],"watch_group":70000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":70,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":76000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":40000}}],"watch_group":40000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":40,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":13000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":13000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":10000}}],"watch_group":10000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":10,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":88000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":88000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":47000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":66000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":66000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":77,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":77000}}],"watch_group":77000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":77,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":43,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":43000}}],"watch_group":43000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":43,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":9,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":9000}}],"watch_group":9000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":9,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":99000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":99000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":26000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":26000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":70000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":70000,"duration":{"second":52,"nanosecond":204000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":76,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":76000}}],"watch_group":76000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":76,"duration":{"second":51,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":42,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":42000}}],"watch_group":42000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":42,"duration":{"second":51,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":8000}}],"watch_group":8000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":8,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":37000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":37000,"duration":{"second":51,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":49000,"duration":{"second":51,"nanosecond":702000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":71000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":71000,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":48000,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":75,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":75000}}],"watch_group":75000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":75,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":45,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":45000}}],"watch_group":45000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":45,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":7,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":7000}}],"watch_group":7000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":7,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":39000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":39000,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":73000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":73000,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":69000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":69000,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":17000,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":28000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":28000,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":74,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":74000}}],"watch_group":74000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":74,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":44,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":44000}}],"watch_group":44000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":44,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":6000}}],"watch_group":6000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":6,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":40000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":40000,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":81,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":81000}}],"watch_group":81000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":81,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":47,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":47000}}],"watch_group":47000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":47,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":21000}}],"watch_group":21000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":21,"duration":{"second":50,"nanosecond":188000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":8000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":8000,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":19000,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":96000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":96000,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":80,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":80000}}],"watch_group":80000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":80,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":46,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":46000}}],"watch_group":46000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":46,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":20,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":20000}}],"watch_group":20000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":20,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":52000,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":6000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":6000,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":79,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":79000}}],"watch_group":79000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":79,"duration":{"second":51,"nanosecond":701000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":49,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":49000}}],"watch_group":49000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":49,"duration":{"second":51,"nanosecond":201000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":19,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":19000}}],"watch_group":19000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":19,"duration":{"second":51,"nanosecond":201000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":50000,"duration":{"second":51,"nanosecond":201000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":72000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":72000,"duration":{"second":51,"nanosecond":201000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":30000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":30000,"duration":{"second":51,"nanosecond":201000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":78,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":78000}}],"watch_group":78000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":78,"duration":{"second":51,"nanosecond":201000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":48,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":48000}}],"watch_group":48000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":48,"duration":{"second":51,"nanosecond":201000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":18,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":18000}}],"watch_group":18000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":18,"duration":{"second":51,"nanosecond":201000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":51000,"duration":{"second":51,"nanosecond":201000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":85,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":85000}}],"watch_group":85000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":85,"duration":{"second":51,"nanosecond":201000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":55000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":55000,"duration":{"second":51,"nanosecond":201000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":51,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":51000}}],"watch_group":51000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":51,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":17,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":17000}}],"watch_group":17000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":17,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":21000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":21000,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":4000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":4000,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":84,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":84000}}],"watch_group":84000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":84,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":50,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":50000}}],"watch_group":50000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":50,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":16,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":16000}}],"watch_group":16000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":16,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":10000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":10000,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":54000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":54000,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":83,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":83000}}],"watch_group":83000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":83,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":32000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":32000,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":53000}}],"watch_group":53000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":53,"duration":{"second":50,"nanosecond":187000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":15,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":15000}}],"watch_group":15000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":15,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":2000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":2000,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":82,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":82000}}],"watch_group":82000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":82,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":52,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":52000}}],"watch_group":52000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":52,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":14,"group-type":"group-ff","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"group-action":{"group-id":14000}}],"watch_group":14000,"weight":0}]},"opendaylight-group-statistics:group-statistics":{"ref-count":1,"byte-count":"0","packet-count":"0","group-id":14,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":53000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":53000,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":12000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":12000,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":23000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":23000,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}},{"group-id":94000,"group-type":"group-select","buckets":{"bucket":[{"bucket-id":0,"watch_port":4294967295,"action":[{"order":0,"output-action":{"max-length":0,"output-node-connector":"1"}}],"watch_group":4294967295,"weight":1}]},"opendaylight-group-statistics:group-statistics":{"ref-count":0,"byte-count":"0","packet-count":"0","group-id":94000,"duration":{"second":50,"nanosecond":699000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:56:34.323Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:34.780644" elapsed="0.010098"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-05-25T01:56:34.793898" level="INFO">Item found from container 594 times.</msg>
<msg time="2026-05-25T01:56:34.793981" level="INFO">${group_count} = 594</msg>
<var>${group_count}</var>
<arg>${resp.text}</arg>
<arg>"group-type"</arg>
<doc>Returns and logs how many times ``item`` is found from ``container``.</doc>
<status status="PASS" start="2026-05-25T01:56:34.790938" elapsed="0.003068"/>
</kw>
<kw name="Should Be Equal As Integers" owner="BuiltIn">
<arg>${group_count}</arg>
<arg>${groups}</arg>
<doc>Fails if objects are unequal after converting them to integers.</doc>
<status status="PASS" start="2026-05-25T01:56:34.794218" elapsed="0.000314"/>
</kw>
<arg>${less_groups}</arg>
<doc>Check number of groups in the inventory.</doc>
<status status="PASS" start="2026-05-25T01:56:34.712455" elapsed="0.082142"/>
</kw>
<doc>Check Flows after mininet starts.</doc>
<status status="PASS" start="2026-05-25T01:56:34.711748" elapsed="0.082956"/>
</test>
<test id="s1-s5-s1-t21" name="Check Flows In Switch After Controller Restarts" line="140">
<kw name="Check Flows In Mininet" owner="MininetKeywords">
<if>
<branch type="IF" condition="&quot;&quot;&quot;${mininet_conn}&quot;&quot;&quot; != &quot;&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${mininet_conn}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:56:34.796425" elapsed="0.000143"/>
</kw>
<status status="PASS" start="2026-05-25T01:56:34.796184" elapsed="0.000422"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:34.796154" elapsed="0.000480"/>
</if>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:34.797093" level="INFO">${cmd} = dpctl dump-aggregate -O OpenFlow13</msg>
<var>${cmd}</var>
<arg>dpctl dump-aggregate -O OpenFlow13</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:56:34.796813" elapsed="0.000307"/>
</kw>
<kw name="Send Mininet Command" owner="MininetKeywords">
<if>
<branch type="IF" condition="&quot;&quot;&quot;${mininet_conn}&quot;&quot;&quot; != &quot;&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${mininet_conn}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:56:34.797966" elapsed="0.000152"/>
</kw>
<status status="PASS" start="2026-05-25T01:56:34.797750" elapsed="0.000405"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:34.797732" elapsed="0.000448"/>
</if>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:56:34.801858" level="INFO">dpctl dump-aggregate -O OpenFlow13</msg>
<arg>${cmd}</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:56:34.798319" elapsed="0.003597"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:56:34.882148" level="INFO">*** s1 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=11 byte_count=845 flow_count=100
*** s2 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=21 byte_count=1650 flow_count=100
*** s3 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=11 byte_count=845 flow_count=100
mininet&gt;</msg>
<msg time="2026-05-25T01:56:34.882253" level="INFO">${output} = *** s1 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=11 byte_count=845 flow_count=100
*** s2 -----------------------...</msg>
<var>${output}</var>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:56:34.802101" elapsed="0.080179"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:56:34.882336" elapsed="0.000047"/>
</return>
<msg time="2026-05-25T01:56:34.882515" level="INFO">${output} = *** s1 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=11 byte_count=845 flow_count=100
*** s2 -----------------------...</msg>
<var>${output}</var>
<arg>${mininet_conn}</arg>
<arg>${cmd}</arg>
<doc>Sends Command dpctl dump-aggregate -O OpenFlow13 to Mininet session 5 and returns read buffer response.</doc>
<status status="PASS" start="2026-05-25T01:56:34.797447" elapsed="0.085095"/>
</kw>
<kw name="Get Regexp Matches" owner="String">
<msg time="2026-05-25T01:56:34.882971" level="INFO">${flows} = ['100', '100', '100']</msg>
<var>${flows}</var>
<arg>${output}</arg>
<arg>(?&lt;=flow_count\=).*?(?=\r)</arg>
<doc>Returns a list of all non-overlapping matches in the given string.</doc>
<status status="PASS" start="2026-05-25T01:56:34.882708" elapsed="0.000288"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:56:34.883597" level="INFO">${total_flows} = 300</msg>
<var>${total_flows}</var>
<arg>sum(map(int, ${flows}))</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:56:34.883177" elapsed="0.000448"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<arg>${total_flows}</arg>
<arg>${flow_count}</arg>
<doc>Fails if objects are unequal after converting them to real numbers.</doc>
<status status="PASS" start="2026-05-25T01:56:34.883825" elapsed="0.000339"/>
</kw>
<arg>${mininet_conn_id}</arg>
<arg>${less_flows}</arg>
<doc>Sync with mininet to match exact number of flows</doc>
<status status="PASS" start="2026-05-25T01:56:34.795758" elapsed="0.088468"/>
</kw>
<doc>Check Flows after mininet starts.</doc>
<status status="PASS" start="2026-05-25T01:56:34.795093" elapsed="0.089239"/>
</test>
<test id="s1-s5-s1-t22" name="Stop Mininet" line="144">
<kw name="Stop Mininet And Exit" owner="MininetKeywords">
<if>
<branch type="IF" condition="&quot;&quot;&quot;${mininet_conn}&quot;&quot;&quot; != &quot;&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${mininet_conn}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:34.893187" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:34.892947" elapsed="0.000299"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:34.892926" elapsed="0.000344"/>
</if>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:56:34.894985" level="INFO">exit</msg>
<arg>exit</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:56:34.893407" elapsed="0.001634"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:56:35.129501" level="INFO">*** Stopping 1 controllers
c0 
*** Stopping 5 links
.....
*** Stopping 3 switches
s1 s2 s3 
*** Stopping 3 hosts
h1 h2 h3 
*** Done
completed in 54.878 seconds
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${TOOLS_SYSTEM_PROMPT}</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:56:34.895219" elapsed="0.234361"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:35.129768" elapsed="0.000177"/>
</kw>
<doc>Stops Mininet and exits session ${mininet_conn}</doc>
<status status="PASS" start="2026-05-25T01:56:34.890979" elapsed="0.239026"/>
</kw>
<doc>Stop Mininet.</doc>
<status status="PASS" start="2026-05-25T01:56:34.884511" elapsed="0.245628"/>
</test>
<test id="s1-s5-s1-t23" name="Check No Switches" line="148">
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:35.138825" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:35.139735" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '1245'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"}]},{"node-id":"openflow:3","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}]},{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:56:35.140045" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:35.131920" elapsed="0.008174"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:35.142634" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"}]},{"node-id":"openflow:3","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}]},{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:35.140321" elapsed="0.002368"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-05-25T01:56:35.149156" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"}]},{"node-id":"openflow:3","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}]},{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</msg>
<arg>${resp.text}</arg>
<arg>openflow:${switch}</arg>
<doc>Fails if ``container`` contains ``item`` one or more times.</doc>
<status status="FAIL" start="2026-05-25T01:56:35.145715" elapsed="0.003567">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"}]},{"node-id":"openflow:3","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}]},{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-05-25T01:56:35.145466" elapsed="0.003930">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"}]},{"node-id":"openflow:3","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}]},{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-05-25T01:56:35.142753" elapsed="0.006782">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"}]},{"node-id":"openflow:3","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}]},{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-05-25T01:56:35.131581" elapsed="0.018113">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:2","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']","termination-point":[{"tp-id":"openflow:2:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:2']/node-connector[id='openflow:2:LOCAL']"}]},{"node-id":"openflow:3","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']","termination-point":[{"tp-id":"openflow:3:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']/node-connector[id='openflow:3:LOCAL']"}]},{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:36.163640" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:36.163970" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '222'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:56:36.164283" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:36.151641" elapsed="0.012705"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:36.170243" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:36.164910" elapsed="0.005446"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>openflow:${switch}</arg>
<doc>Fails if ``container`` contains ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:56:36.173628" elapsed="0.002353"/>
</kw>
<var name="${switch}">1</var>
<status status="PASS" start="2026-05-25T01:56:36.173453" elapsed="0.002570"/>
</iter>
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>openflow:${switch}</arg>
<doc>Fails if ``container`` contains ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:56:36.176293" elapsed="0.002663"/>
</kw>
<var name="${switch}">2</var>
<status status="PASS" start="2026-05-25T01:56:36.176124" elapsed="0.002874"/>
</iter>
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<arg>${resp.text}</arg>
<arg>openflow:${switch}</arg>
<doc>Fails if ``container`` contains ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:56:36.179265" elapsed="0.002319"/>
</kw>
<var name="${switch}">3</var>
<status status="PASS" start="2026-05-25T01:56:36.179096" elapsed="0.002529"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-05-25T01:56:36.170485" elapsed="0.011170"/>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="PASS" start="2026-05-25T01:56:36.150712" elapsed="0.031009"/>
</kw>
<arg>5s</arg>
<arg>1s</arg>
<arg>FlowLib.Check No Switches In Topology</arg>
<arg>${SWITCHES}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:56:35.130882" elapsed="1.050890"/>
</kw>
<doc>Check no switches in topology.</doc>
<status status="PASS" start="2026-05-25T01:56:35.130425" elapsed="1.051478"/>
</test>
<kw name="Final Phase" type="TEARDOWN">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:36.183101" level="INFO">${command} = sudo iptables -v -F</msg>
<var>${command}</var>
<arg>sudo iptables -v -F</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:56:36.182822" elapsed="0.000306"/>
</kw>
<kw name="Run Command On Controller" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:36.185243" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:36.184922" elapsed="0.000380"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:36.184899" elapsed="0.000428"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:36.185635" level="INFO">index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:56:36.185738" level="INFO">${current_ssh_connection} = index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:56:36.185477" elapsed="0.000340"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:36.186379" level="INFO">Attempting to execute command "sudo iptables -v -F" on remote system "10.30.170.200" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:36.185971" elapsed="0.000456"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:36.186966" level="INFO">${conn_id} = 18</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:36.186599" elapsed="0.000394"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:56:36.187838" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:56:36.187914" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:56:36.187575" elapsed="0.000362"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:36.188112" elapsed="0.000325"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:56:36.189303" level="INFO">Logging into '10.30.170.200:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:56:36.500548" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-173-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:56:34 UTC 2026

  System load:  1.21               Processes:             122
  Usage of /:   11.1% of 77.35GB   Users logged in:       0
  Memory usage: 8%                 IPv4 address for ens3: 10.30.170.200
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

10 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:56:34 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-0-builder-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:56:36.188970" elapsed="0.311673"/>
</kw>
<msg time="2026-05-25T01:56:36.500707" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:36.188608" elapsed="0.312176"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:56:36.187227" elapsed="0.313645"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:56:36.501281" level="INFO">Executing command 'sudo iptables -v -F'.</msg>
<msg time="2026-05-25T01:56:36.544051" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:56:36.544348" level="INFO">${stdout} = Flushing chain `INPUT'
Flushing chain `FORWARD'
Flushing chain `OUTPUT'
Flushing chain `DOCKER'
Flushing chain `DOCKER-BRIDGE'
Flushing chain `DOCKER-CT'
Flushing chain `DOCKER-FORWARD'
Flushing chain...</msg>
<msg time="2026-05-25T01:56:36.544452" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:56:36.501064" elapsed="0.043441"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:36.544884" elapsed="0.000485"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:36.546448" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:36.545794" elapsed="0.000750"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:36.546987" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:36.546711" elapsed="0.000413"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:36.546663" elapsed="0.000513"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:56:36.547531" elapsed="0.000058"/>
</return>
<status status="PASS" start="2026-05-25T01:56:36.547296" elapsed="0.000367"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:36.547261" elapsed="0.000456"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:36.547790" elapsed="0.000031"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:36.553599" elapsed="0.000790"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:36.554738" elapsed="0.000154"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:36.555041" elapsed="0.000114"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:56:36.548505" elapsed="0.006702"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:56:36.184433" elapsed="0.370865"/>
</kw>
<msg time="2026-05-25T01:56:36.555353" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:36.183831" elapsed="0.371581"/>
</kw>
<arg>cmd=${command}</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Controller machine.</doc>
<status status="PASS" start="2026-05-25T01:56:36.183336" elapsed="0.372204"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:36.569325" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes 
 path_url=/rests/data/opendaylight-inventory:nodes 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'JSESSIONID=node01ju069xxtmjq911z4gf2la3ovm12.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:36.569370" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:36.556051" elapsed="0.013371"/>
</kw>
<arg>RequestsLibrary.DELETE On Session</arg>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:56:36.555698" elapsed="0.013778"/>
</kw>
<kw name="Delete All Sessions" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:36.569715" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-05-25T01:56:36.569634" elapsed="0.000735"/>
</kw>
<doc>Delete all sessions.</doc>
<status status="PASS" start="2026-05-25T01:56:36.182543" elapsed="0.388016"/>
</kw>
<doc>Test reconciliation of chained groups and flows after switch connection and controller are restarted.</doc>
<status status="PASS" start="2026-05-25T01:55:33.643540" elapsed="62.927095"/>
</suite>
<status status="PASS" start="2026-05-25T01:55:33.641761" elapsed="62.931463"/>
</suite>
<suite id="s1-s6" name="2429" source="/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Bug_Validation/2429.robot">
<test id="s1-s6-t1" name="Bug_2429" line="22">
<kw name="Log Environment Details">
<kw name="Get Process ID Based On Regex On Remote System" owner="Utils">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:36.616718" level="INFO">${cmd} = ps -elf | grep -v grep | grep java.*karaf | awk '{print $4}'</msg>
<var>${cmd}</var>
<arg>ps -elf | grep -v grep | grep ${regex_string_to_match_on} | awk '{print $4}'</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:56:36.616397" elapsed="0.000350"/>
</kw>
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:36.617938" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:36.617691" elapsed="0.000305"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:36.617668" elapsed="0.000353"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:36.618321" level="INFO">index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:56:36.618427" level="INFO">${current_ssh_connection} = index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:56:36.618160" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:36.618971" level="INFO">Attempting to execute command "ps -elf | grep -v grep | grep java.*karaf | awk '{print $4}'" on remote system "10.30.170.200" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:36.618580" elapsed="0.000439"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:36.619530" level="INFO">${conn_id} = 20</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:36.619165" elapsed="0.000391"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:56:36.620405" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:56:36.620481" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:56:36.620125" elapsed="0.000380"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:36.620637" elapsed="0.000320"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:56:36.621764" level="INFO">Logging into '10.30.170.200:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:56:36.937300" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-173-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:56:34 UTC 2026

  System load:  1.21               Processes:             122
  Usage of /:   11.1% of 77.35GB   Users logged in:       0
  Memory usage: 8%                 IPv4 address for ens3: 10.30.170.200
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

10 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:56:36 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-0-builder-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:56:36.621447" elapsed="0.316095"/>
</kw>
<msg time="2026-05-25T01:56:36.937693" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:36.621114" elapsed="0.316718"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:56:36.619746" elapsed="0.318464"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:56:36.939029" level="INFO">Executing command 'ps -elf | grep -v grep | grep java.*karaf | awk '{print $4}''.</msg>
<msg time="2026-05-25T01:56:36.961851" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:56:36.962136" level="INFO">${stdout} = 4288</msg>
<msg time="2026-05-25T01:56:36.962205" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:56:36.938591" elapsed="0.023648"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:36.962499" elapsed="0.000390"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:36.963581" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:36.963132" elapsed="0.000512"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:36.963951" elapsed="0.000028"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:36.963753" elapsed="0.000276"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:36.963721" elapsed="0.000340"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:56:36.964321" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-05-25T01:56:36.964165" elapsed="0.000242"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:36.964140" elapsed="0.000301"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:36.964495" elapsed="0.000022"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:36.967773" elapsed="0.000465"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:36.968412" elapsed="0.000231"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:36.968816" elapsed="0.000149"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:56:36.964941" elapsed="0.004105"/>
</kw>
<msg time="2026-05-25T01:56:36.969241" level="INFO">${output} = 4288</msg>
<var>${output}</var>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>user=${user}</arg>
<arg>password=${password}</arg>
<arg>prompt=${prompt}</arg>
<arg>prompt_timeout=${prompt_timeout}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:56:36.617091" elapsed="0.352187"/>
</kw>
<kw name="Fetch From Left" owner="String">
<msg time="2026-05-25T01:56:36.969791" level="INFO">${pid} = 4288</msg>
<var>${pid}</var>
<arg>${output}</arg>
<arg>\r</arg>
<doc>Returns contents of the ``string`` before the first occurrence of ``marker``.</doc>
<status status="PASS" start="2026-05-25T01:56:36.969498" elapsed="0.000330"/>
</kw>
<return>
<value>${pid}</value>
<status status="PASS" start="2026-05-25T01:56:36.969897" elapsed="0.000043"/>
</return>
<msg time="2026-05-25T01:56:36.970176" level="INFO">${output} = 4288</msg>
<var>${output}</var>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>java.*karaf</arg>
<arg>${ODL_SYSTEM_USER}</arg>
<doc>Uses ps to find a process that matches the supplied regex. Returns the PID of that process
The ${regex_string_to_match_on} should produce a unique process otherwise the PID returned may not be
the expected PID</doc>
<status status="PASS" start="2026-05-25T01:56:36.614477" elapsed="0.355735"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:36.970766" level="INFO">4288</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:36.970410" elapsed="0.000427"/>
</kw>
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:36.974456" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:36.974133" elapsed="0.000405"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:36.974106" elapsed="0.000466"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:36.974956" level="INFO">index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:56:36.975120" level="INFO">${current_ssh_connection} = index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:56:36.974749" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:36.975872" level="INFO">Attempting to execute command "netstat -na | grep 6633" on remote system "10.30.170.200" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:36.975332" elapsed="0.000604"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:36.976647" level="INFO">${conn_id} = 22</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:36.976140" elapsed="0.000546"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:56:36.977875" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:56:36.977994" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:56:36.977481" elapsed="0.000545"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:36.978319" elapsed="0.000474"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:56:36.980003" level="INFO">Logging into '10.30.170.200:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:56:37.294552" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-173-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:56:34 UTC 2026

  System load:  1.21               Processes:             122
  Usage of /:   11.1% of 77.35GB   Users logged in:       0
  Memory usage: 8%                 IPv4 address for ens3: 10.30.170.200
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

10 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:56:36 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-0-builder-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:56:36.979513" elapsed="0.315179"/>
</kw>
<msg time="2026-05-25T01:56:37.294775" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:36.978994" elapsed="0.315859"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:56:36.976955" elapsed="0.318010"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:56:37.295423" level="INFO">Executing command 'netstat -na | grep 6633'.</msg>
<msg time="2026-05-25T01:56:37.307429" level="INFO">Command exited with return code 1.</msg>
<msg time="2026-05-25T01:56:37.307582" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:56:37.307645" level="INFO">${stderr} = bash: line 1: netstat: command not found</msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:56:37.295187" elapsed="0.012490"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:37.307867" elapsed="0.000313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:37.308787" level="INFO">bash: line 1: netstat: command not found</msg>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:37.308393" elapsed="0.000458"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:37.309174" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:37.308961" elapsed="0.000283"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:37.308929" elapsed="0.000347"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:56:37.309498" elapsed="0.000036"/>
</return>
<status status="PASS" start="2026-05-25T01:56:37.309350" elapsed="0.000230"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:37.309329" elapsed="0.000285"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:37.309661" elapsed="0.000020"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:37.313932" elapsed="0.000743"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:37.314989" elapsed="0.000375"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:37.315634" elapsed="0.000219"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:56:37.310118" elapsed="0.005853"/>
</kw>
<msg time="2026-05-25T01:56:37.316274" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>netstat -na | grep 6633</arg>
<arg>${ODL_SYSTEM_USER}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:56:36.971318" elapsed="0.345014"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:37.317242" level="INFO"/>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:37.316652" elapsed="0.000683"/>
</kw>
<doc>Will display relevant details of the test environement to help aid debugging efforts if
needed in the future.</doc>
<status status="PASS" start="2026-05-25T01:56:36.611173" elapsed="0.706292"/>
</kw>
<kw name="Get Process ID Based On Regex On Remote System" owner="Utils">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:37.325924" level="INFO">${cmd} = ps -elf | grep -v grep | grep java.*karaf | awk '{print $4}'</msg>
<var>${cmd}</var>
<arg>ps -elf | grep -v grep | grep ${regex_string_to_match_on} | awk '{print $4}'</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:56:37.325603" elapsed="0.000348"/>
</kw>
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:37.327120" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:37.326868" elapsed="0.000311"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:37.326849" elapsed="0.000354"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:37.327458" level="INFO">index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:56:37.327624" level="INFO">${current_ssh_connection} = index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:56:37.327322" elapsed="0.000333"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:37.328185" level="INFO">Attempting to execute command "ps -elf | grep -v grep | grep java.*karaf | awk '{print $4}'" on remote system "10.30.170.200" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:37.327784" elapsed="0.000449"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:37.328731" level="INFO">${conn_id} = 24</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:37.328364" elapsed="0.000393"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:56:37.329605" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:56:37.329681" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:56:37.329330" elapsed="0.000389"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:37.329851" elapsed="0.000339"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:56:37.331000" level="INFO">Logging into '10.30.170.200:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:56:37.645245" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-173-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:56:34 UTC 2026

  System load:  1.21               Processes:             122
  Usage of /:   11.1% of 77.35GB   Users logged in:       0
  Memory usage: 8%                 IPv4 address for ens3: 10.30.170.200
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

10 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:56:37 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-0-builder-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:56:37.330688" elapsed="0.314648"/>
</kw>
<msg time="2026-05-25T01:56:37.645398" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:37.330334" elapsed="0.315131"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:56:37.328947" elapsed="0.316609"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:56:37.645905" level="INFO">Executing command 'ps -elf | grep -v grep | grep java.*karaf | awk '{print $4}''.</msg>
<msg time="2026-05-25T01:56:37.668205" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:56:37.668440" level="INFO">${stdout} = 4288</msg>
<msg time="2026-05-25T01:56:37.668537" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:56:37.645716" elapsed="0.022872"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:37.668889" elapsed="0.000470"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:37.670314" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:37.669696" elapsed="0.000712"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:37.670844" elapsed="0.000036"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:37.670573" elapsed="0.000375"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:37.670524" elapsed="0.000475"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:56:37.671384" elapsed="0.000058"/>
</return>
<status status="PASS" start="2026-05-25T01:56:37.671149" elapsed="0.000367"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:37.671112" elapsed="0.000457"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:37.671643" elapsed="0.000030"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:37.675486" elapsed="0.000440"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:37.676188" elapsed="0.000212"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:37.676566" elapsed="0.000133"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:56:37.672280" elapsed="0.004490"/>
</kw>
<msg time="2026-05-25T01:56:37.676934" level="INFO">${output} = 4288</msg>
<var>${output}</var>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>user=${user}</arg>
<arg>password=${password}</arg>
<arg>prompt=${prompt}</arg>
<arg>prompt_timeout=${prompt_timeout}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:56:37.326281" elapsed="0.350687"/>
</kw>
<kw name="Fetch From Left" owner="String">
<msg time="2026-05-25T01:56:37.677584" level="INFO">${pid} = 4288</msg>
<var>${pid}</var>
<arg>${output}</arg>
<arg>\r</arg>
<doc>Returns contents of the ``string`` before the first occurrence of ``marker``.</doc>
<status status="PASS" start="2026-05-25T01:56:37.677272" elapsed="0.000348"/>
</kw>
<return>
<value>${pid}</value>
<status status="PASS" start="2026-05-25T01:56:37.677687" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:56:37.677902" level="INFO">${controller_pid} = 4288</msg>
<var>${controller_pid}</var>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>java.*karaf</arg>
<arg>${ODL_SYSTEM_USER}</arg>
<doc>Uses ps to find a process that matches the supplied regex. Returns the PID of that process
The ${regex_string_to_match_on} should produce a unique process otherwise the PID returned may not be
the expected PID</doc>
<status status="PASS" start="2026-05-25T01:56:37.323689" elapsed="0.354247"/>
</kw>
<kw name="Should Match Regexp" owner="BuiltIn">
<arg>${controller_pid}</arg>
<arg>[0-9]+</arg>
<arg>PID was not discovered</arg>
<doc>Fails if ``string`` does not match ``pattern`` as a regular expression.</doc>
<status status="PASS" start="2026-05-25T01:56:37.678161" elapsed="0.000450"/>
</kw>
<kw name="Get Process Thread Count On Remote System" owner="Utils">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:37.682007" level="INFO">${cmd} = ps --no-headers -o nlwp 4288</msg>
<var>${cmd}</var>
<arg>ps --no-headers -o nlwp ${pid}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:56:37.681590" elapsed="0.000453"/>
</kw>
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:37.683684" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:37.683360" elapsed="0.000402"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:37.683334" elapsed="0.000468"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:37.684170" level="INFO">index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:56:37.684313" level="INFO">${current_ssh_connection} = index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:56:37.683964" elapsed="0.000386"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:37.685053" level="INFO">Attempting to execute command "ps --no-headers -o nlwp 4288" on remote system "10.30.170.200" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:37.684520" elapsed="0.000620"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:37.685824" level="INFO">${conn_id} = 26</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:37.685318" elapsed="0.000532"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:56:37.686685" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:56:37.686760" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:56:37.686413" elapsed="0.000371"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:37.686912" elapsed="0.000331"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:56:37.688019" level="INFO">Logging into '10.30.170.200:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:56:38.011962" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-173-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:56:34 UTC 2026

  System load:  1.21               Processes:             122
  Usage of /:   11.1% of 77.35GB   Users logged in:       0
  Memory usage: 8%                 IPv4 address for ens3: 10.30.170.200
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

10 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:56:37 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-0-builder-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:56:37.687709" elapsed="0.324342"/>
</kw>
<msg time="2026-05-25T01:56:38.012128" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:37.687382" elapsed="0.324806"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:56:37.686034" elapsed="0.326240"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:56:38.012621" level="INFO">Executing command 'ps --no-headers -o nlwp 4288'.</msg>
<msg time="2026-05-25T01:56:38.035195" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:56:38.035440" level="INFO">${stdout} =  164</msg>
<msg time="2026-05-25T01:56:38.035538" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:56:38.012431" elapsed="0.023158"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:38.035895" elapsed="0.000465"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:38.037316" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:38.036671" elapsed="0.000738"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:38.037959" elapsed="0.000040"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:38.037657" elapsed="0.000438"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:38.037608" elapsed="0.000542"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:56:38.038504" elapsed="0.000057"/>
</return>
<status status="PASS" start="2026-05-25T01:56:38.038270" elapsed="0.000363"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:38.038237" elapsed="0.000449"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:38.038759" elapsed="0.000030"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:38.043535" elapsed="0.000730"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:38.044570" elapsed="0.000328"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:38.045244" elapsed="0.000223"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:56:38.039402" elapsed="0.006181"/>
</kw>
<msg time="2026-05-25T01:56:38.045812" level="INFO">${output} =  164</msg>
<var>${output}</var>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>user=${user}</arg>
<arg>password=${password}</arg>
<arg>prompt=${prompt}</arg>
<arg>prompt_timeout=${prompt_timeout}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:56:37.682524" elapsed="0.363312"/>
</kw>
<kw name="Fetch From Left" owner="String">
<msg time="2026-05-25T01:56:38.046208" level="INFO">${thread_count} =  164</msg>
<var>${thread_count}</var>
<arg>${output}</arg>
<arg>\r</arg>
<doc>Returns contents of the ``string`` before the first occurrence of ``marker``.</doc>
<status status="PASS" start="2026-05-25T01:56:38.045987" elapsed="0.000247"/>
</kw>
<return>
<value>${thread_count}</value>
<status status="PASS" start="2026-05-25T01:56:38.046281" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:56:38.046433" level="INFO">${starting_thread_count} =  164</msg>
<var>${starting_thread_count}</var>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${controller_pid}</arg>
<arg>${ODL_SYSTEM_USER}</arg>
<doc>Executes the ps command to retrieve the lightweight process (aka thread) count.</doc>
<status status="PASS" start="2026-05-25T01:56:37.678864" elapsed="0.367594"/>
</kw>
<kw name="Repeat Keyword" owner="BuiltIn">
<msg time="2026-05-25T01:56:38.046941" level="INFO">Repeating keyword, round 1/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.047461" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.047091" elapsed="0.002035"/>
</kw>
<msg time="2026-05-25T01:56:38.049193" level="INFO">Repeating keyword, round 2/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.049673" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.049328" elapsed="0.001675"/>
</kw>
<msg time="2026-05-25T01:56:38.051086" level="INFO">Repeating keyword, round 3/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.051607" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.051224" elapsed="0.001410"/>
</kw>
<msg time="2026-05-25T01:56:38.052779" level="INFO">Repeating keyword, round 4/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.053848" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.053034" elapsed="0.001439"/>
</kw>
<msg time="2026-05-25T01:56:38.054725" level="INFO">Repeating keyword, round 5/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.055548" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.054966" elapsed="0.001263"/>
</kw>
<msg time="2026-05-25T01:56:38.056320" level="INFO">Repeating keyword, round 6/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.057116" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.056542" elapsed="0.001341"/>
</kw>
<msg time="2026-05-25T01:56:38.057978" level="INFO">Repeating keyword, round 7/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.058810" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.058250" elapsed="0.002750"/>
</kw>
<msg time="2026-05-25T01:56:38.061130" level="INFO">Repeating keyword, round 8/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.062009" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.061410" elapsed="0.001121"/>
</kw>
<msg time="2026-05-25T01:56:38.062587" level="INFO">Repeating keyword, round 9/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.063107" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.062721" elapsed="0.001644"/>
</kw>
<msg time="2026-05-25T01:56:38.064423" level="INFO">Repeating keyword, round 10/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.064942" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.064558" elapsed="0.000882"/>
</kw>
<msg time="2026-05-25T01:56:38.065590" level="INFO">Repeating keyword, round 11/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.066080" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.065729" elapsed="0.001364"/>
</kw>
<msg time="2026-05-25T01:56:38.067153" level="INFO">Repeating keyword, round 12/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.067878" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.067290" elapsed="0.001154"/>
</kw>
<msg time="2026-05-25T01:56:38.068501" level="INFO">Repeating keyword, round 13/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.068971" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.068634" elapsed="0.001642"/>
</kw>
<msg time="2026-05-25T01:56:38.070337" level="INFO">Repeating keyword, round 14/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.070932" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.070570" elapsed="0.000878"/>
</kw>
<msg time="2026-05-25T01:56:38.071504" level="INFO">Repeating keyword, round 15/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.071973" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.071638" elapsed="0.001586"/>
</kw>
<msg time="2026-05-25T01:56:38.073283" level="INFO">Repeating keyword, round 16/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.073803" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.073420" elapsed="0.000859"/>
</kw>
<msg time="2026-05-25T01:56:38.074336" level="INFO">Repeating keyword, round 17/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.074852" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.074472" elapsed="0.001640"/>
</kw>
<msg time="2026-05-25T01:56:38.076172" level="INFO">Repeating keyword, round 18/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.076687" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.076308" elapsed="0.001793"/>
</kw>
<msg time="2026-05-25T01:56:38.078159" level="INFO">Repeating keyword, round 19/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.078704" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.078360" elapsed="0.000993"/>
</kw>
<msg time="2026-05-25T01:56:38.079412" level="INFO">Repeating keyword, round 20/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.079881" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.079548" elapsed="0.001364"/>
</kw>
<msg time="2026-05-25T01:56:38.080970" level="INFO">Repeating keyword, round 21/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.081553" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.081126" elapsed="0.001163"/>
</kw>
<msg time="2026-05-25T01:56:38.082345" level="INFO">Repeating keyword, round 22/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.082811" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.082478" elapsed="0.001600"/>
</kw>
<msg time="2026-05-25T01:56:38.084150" level="INFO">Repeating keyword, round 23/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.084665" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.084286" elapsed="0.001036"/>
</kw>
<msg time="2026-05-25T01:56:38.085377" level="INFO">Repeating keyword, round 24/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.085884" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.085545" elapsed="0.001635"/>
</kw>
<msg time="2026-05-25T01:56:38.087239" level="INFO">Repeating keyword, round 25/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.087746" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.087372" elapsed="0.000960"/>
</kw>
<msg time="2026-05-25T01:56:38.088387" level="INFO">Repeating keyword, round 26/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.088853" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.088519" elapsed="0.001584"/>
</kw>
<msg time="2026-05-25T01:56:38.090162" level="INFO">Repeating keyword, round 27/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.090672" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.090296" elapsed="0.000849"/>
</kw>
<msg time="2026-05-25T01:56:38.091201" level="INFO">Repeating keyword, round 28/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.091768" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.091334" elapsed="0.001664"/>
</kw>
<msg time="2026-05-25T01:56:38.093057" level="INFO">Repeating keyword, round 29/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.093612" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.093234" elapsed="0.000828"/>
</kw>
<msg time="2026-05-25T01:56:38.094155" level="INFO">Repeating keyword, round 30/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.094656" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.094287" elapsed="0.001657"/>
</kw>
<msg time="2026-05-25T01:56:38.096003" level="INFO">Repeating keyword, round 31/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.096547" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.096167" elapsed="0.000890"/>
</kw>
<msg time="2026-05-25T01:56:38.097164" level="INFO">Repeating keyword, round 32/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.097669" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.097329" elapsed="0.001833"/>
</kw>
<msg time="2026-05-25T01:56:38.099221" level="INFO">Repeating keyword, round 33/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.099730" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.099387" elapsed="0.000812"/>
</kw>
<msg time="2026-05-25T01:56:38.100285" level="INFO">Repeating keyword, round 34/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.100759" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.100427" elapsed="0.001348"/>
</kw>
<msg time="2026-05-25T01:56:38.101833" level="INFO">Repeating keyword, round 35/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.102321" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.101966" elapsed="0.001576"/>
</kw>
<msg time="2026-05-25T01:56:38.103600" level="INFO">Repeating keyword, round 36/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.104142" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.103734" elapsed="0.000861"/>
</kw>
<msg time="2026-05-25T01:56:38.104650" level="INFO">Repeating keyword, round 37/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.105195" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.104781" elapsed="0.001404"/>
</kw>
<msg time="2026-05-25T01:56:38.106244" level="INFO">Repeating keyword, round 38/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.106712" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.106379" elapsed="0.000905"/>
</kw>
<msg time="2026-05-25T01:56:38.107342" level="INFO">Repeating keyword, round 39/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.107848" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.107475" elapsed="0.001540"/>
</kw>
<msg time="2026-05-25T01:56:38.109151" level="INFO">Repeating keyword, round 40/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.109972" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.109381" elapsed="0.001170"/>
</kw>
<msg time="2026-05-25T01:56:38.110631" level="INFO">Repeating keyword, round 41/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.111357" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.110829" elapsed="0.001021"/>
</kw>
<msg time="2026-05-25T01:56:38.111930" level="INFO">Repeating keyword, round 42/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.112695" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.112201" elapsed="0.002302"/>
</kw>
<msg time="2026-05-25T01:56:38.114588" level="INFO">Repeating keyword, round 43/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.115359" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.114835" elapsed="0.001042"/>
</kw>
<msg time="2026-05-25T01:56:38.115960" level="INFO">Repeating keyword, round 44/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.116675" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.116185" elapsed="0.001092"/>
</kw>
<msg time="2026-05-25T01:56:38.117358" level="INFO">Repeating keyword, round 45/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.117953" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.117552" elapsed="0.000788"/>
</kw>
<msg time="2026-05-25T01:56:38.118446" level="INFO">Repeating keyword, round 46/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.118918" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.118581" elapsed="0.001590"/>
</kw>
<msg time="2026-05-25T01:56:38.120231" level="INFO">Repeating keyword, round 47/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.120747" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.120399" elapsed="0.001966"/>
</kw>
<msg time="2026-05-25T01:56:38.122479" level="INFO">Repeating keyword, round 48/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.123255" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.122691" elapsed="0.001085"/>
</kw>
<msg time="2026-05-25T01:56:38.123857" level="INFO">Repeating keyword, round 49/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.124570" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.124052" elapsed="0.002318"/>
</kw>
<msg time="2026-05-25T01:56:38.126452" level="INFO">Repeating keyword, round 50/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.127181" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.126638" elapsed="0.001114"/>
</kw>
<msg time="2026-05-25T01:56:38.127842" level="INFO">Repeating keyword, round 51/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.128513" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.128026" elapsed="0.002210"/>
</kw>
<msg time="2026-05-25T01:56:38.130317" level="INFO">Repeating keyword, round 52/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.131039" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.130570" elapsed="0.001073"/>
</kw>
<msg time="2026-05-25T01:56:38.131719" level="INFO">Repeating keyword, round 53/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.132395" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.131906" elapsed="0.002354"/>
</kw>
<msg time="2026-05-25T01:56:38.134340" level="INFO">Repeating keyword, round 54/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.135050" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.134565" elapsed="0.001974"/>
</kw>
<msg time="2026-05-25T01:56:38.136596" level="INFO">Repeating keyword, round 55/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.137138" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.136731" elapsed="0.000863"/>
</kw>
<msg time="2026-05-25T01:56:38.137647" level="INFO">Repeating keyword, round 56/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.138181" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.137806" elapsed="0.001577"/>
</kw>
<msg time="2026-05-25T01:56:38.139441" level="INFO">Repeating keyword, round 57/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.140057" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.139605" elapsed="0.001838"/>
</kw>
<msg time="2026-05-25T01:56:38.141502" level="INFO">Repeating keyword, round 58/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.142064" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.141636" elapsed="0.001060"/>
</kw>
<msg time="2026-05-25T01:56:38.142753" level="INFO">Repeating keyword, round 59/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.143238" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.142886" elapsed="0.001570"/>
</kw>
<msg time="2026-05-25T01:56:38.144515" level="INFO">Repeating keyword, round 60/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.145138" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.144650" elapsed="0.001946"/>
</kw>
<msg time="2026-05-25T01:56:38.146654" level="INFO">Repeating keyword, round 61/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.147184" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.146789" elapsed="0.000963"/>
</kw>
<msg time="2026-05-25T01:56:38.147835" level="INFO">Repeating keyword, round 62/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.148328" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.147975" elapsed="0.001581"/>
</kw>
<msg time="2026-05-25T01:56:38.149614" level="INFO">Repeating keyword, round 63/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.150199" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.149747" elapsed="0.001049"/>
</kw>
<msg time="2026-05-25T01:56:38.150899" level="INFO">Repeating keyword, round 64/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.151419" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.151034" elapsed="0.001178"/>
</kw>
<msg time="2026-05-25T01:56:38.152299" level="INFO">Repeating keyword, round 65/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.153060" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.152555" elapsed="0.002416"/>
</kw>
<msg time="2026-05-25T01:56:38.155053" level="INFO">Repeating keyword, round 66/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.155802" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.155333" elapsed="0.001065"/>
</kw>
<msg time="2026-05-25T01:56:38.156477" level="INFO">Repeating keyword, round 67/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.157196" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.156663" elapsed="0.001092"/>
</kw>
<msg time="2026-05-25T01:56:38.157836" level="INFO">Repeating keyword, round 68/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.158513" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.158023" elapsed="0.002243"/>
</kw>
<msg time="2026-05-25T01:56:38.160347" level="INFO">Repeating keyword, round 69/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.161063" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.160575" elapsed="0.001140"/>
</kw>
<msg time="2026-05-25T01:56:38.161792" level="INFO">Repeating keyword, round 70/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.162281" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.161930" elapsed="0.001587"/>
</kw>
<msg time="2026-05-25T01:56:38.163574" level="INFO">Repeating keyword, round 71/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.164096" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.163707" elapsed="0.000854"/>
</kw>
<msg time="2026-05-25T01:56:38.164615" level="INFO">Repeating keyword, round 72/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.165151" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.164785" elapsed="0.001640"/>
</kw>
<msg time="2026-05-25T01:56:38.166483" level="INFO">Repeating keyword, round 73/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.166995" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.166617" elapsed="0.000927"/>
</kw>
<msg time="2026-05-25T01:56:38.167600" level="INFO">Repeating keyword, round 74/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.168117" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.167732" elapsed="0.001732"/>
</kw>
<msg time="2026-05-25T01:56:38.169534" level="INFO">Repeating keyword, round 75/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.170055" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.169670" elapsed="0.000871"/>
</kw>
<msg time="2026-05-25T01:56:38.170596" level="INFO">Repeating keyword, round 76/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.171113" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.170727" elapsed="0.001615"/>
</kw>
<msg time="2026-05-25T01:56:38.172399" level="INFO">Repeating keyword, round 77/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.172914" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.172532" elapsed="0.000926"/>
</kw>
<msg time="2026-05-25T01:56:38.173520" level="INFO">Repeating keyword, round 78/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.173987" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.173657" elapsed="0.001589"/>
</kw>
<msg time="2026-05-25T01:56:38.175303" level="INFO">Repeating keyword, round 79/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.175812" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.175434" elapsed="0.001801"/>
</kw>
<msg time="2026-05-25T01:56:38.177293" level="INFO">Repeating keyword, round 80/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.177912" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.177425" elapsed="0.000971"/>
</kw>
<msg time="2026-05-25T01:56:38.178452" level="INFO">Repeating keyword, round 81/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.178918" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.178583" elapsed="0.001656"/>
</kw>
<msg time="2026-05-25T01:56:38.180297" level="INFO">Repeating keyword, round 82/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.180810" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.180432" elapsed="0.000899"/>
</kw>
<msg time="2026-05-25T01:56:38.181394" level="INFO">Repeating keyword, round 83/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.181860" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.181525" elapsed="0.001586"/>
</kw>
<msg time="2026-05-25T01:56:38.183169" level="INFO">Repeating keyword, round 84/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.183676" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.183302" elapsed="0.000899"/>
</kw>
<msg time="2026-05-25T01:56:38.184271" level="INFO">Repeating keyword, round 85/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.184736" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.184405" elapsed="0.001611"/>
</kw>
<msg time="2026-05-25T01:56:38.186092" level="INFO">Repeating keyword, round 86/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.186602" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.186228" elapsed="0.000943"/>
</kw>
<msg time="2026-05-25T01:56:38.187228" level="INFO">Repeating keyword, round 87/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.187771" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.187364" elapsed="0.001668"/>
</kw>
<msg time="2026-05-25T01:56:38.189135" level="INFO">Repeating keyword, round 88/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.189673" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.189275" elapsed="0.000891"/>
</kw>
<msg time="2026-05-25T01:56:38.190222" level="INFO">Repeating keyword, round 89/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.190725" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.190391" elapsed="0.001614"/>
</kw>
<msg time="2026-05-25T01:56:38.192095" level="INFO">Repeating keyword, round 90/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.192602" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.192267" elapsed="0.000879"/>
</kw>
<msg time="2026-05-25T01:56:38.193202" level="INFO">Repeating keyword, round 91/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.193676" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.193339" elapsed="0.001559"/>
</kw>
<msg time="2026-05-25T01:56:38.194957" level="INFO">Repeating keyword, round 92/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.195490" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.195146" elapsed="0.000862"/>
</kw>
<msg time="2026-05-25T01:56:38.196096" level="INFO">Repeating keyword, round 93/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.196569" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.196235" elapsed="0.000938"/>
</kw>
<msg time="2026-05-25T01:56:38.197230" level="INFO">Repeating keyword, round 94/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.197695" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.197363" elapsed="0.001267"/>
</kw>
<msg time="2026-05-25T01:56:38.198687" level="INFO">Repeating keyword, round 95/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.199318" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.198819" elapsed="0.001057"/>
</kw>
<msg time="2026-05-25T01:56:38.199933" level="INFO">Repeating keyword, round 96/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.200419" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.200084" elapsed="0.001091"/>
</kw>
<msg time="2026-05-25T01:56:38.201236" level="INFO">Repeating keyword, round 97/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.201700" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.201368" elapsed="0.001119"/>
</kw>
<msg time="2026-05-25T01:56:38.202544" level="INFO">Repeating keyword, round 98/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.203111" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.202676" elapsed="0.000981"/>
</kw>
<msg time="2026-05-25T01:56:38.203718" level="INFO">Repeating keyword, round 99/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.204268" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.203903" elapsed="0.001634"/>
</kw>
<msg time="2026-05-25T01:56:38.205595" level="INFO">Repeating keyword, round 100/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.206121" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.205729" elapsed="0.000873"/>
</kw>
<msg time="2026-05-25T01:56:38.206657" level="INFO">Repeating keyword, round 101/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.207188" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.206798" elapsed="0.001621"/>
</kw>
<msg time="2026-05-25T01:56:38.208477" level="INFO">Repeating keyword, round 102/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.208984" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.208610" elapsed="0.000987"/>
</kw>
<msg time="2026-05-25T01:56:38.209664" level="INFO">Repeating keyword, round 103/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.211793" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.209803" elapsed="0.002560"/>
</kw>
<msg time="2026-05-25T01:56:38.212421" level="INFO">Repeating keyword, round 104/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.212899" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.212560" elapsed="0.001591"/>
</kw>
<msg time="2026-05-25T01:56:38.214210" level="INFO">Repeating keyword, round 105/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.214726" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.214347" elapsed="0.000996"/>
</kw>
<msg time="2026-05-25T01:56:38.215401" level="INFO">Repeating keyword, round 106/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.215874" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.215536" elapsed="0.001621"/>
</kw>
<msg time="2026-05-25T01:56:38.217216" level="INFO">Repeating keyword, round 107/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.217731" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.217350" elapsed="0.000879"/>
</kw>
<msg time="2026-05-25T01:56:38.218314" level="INFO">Repeating keyword, round 108/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.218790" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.218458" elapsed="0.001576"/>
</kw>
<msg time="2026-05-25T01:56:38.220126" level="INFO">Repeating keyword, round 109/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.220641" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.220300" elapsed="0.000852"/>
</kw>
<msg time="2026-05-25T01:56:38.221208" level="INFO">Repeating keyword, round 110/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.221676" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.221342" elapsed="0.001551"/>
</kw>
<msg time="2026-05-25T01:56:38.222951" level="INFO">Repeating keyword, round 111/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.223480" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.223131" elapsed="0.000843"/>
</kw>
<msg time="2026-05-25T01:56:38.224031" level="INFO">Repeating keyword, round 112/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.224564" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.224186" elapsed="0.001736"/>
</kw>
<msg time="2026-05-25T01:56:38.225980" level="INFO">Repeating keyword, round 113/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.226553" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.226134" elapsed="0.000907"/>
</kw>
<msg time="2026-05-25T01:56:38.227132" level="INFO">Repeating keyword, round 114/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.227635" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.227300" elapsed="0.001557"/>
</kw>
<msg time="2026-05-25T01:56:38.228916" level="INFO">Repeating keyword, round 115/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.229482" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.229100" elapsed="0.000861"/>
</kw>
<msg time="2026-05-25T01:56:38.230015" level="INFO">Repeating keyword, round 116/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.230532" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.230197" elapsed="0.001560"/>
</kw>
<msg time="2026-05-25T01:56:38.231867" level="INFO">Repeating keyword, round 117/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.232400" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.232042" elapsed="0.000832"/>
</kw>
<msg time="2026-05-25T01:56:38.232930" level="INFO">Repeating keyword, round 118/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.233482" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.233145" elapsed="0.001565"/>
</kw>
<msg time="2026-05-25T01:56:38.234771" level="INFO">Repeating keyword, round 119/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.235332" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.234909" elapsed="0.000913"/>
</kw>
<msg time="2026-05-25T01:56:38.235908" level="INFO">Repeating keyword, round 120/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.236462" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.236052" elapsed="0.001720"/>
</kw>
<msg time="2026-05-25T01:56:38.237830" level="INFO">Repeating keyword, round 121/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.238439" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.237967" elapsed="0.002064"/>
</kw>
<msg time="2026-05-25T01:56:38.240125" level="INFO">Repeating keyword, round 122/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.240776" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.240357" elapsed="0.000985"/>
</kw>
<msg time="2026-05-25T01:56:38.241403" level="INFO">Repeating keyword, round 123/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.241920" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.241560" elapsed="0.001624"/>
</kw>
<msg time="2026-05-25T01:56:38.243243" level="INFO">Repeating keyword, round 124/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.243762" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.243381" elapsed="0.000951"/>
</kw>
<msg time="2026-05-25T01:56:38.244391" level="INFO">Repeating keyword, round 125/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.244865" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.244527" elapsed="0.001379"/>
</kw>
<msg time="2026-05-25T01:56:38.245964" level="INFO">Repeating keyword, round 126/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.296216" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.246117" elapsed="0.051099"/>
</kw>
<msg time="2026-05-25T01:56:38.297292" level="INFO">Repeating keyword, round 127/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.297893" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.297479" elapsed="0.001775"/>
</kw>
<msg time="2026-05-25T01:56:38.299316" level="INFO">Repeating keyword, round 128/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.299845" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.299456" elapsed="0.001030"/>
</kw>
<msg time="2026-05-25T01:56:38.300542" level="INFO">Repeating keyword, round 129/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.301093" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.300675" elapsed="0.001682"/>
</kw>
<msg time="2026-05-25T01:56:38.302415" level="INFO">Repeating keyword, round 130/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.302925" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.302547" elapsed="0.000888"/>
</kw>
<msg time="2026-05-25T01:56:38.303492" level="INFO">Repeating keyword, round 131/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.303996" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.303625" elapsed="0.001672"/>
</kw>
<msg time="2026-05-25T01:56:38.305360" level="INFO">Repeating keyword, round 132/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.305870" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.305495" elapsed="0.001043"/>
</kw>
<msg time="2026-05-25T01:56:38.306597" level="INFO">Repeating keyword, round 133/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.307121" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.306765" elapsed="0.001421"/>
</kw>
<msg time="2026-05-25T01:56:38.308243" level="INFO">Repeating keyword, round 134/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.308710" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.308377" elapsed="0.001799"/>
</kw>
<msg time="2026-05-25T01:56:38.310234" level="INFO">Repeating keyword, round 135/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.310712" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.310372" elapsed="0.000884"/>
</kw>
<msg time="2026-05-25T01:56:38.311315" level="INFO">Repeating keyword, round 136/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.311827" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.311448" elapsed="0.001737"/>
</kw>
<msg time="2026-05-25T01:56:38.313244" level="INFO">Repeating keyword, round 137/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.313757" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.313381" elapsed="0.000914"/>
</kw>
<msg time="2026-05-25T01:56:38.314358" level="INFO">Repeating keyword, round 138/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.314825" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.314491" elapsed="0.001603"/>
</kw>
<msg time="2026-05-25T01:56:38.316155" level="INFO">Repeating keyword, round 139/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.316663" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.316327" elapsed="0.000928"/>
</kw>
<msg time="2026-05-25T01:56:38.317313" level="INFO">Repeating keyword, round 140/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.317815" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.317481" elapsed="0.001612"/>
</kw>
<msg time="2026-05-25T01:56:38.319154" level="INFO">Repeating keyword, round 141/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.319705" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.319288" elapsed="0.000933"/>
</kw>
<msg time="2026-05-25T01:56:38.320333" level="INFO">Repeating keyword, round 142/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.320809" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.320470" elapsed="0.001592"/>
</kw>
<msg time="2026-05-25T01:56:38.322134" level="INFO">Repeating keyword, round 143/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.322646" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.322300" elapsed="0.000845"/>
</kw>
<msg time="2026-05-25T01:56:38.323202" level="INFO">Repeating keyword, round 144/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.323697" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.323367" elapsed="0.001560"/>
</kw>
<msg time="2026-05-25T01:56:38.325004" level="INFO">Repeating keyword, round 145/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.325546" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.325210" elapsed="0.000955"/>
</kw>
<msg time="2026-05-25T01:56:38.326220" level="INFO">Repeating keyword, round 146/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.326683" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.326352" elapsed="0.001582"/>
</kw>
<msg time="2026-05-25T01:56:38.327991" level="INFO">Repeating keyword, round 147/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.328520" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.328144" elapsed="0.000886"/>
</kw>
<msg time="2026-05-25T01:56:38.329118" level="INFO">Repeating keyword, round 148/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.329626" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.329255" elapsed="0.001662"/>
</kw>
<msg time="2026-05-25T01:56:38.330974" level="INFO">Repeating keyword, round 149/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.331513" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.331140" elapsed="0.000862"/>
</kw>
<msg time="2026-05-25T01:56:38.332056" level="INFO">Repeating keyword, round 150/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.332569" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.332205" elapsed="0.001624"/>
</kw>
<msg time="2026-05-25T01:56:38.333886" level="INFO">Repeating keyword, round 151/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.334414" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.334019" elapsed="0.000894"/>
</kw>
<msg time="2026-05-25T01:56:38.334972" level="INFO">Repeating keyword, round 152/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.335556" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.335182" elapsed="0.001622"/>
</kw>
<msg time="2026-05-25T01:56:38.336862" level="INFO">Repeating keyword, round 153/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.337425" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.337015" elapsed="0.000910"/>
</kw>
<msg time="2026-05-25T01:56:38.338008" level="INFO">Repeating keyword, round 154/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.338498" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.338166" elapsed="0.001781"/>
</kw>
<msg time="2026-05-25T01:56:38.340008" level="INFO">Repeating keyword, round 155/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.340570" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.340190" elapsed="0.000932"/>
</kw>
<msg time="2026-05-25T01:56:38.341179" level="INFO">Repeating keyword, round 156/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.341644" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.341312" elapsed="0.001734"/>
</kw>
<msg time="2026-05-25T01:56:38.343150" level="INFO">Repeating keyword, round 157/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.343676" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.343295" elapsed="0.001825"/>
</kw>
<msg time="2026-05-25T01:56:38.345187" level="INFO">Repeating keyword, round 158/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.345709" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.345322" elapsed="0.000922"/>
</kw>
<msg time="2026-05-25T01:56:38.346336" level="INFO">Repeating keyword, round 159/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.346811" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.346480" elapsed="0.001227"/>
</kw>
<msg time="2026-05-25T01:56:38.347764" level="INFO">Repeating keyword, round 160/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.348246" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.347895" elapsed="0.001619"/>
</kw>
<msg time="2026-05-25T01:56:38.349572" level="INFO">Repeating keyword, round 161/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.350098" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.349705" elapsed="0.000899"/>
</kw>
<msg time="2026-05-25T01:56:38.350688" level="INFO">Repeating keyword, round 162/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.351175" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.350828" elapsed="0.001574"/>
</kw>
<msg time="2026-05-25T01:56:38.352461" level="INFO">Repeating keyword, round 163/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.352999" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.352594" elapsed="0.000951"/>
</kw>
<msg time="2026-05-25T01:56:38.353601" level="INFO">Repeating keyword, round 164/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.354120" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.353734" elapsed="0.001651"/>
</kw>
<msg time="2026-05-25T01:56:38.355442" level="INFO">Repeating keyword, round 165/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.355958" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.355575" elapsed="0.000894"/>
</kw>
<msg time="2026-05-25T01:56:38.356524" level="INFO">Repeating keyword, round 166/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.357053" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.356656" elapsed="0.001648"/>
</kw>
<msg time="2026-05-25T01:56:38.358362" level="INFO">Repeating keyword, round 167/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.358878" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.358496" elapsed="0.001012"/>
</kw>
<msg time="2026-05-25T01:56:38.359566" level="INFO">Repeating keyword, round 168/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.360029" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.359698" elapsed="0.001625"/>
</kw>
<msg time="2026-05-25T01:56:38.361381" level="INFO">Repeating keyword, round 169/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.361895" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.361514" elapsed="0.000915"/>
</kw>
<msg time="2026-05-25T01:56:38.362531" level="INFO">Repeating keyword, round 170/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.362997" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.362665" elapsed="0.001615"/>
</kw>
<msg time="2026-05-25T01:56:38.364339" level="INFO">Repeating keyword, round 171/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.364853" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.364475" elapsed="0.001767"/>
</kw>
<msg time="2026-05-25T01:56:38.366301" level="INFO">Repeating keyword, round 172/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.366809" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.366435" elapsed="0.000916"/>
</kw>
<msg time="2026-05-25T01:56:38.367437" level="INFO">Repeating keyword, round 173/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.367907" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.367578" elapsed="0.001627"/>
</kw>
<msg time="2026-05-25T01:56:38.369263" level="INFO">Repeating keyword, round 174/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.369769" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.369396" elapsed="0.001648"/>
</kw>
<msg time="2026-05-25T01:56:38.371117" level="INFO">Repeating keyword, round 175/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.371627" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.371253" elapsed="0.000903"/>
</kw>
<msg time="2026-05-25T01:56:38.372213" level="INFO">Repeating keyword, round 176/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.372712" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.372380" elapsed="0.001603"/>
</kw>
<msg time="2026-05-25T01:56:38.374042" level="INFO">Repeating keyword, round 177/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.374583" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.374207" elapsed="0.001654"/>
</kw>
<msg time="2026-05-25T01:56:38.375920" level="INFO">Repeating keyword, round 178/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.376464" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.376055" elapsed="0.000954"/>
</kw>
<msg time="2026-05-25T01:56:38.377083" level="INFO">Repeating keyword, round 179/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.377592" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.377247" elapsed="0.001644"/>
</kw>
<msg time="2026-05-25T01:56:38.378949" level="INFO">Repeating keyword, round 180/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.379490" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.379113" elapsed="0.000895"/>
</kw>
<msg time="2026-05-25T01:56:38.380064" level="INFO">Repeating keyword, round 181/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.380559" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.380228" elapsed="0.001601"/>
</kw>
<msg time="2026-05-25T01:56:38.381888" level="INFO">Repeating keyword, round 182/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.382424" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.382023" elapsed="0.001821"/>
</kw>
<msg time="2026-05-25T01:56:38.383901" level="INFO">Repeating keyword, round 183/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.384429" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.384035" elapsed="0.000942"/>
</kw>
<msg time="2026-05-25T01:56:38.385041" level="INFO">Repeating keyword, round 184/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.385561" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.385224" elapsed="0.001593"/>
</kw>
<msg time="2026-05-25T01:56:38.386874" level="INFO">Repeating keyword, round 185/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.387422" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.387008" elapsed="0.000970"/>
</kw>
<msg time="2026-05-25T01:56:38.388035" level="INFO">Repeating keyword, round 186/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.388534" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.388203" elapsed="0.000966"/>
</kw>
<msg time="2026-05-25T01:56:38.389226" level="INFO">Repeating keyword, round 187/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.389696" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.389360" elapsed="0.001653"/>
</kw>
<msg time="2026-05-25T01:56:38.391097" level="INFO">Repeating keyword, round 188/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.391611" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.391232" elapsed="0.000992"/>
</kw>
<msg time="2026-05-25T01:56:38.392310" level="INFO">Repeating keyword, round 189/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.392787" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.392452" elapsed="0.001258"/>
</kw>
<msg time="2026-05-25T01:56:38.393767" level="INFO">Repeating keyword, round 190/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.394370" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.393900" elapsed="0.001265"/>
</kw>
<msg time="2026-05-25T01:56:38.395223" level="INFO">Repeating keyword, round 191/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.395689" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.395356" elapsed="0.001070"/>
</kw>
<msg time="2026-05-25T01:56:38.396484" level="INFO">Repeating keyword, round 192/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.397048" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.396617" elapsed="0.001745"/>
</kw>
<msg time="2026-05-25T01:56:38.398421" level="INFO">Repeating keyword, round 193/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.398939" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.398585" elapsed="0.001675"/>
</kw>
<msg time="2026-05-25T01:56:38.400319" level="INFO">Repeating keyword, round 194/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.400829" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.400453" elapsed="0.000960"/>
</kw>
<msg time="2026-05-25T01:56:38.401470" level="INFO">Repeating keyword, round 195/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.401934" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.401603" elapsed="0.001604"/>
</kw>
<msg time="2026-05-25T01:56:38.403266" level="INFO">Repeating keyword, round 196/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.403783" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.403399" elapsed="0.000937"/>
</kw>
<msg time="2026-05-25T01:56:38.404401" level="INFO">Repeating keyword, round 197/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.404866" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.404533" elapsed="0.001652"/>
</kw>
<msg time="2026-05-25T01:56:38.406244" level="INFO">Repeating keyword, round 198/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.406755" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.406410" elapsed="0.000900"/>
</kw>
<msg time="2026-05-25T01:56:38.407364" level="INFO">Repeating keyword, round 199/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.407828" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.407497" elapsed="0.001604"/>
</kw>
<msg time="2026-05-25T01:56:38.409159" level="INFO">Repeating keyword, round 200/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.409671" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.409293" elapsed="0.000899"/>
</kw>
<msg time="2026-05-25T01:56:38.410279" level="INFO">Repeating keyword, round 201/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.410754" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.410421" elapsed="0.001617"/>
</kw>
<msg time="2026-05-25T01:56:38.412113" level="INFO">Repeating keyword, round 202/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.412621" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.412248" elapsed="0.000970"/>
</kw>
<msg time="2026-05-25T01:56:38.413276" level="INFO">Repeating keyword, round 203/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.413742" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.413409" elapsed="0.001581"/>
</kw>
<msg time="2026-05-25T01:56:38.415048" level="INFO">Repeating keyword, round 204/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.415591" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.415217" elapsed="0.000905"/>
</kw>
<msg time="2026-05-25T01:56:38.416207" level="INFO">Repeating keyword, round 205/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.416734" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.416396" elapsed="0.001624"/>
</kw>
<msg time="2026-05-25T01:56:38.418095" level="INFO">Repeating keyword, round 206/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.418607" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.418232" elapsed="0.000924"/>
</kw>
<msg time="2026-05-25T01:56:38.419245" level="INFO">Repeating keyword, round 207/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.419713" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.419381" elapsed="0.001598"/>
</kw>
<msg time="2026-05-25T01:56:38.421041" level="INFO">Repeating keyword, round 208/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.421585" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.421237" elapsed="0.000886"/>
</kw>
<msg time="2026-05-25T01:56:38.422183" level="INFO">Repeating keyword, round 209/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.422649" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.422317" elapsed="0.001604"/>
</kw>
<msg time="2026-05-25T01:56:38.423988" level="INFO">Repeating keyword, round 210/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.424509" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.424173" elapsed="0.000887"/>
</kw>
<msg time="2026-05-25T01:56:38.425133" level="INFO">Repeating keyword, round 211/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.425596" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.425265" elapsed="0.001636"/>
</kw>
<msg time="2026-05-25T01:56:38.426959" level="INFO">Repeating keyword, round 212/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.427489" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.427112" elapsed="0.000912"/>
</kw>
<msg time="2026-05-25T01:56:38.428116" level="INFO">Repeating keyword, round 213/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.428691" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.428251" elapsed="0.001724"/>
</kw>
<msg time="2026-05-25T01:56:38.430033" level="INFO">Repeating keyword, round 214/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.430577" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.430202" elapsed="0.001666"/>
</kw>
<msg time="2026-05-25T01:56:38.431927" level="INFO">Repeating keyword, round 215/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.432455" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.432062" elapsed="0.001304"/>
</kw>
<msg time="2026-05-25T01:56:38.433440" level="INFO">Repeating keyword, round 216/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.433945" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.433594" elapsed="0.001666"/>
</kw>
<msg time="2026-05-25T01:56:38.435317" level="INFO">Repeating keyword, round 217/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.435865" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.435453" elapsed="0.001919"/>
</kw>
<msg time="2026-05-25T01:56:38.437429" level="INFO">Repeating keyword, round 218/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.437938" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.437564" elapsed="0.001690"/>
</kw>
<msg time="2026-05-25T01:56:38.439312" level="INFO">Repeating keyword, round 219/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.439822" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.439446" elapsed="0.001054"/>
</kw>
<msg time="2026-05-25T01:56:38.440557" level="INFO">Repeating keyword, round 220/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.441047" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.440691" elapsed="0.001414"/>
</kw>
<msg time="2026-05-25T01:56:38.442164" level="INFO">Repeating keyword, round 221/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.442673" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.442298" elapsed="0.001975"/>
</kw>
<msg time="2026-05-25T01:56:38.444331" level="INFO">Repeating keyword, round 222/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.445010" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.444467" elapsed="0.001126"/>
</kw>
<msg time="2026-05-25T01:56:38.445745" level="INFO">Repeating keyword, round 223/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.446399" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.445931" elapsed="0.001004"/>
</kw>
<msg time="2026-05-25T01:56:38.447010" level="INFO">Repeating keyword, round 224/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.447682" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.447231" elapsed="0.001880"/>
</kw>
<msg time="2026-05-25T01:56:38.449172" level="INFO">Repeating keyword, round 225/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.449729" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.449335" elapsed="0.001015"/>
</kw>
<msg time="2026-05-25T01:56:38.450412" level="INFO">Repeating keyword, round 226/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.450931" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.450548" elapsed="0.001872"/>
</kw>
<msg time="2026-05-25T01:56:38.452482" level="INFO">Repeating keyword, round 227/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.453108" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.452645" elapsed="0.001044"/>
</kw>
<msg time="2026-05-25T01:56:38.453763" level="INFO">Repeating keyword, round 228/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.454419" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.453946" elapsed="0.001870"/>
</kw>
<msg time="2026-05-25T01:56:38.455879" level="INFO">Repeating keyword, round 229/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.456499" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.456043" elapsed="0.001106"/>
</kw>
<msg time="2026-05-25T01:56:38.457241" level="INFO">Repeating keyword, round 230/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.457970" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.457447" elapsed="0.002452"/>
</kw>
<msg time="2026-05-25T01:56:38.459987" level="INFO">Repeating keyword, round 231/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.460821" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.460279" elapsed="0.003047"/>
</kw>
<msg time="2026-05-25T01:56:38.463453" level="INFO">Repeating keyword, round 232/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.464544" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.463754" elapsed="0.001557"/>
</kw>
<msg time="2026-05-25T01:56:38.465437" level="INFO">Repeating keyword, round 233/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.466764" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.465811" elapsed="0.001903"/>
</kw>
<msg time="2026-05-25T01:56:38.467845" level="INFO">Repeating keyword, round 234/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.468344" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.467987" elapsed="0.001182"/>
</kw>
<msg time="2026-05-25T01:56:38.469228" level="INFO">Repeating keyword, round 235/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.469696" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.469362" elapsed="0.001068"/>
</kw>
<msg time="2026-05-25T01:56:38.470488" level="INFO">Repeating keyword, round 236/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.471174" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.470622" elapsed="0.001846"/>
</kw>
<msg time="2026-05-25T01:56:38.472578" level="INFO">Repeating keyword, round 237/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.473115" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.472712" elapsed="0.001101"/>
</kw>
<msg time="2026-05-25T01:56:38.473871" level="INFO">Repeating keyword, round 238/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.475171" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.474006" elapsed="0.001729"/>
</kw>
<msg time="2026-05-25T01:56:38.475794" level="INFO">Repeating keyword, round 239/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.476319" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.475928" elapsed="0.001700"/>
</kw>
<msg time="2026-05-25T01:56:38.477685" level="INFO">Repeating keyword, round 240/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.478213" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.477818" elapsed="0.001367"/>
</kw>
<msg time="2026-05-25T01:56:38.479244" level="INFO">Repeating keyword, round 241/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.479714" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.479378" elapsed="0.001139"/>
</kw>
<msg time="2026-05-25T01:56:38.480576" level="INFO">Repeating keyword, round 242/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.481165" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.480710" elapsed="0.001019"/>
</kw>
<msg time="2026-05-25T01:56:38.481788" level="INFO">Repeating keyword, round 243/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.482285" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.481922" elapsed="0.001380"/>
</kw>
<msg time="2026-05-25T01:56:38.483361" level="INFO">Repeating keyword, round 244/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.483928" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.483494" elapsed="0.001835"/>
</kw>
<msg time="2026-05-25T01:56:38.485389" level="INFO">Repeating keyword, round 245/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.485900" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.485523" elapsed="0.000952"/>
</kw>
<msg time="2026-05-25T01:56:38.486533" level="INFO">Repeating keyword, round 246/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.486998" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.486667" elapsed="0.001692"/>
</kw>
<msg time="2026-05-25T01:56:38.488418" level="INFO">Repeating keyword, round 247/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.489009" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.488552" elapsed="0.001023"/>
</kw>
<msg time="2026-05-25T01:56:38.489630" level="INFO">Repeating keyword, round 248/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.490110" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.489762" elapsed="0.001620"/>
</kw>
<msg time="2026-05-25T01:56:38.491441" level="INFO">Repeating keyword, round 249/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.491955" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.491575" elapsed="0.001845"/>
</kw>
<msg time="2026-05-25T01:56:38.493479" level="INFO">Repeating keyword, round 250/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.493992" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.493614" elapsed="0.001828"/>
</kw>
<msg time="2026-05-25T01:56:38.495500" level="INFO">Repeating keyword, round 251/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.496028" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.495648" elapsed="0.001845"/>
</kw>
<msg time="2026-05-25T01:56:38.497551" level="INFO">Repeating keyword, round 252/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.498063" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.497685" elapsed="0.000953"/>
</kw>
<msg time="2026-05-25T01:56:38.498695" level="INFO">Repeating keyword, round 253/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.499178" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.498827" elapsed="0.001647"/>
</kw>
<msg time="2026-05-25T01:56:38.500532" level="INFO">Repeating keyword, round 254/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.501060" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.500665" elapsed="0.000965"/>
</kw>
<msg time="2026-05-25T01:56:38.501685" level="INFO">Repeating keyword, round 255/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.502219" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.501843" elapsed="0.001659"/>
</kw>
<msg time="2026-05-25T01:56:38.503559" level="INFO">Repeating keyword, round 256/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.504134" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.503723" elapsed="0.000967"/>
</kw>
<msg time="2026-05-25T01:56:38.504747" level="INFO">Repeating keyword, round 257/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.505270" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.504899" elapsed="0.001659"/>
</kw>
<msg time="2026-05-25T01:56:38.506620" level="INFO">Repeating keyword, round 258/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.507239" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.506806" elapsed="0.001837"/>
</kw>
<msg time="2026-05-25T01:56:38.508703" level="INFO">Repeating keyword, round 259/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.509386" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.508863" elapsed="0.001935"/>
</kw>
<msg time="2026-05-25T01:56:38.510857" level="INFO">Repeating keyword, round 260/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.511393" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.511032" elapsed="0.000911"/>
</kw>
<msg time="2026-05-25T01:56:38.512004" level="INFO">Repeating keyword, round 261/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.512497" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.512161" elapsed="0.001671"/>
</kw>
<msg time="2026-05-25T01:56:38.513893" level="INFO">Repeating keyword, round 262/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.514426" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.514029" elapsed="0.000954"/>
</kw>
<msg time="2026-05-25T01:56:38.515041" level="INFO">Repeating keyword, round 263/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.515589" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.515213" elapsed="0.001706"/>
</kw>
<msg time="2026-05-25T01:56:38.516980" level="INFO">Repeating keyword, round 264/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.517532" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.517152" elapsed="0.000953"/>
</kw>
<msg time="2026-05-25T01:56:38.518163" level="INFO">Repeating keyword, round 265/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.518634" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.518299" elapsed="0.001623"/>
</kw>
<msg time="2026-05-25T01:56:38.519981" level="INFO">Repeating keyword, round 266/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.520519" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.520137" elapsed="0.001809"/>
</kw>
<msg time="2026-05-25T01:56:38.522004" level="INFO">Repeating keyword, round 267/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.522810" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.522462" elapsed="0.000946"/>
</kw>
<msg time="2026-05-25T01:56:38.523468" level="INFO">Repeating keyword, round 268/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.523939" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.523605" elapsed="0.001568"/>
</kw>
<msg time="2026-05-25T01:56:38.525234" level="INFO">Repeating keyword, round 269/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.525707" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.525370" elapsed="0.001643"/>
</kw>
<msg time="2026-05-25T01:56:38.527091" level="INFO">Repeating keyword, round 270/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.527616" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.527235" elapsed="0.001006"/>
</kw>
<msg time="2026-05-25T01:56:38.528298" level="INFO">Repeating keyword, round 271/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.528767" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.528433" elapsed="0.001658"/>
</kw>
<msg time="2026-05-25T01:56:38.530151" level="INFO">Repeating keyword, round 272/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.530723" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.530382" elapsed="0.000944"/>
</kw>
<msg time="2026-05-25T01:56:38.531382" level="INFO">Repeating keyword, round 273/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.531849" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.531517" elapsed="0.001672"/>
</kw>
<msg time="2026-05-25T01:56:38.533248" level="INFO">Repeating keyword, round 274/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.533763" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.533383" elapsed="0.001184"/>
</kw>
<msg time="2026-05-25T01:56:38.534625" level="INFO">Repeating keyword, round 275/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.535118" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.534760" elapsed="0.001658"/>
</kw>
<msg time="2026-05-25T01:56:38.536530" level="INFO">Repeating keyword, round 276/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.537131" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.536684" elapsed="0.001045"/>
</kw>
<msg time="2026-05-25T01:56:38.537786" level="INFO">Repeating keyword, round 277/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.538279" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.537922" elapsed="0.001666"/>
</kw>
<msg time="2026-05-25T01:56:38.539648" level="INFO">Repeating keyword, round 278/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.540181" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.539784" elapsed="0.000971"/>
</kw>
<msg time="2026-05-25T01:56:38.540869" level="INFO">Repeating keyword, round 279/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.541369" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.541012" elapsed="0.001215"/>
</kw>
<msg time="2026-05-25T01:56:38.542409" level="INFO">Repeating keyword, round 280/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.543303" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.542654" elapsed="0.002569"/>
</kw>
<msg time="2026-05-25T01:56:38.545310" level="INFO">Repeating keyword, round 281/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.546064" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.545561" elapsed="0.001176"/>
</kw>
<msg time="2026-05-25T01:56:38.546822" level="INFO">Repeating keyword, round 282/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.547702" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.547020" elapsed="0.001269"/>
</kw>
<msg time="2026-05-25T01:56:38.548373" level="INFO">Repeating keyword, round 283/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.549117" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.548568" elapsed="0.002389"/>
</kw>
<msg time="2026-05-25T01:56:38.551040" level="INFO">Repeating keyword, round 284/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.551787" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.551306" elapsed="0.001193"/>
</kw>
<msg time="2026-05-25T01:56:38.552579" level="INFO">Repeating keyword, round 285/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.553315" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.552769" elapsed="0.001328"/>
</kw>
<msg time="2026-05-25T01:56:38.554175" level="INFO">Repeating keyword, round 286/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.554817" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.554358" elapsed="0.001849"/>
</kw>
<msg time="2026-05-25T01:56:38.556289" level="INFO">Repeating keyword, round 287/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.556980" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.556477" elapsed="0.001320"/>
</kw>
<msg time="2026-05-25T01:56:38.557856" level="INFO">Repeating keyword, round 288/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.558432" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.557991" elapsed="0.001031"/>
</kw>
<msg time="2026-05-25T01:56:38.559108" level="INFO">Repeating keyword, round 289/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.559575" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.559242" elapsed="0.001397"/>
</kw>
<msg time="2026-05-25T01:56:38.560701" level="INFO">Repeating keyword, round 290/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.561245" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.560851" elapsed="0.000966"/>
</kw>
<msg time="2026-05-25T01:56:38.561874" level="INFO">Repeating keyword, round 291/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.562424" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.562043" elapsed="0.001141"/>
</kw>
<msg time="2026-05-25T01:56:38.563242" level="INFO">Repeating keyword, round 292/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.563707" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.563375" elapsed="0.000832"/>
</kw>
<msg time="2026-05-25T01:56:38.564263" level="INFO">Repeating keyword, round 293/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.564728" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.564395" elapsed="0.001737"/>
</kw>
<msg time="2026-05-25T01:56:38.566191" level="INFO">Repeating keyword, round 294/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.566703" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.566325" elapsed="0.000983"/>
</kw>
<msg time="2026-05-25T01:56:38.567366" level="INFO">Repeating keyword, round 295/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.567833" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.567500" elapsed="0.001659"/>
</kw>
<msg time="2026-05-25T01:56:38.569218" level="INFO">Repeating keyword, round 296/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.569727" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.569382" elapsed="0.001009"/>
</kw>
<msg time="2026-05-25T01:56:38.570449" level="INFO">Repeating keyword, round 297/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.570915" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.570583" elapsed="0.001655"/>
</kw>
<msg time="2026-05-25T01:56:38.572297" level="INFO">Repeating keyword, round 298/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.572840" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.572432" elapsed="0.001014"/>
</kw>
<msg time="2026-05-25T01:56:38.573504" level="INFO">Repeating keyword, round 299/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.573970" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.573638" elapsed="0.001684"/>
</kw>
<msg time="2026-05-25T01:56:38.575382" level="INFO">Repeating keyword, round 300/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.575896" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.575516" elapsed="0.001182"/>
</kw>
<msg time="2026-05-25T01:56:38.576756" level="INFO">Repeating keyword, round 301/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.577265" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.576909" elapsed="0.001268"/>
</kw>
<msg time="2026-05-25T01:56:38.578236" level="INFO">Repeating keyword, round 302/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.578704" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.578370" elapsed="0.001004"/>
</kw>
<msg time="2026-05-25T01:56:38.579432" level="INFO">Repeating keyword, round 303/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.579894" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.579566" elapsed="0.001662"/>
</kw>
<msg time="2026-05-25T01:56:38.581288" level="INFO">Repeating keyword, round 304/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.581802" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.581423" elapsed="0.000971"/>
</kw>
<msg time="2026-05-25T01:56:38.582451" level="INFO">Repeating keyword, round 305/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.583034" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.582583" elapsed="0.001774"/>
</kw>
<msg time="2026-05-25T01:56:38.584415" level="INFO">Repeating keyword, round 306/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.584944" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.584548" elapsed="0.001027"/>
</kw>
<msg time="2026-05-25T01:56:38.585634" level="INFO">Repeating keyword, round 307/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.586148" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.585769" elapsed="0.001689"/>
</kw>
<msg time="2026-05-25T01:56:38.587515" level="INFO">Repeating keyword, round 308/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.588025" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.587648" elapsed="0.000973"/>
</kw>
<msg time="2026-05-25T01:56:38.588682" level="INFO">Repeating keyword, round 309/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.589203" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.588838" elapsed="0.001338"/>
</kw>
<msg time="2026-05-25T01:56:38.590233" level="INFO">Repeating keyword, round 310/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.590699" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.590367" elapsed="0.001633"/>
</kw>
<msg time="2026-05-25T01:56:38.592062" level="INFO">Repeating keyword, round 311/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.592650" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.592305" elapsed="0.000979"/>
</kw>
<msg time="2026-05-25T01:56:38.593342" level="INFO">Repeating keyword, round 312/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.593810" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.593477" elapsed="0.001663"/>
</kw>
<msg time="2026-05-25T01:56:38.595198" level="INFO">Repeating keyword, round 313/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.595712" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.595333" elapsed="0.000972"/>
</kw>
<msg time="2026-05-25T01:56:38.596362" level="INFO">Repeating keyword, round 314/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.596847" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.596495" elapsed="0.001651"/>
</kw>
<msg time="2026-05-25T01:56:38.598206" level="INFO">Repeating keyword, round 315/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.598722" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.598340" elapsed="0.001802"/>
</kw>
<msg time="2026-05-25T01:56:38.600200" level="INFO">Repeating keyword, round 316/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.600715" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.600335" elapsed="0.001004"/>
</kw>
<msg time="2026-05-25T01:56:38.601397" level="INFO">Repeating keyword, round 317/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.601861" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.601530" elapsed="0.001680"/>
</kw>
<msg time="2026-05-25T01:56:38.603267" level="INFO">Repeating keyword, round 318/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.603771" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.603400" elapsed="0.001857"/>
</kw>
<msg time="2026-05-25T01:56:38.605314" level="INFO">Repeating keyword, round 319/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.605829" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.605448" elapsed="0.001002"/>
</kw>
<msg time="2026-05-25T01:56:38.606507" level="INFO">Repeating keyword, round 320/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.606977" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.606638" elapsed="0.001672"/>
</kw>
<msg time="2026-05-25T01:56:38.608369" level="INFO">Repeating keyword, round 321/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.608891" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.608534" elapsed="0.002039"/>
</kw>
<msg time="2026-05-25T01:56:38.610633" level="INFO">Repeating keyword, round 322/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.611189" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.610768" elapsed="0.001849"/>
</kw>
<msg time="2026-05-25T01:56:38.612674" level="INFO">Repeating keyword, round 323/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.613260" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.612847" elapsed="0.001846"/>
</kw>
<msg time="2026-05-25T01:56:38.614750" level="INFO">Repeating keyword, round 324/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.615276" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.614883" elapsed="0.000974"/>
</kw>
<msg time="2026-05-25T01:56:38.615914" level="INFO">Repeating keyword, round 325/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.616397" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.616048" elapsed="0.001686"/>
</kw>
<msg time="2026-05-25T01:56:38.617791" level="INFO">Repeating keyword, round 326/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.618330" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.617925" elapsed="0.000991"/>
</kw>
<msg time="2026-05-25T01:56:38.618971" level="INFO">Repeating keyword, round 327/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.619465" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.619134" elapsed="0.001640"/>
</kw>
<msg time="2026-05-25T01:56:38.620831" level="INFO">Repeating keyword, round 328/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.621525" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.620964" elapsed="0.001985"/>
</kw>
<msg time="2026-05-25T01:56:38.623061" level="INFO">Repeating keyword, round 329/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.623602" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.623267" elapsed="0.000919"/>
</kw>
<msg time="2026-05-25T01:56:38.624243" level="INFO">Repeating keyword, round 330/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.624708" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.624378" elapsed="0.001628"/>
</kw>
<msg time="2026-05-25T01:56:38.626095" level="INFO">Repeating keyword, round 331/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.626611" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.626232" elapsed="0.001002"/>
</kw>
<msg time="2026-05-25T01:56:38.627290" level="INFO">Repeating keyword, round 332/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.627752" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.627423" elapsed="0.001624"/>
</kw>
<msg time="2026-05-25T01:56:38.629121" level="INFO">Repeating keyword, round 333/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.629632" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.629255" elapsed="0.001841"/>
</kw>
<msg time="2026-05-25T01:56:38.631156" level="INFO">Repeating keyword, round 334/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.631665" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.631291" elapsed="0.000971"/>
</kw>
<msg time="2026-05-25T01:56:38.632320" level="INFO">Repeating keyword, round 335/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.632799" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.632453" elapsed="0.001662"/>
</kw>
<msg time="2026-05-25T01:56:38.634174" level="INFO">Repeating keyword, round 336/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.634682" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.634307" elapsed="0.002019"/>
</kw>
<msg time="2026-05-25T01:56:38.636385" level="INFO">Repeating keyword, round 337/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.637056" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.636693" elapsed="0.001830"/>
</kw>
<msg time="2026-05-25T01:56:38.638582" level="INFO">Repeating keyword, round 338/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.639129" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.638718" elapsed="0.000980"/>
</kw>
<msg time="2026-05-25T01:56:38.639754" level="INFO">Repeating keyword, round 339/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.640239" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.639887" elapsed="0.001693"/>
</kw>
<msg time="2026-05-25T01:56:38.641639" level="INFO">Repeating keyword, round 340/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.642169" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.641773" elapsed="0.000992"/>
</kw>
<msg time="2026-05-25T01:56:38.642832" level="INFO">Repeating keyword, round 341/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.643332" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.642967" elapsed="0.000913"/>
</kw>
<msg time="2026-05-25T01:56:38.643937" level="INFO">Repeating keyword, round 342/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.644419" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.644087" elapsed="0.001379"/>
</kw>
<msg time="2026-05-25T01:56:38.645524" level="INFO">Repeating keyword, round 343/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.646039" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.645658" elapsed="0.001875"/>
</kw>
<msg time="2026-05-25T01:56:38.647590" level="INFO">Repeating keyword, round 344/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.648116" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.647723" elapsed="0.001838"/>
</kw>
<msg time="2026-05-25T01:56:38.649622" level="INFO">Repeating keyword, round 345/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.650147" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.649794" elapsed="0.000955"/>
</kw>
<msg time="2026-05-25T01:56:38.650804" level="INFO">Repeating keyword, round 346/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.651300" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.650934" elapsed="0.001705"/>
</kw>
<msg time="2026-05-25T01:56:38.652698" level="INFO">Repeating keyword, round 347/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.653246" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.652850" elapsed="0.000971"/>
</kw>
<msg time="2026-05-25T01:56:38.653878" level="INFO">Repeating keyword, round 348/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.654383" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.654011" elapsed="0.001671"/>
</kw>
<msg time="2026-05-25T01:56:38.655740" level="INFO">Repeating keyword, round 349/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.656280" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.655879" elapsed="0.001033"/>
</kw>
<msg time="2026-05-25T01:56:38.656970" level="INFO">Repeating keyword, round 350/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.657452" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.657122" elapsed="0.001654"/>
</kw>
<msg time="2026-05-25T01:56:38.658835" level="INFO">Repeating keyword, round 351/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.659472" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.658999" elapsed="0.001093"/>
</kw>
<msg time="2026-05-25T01:56:38.660151" level="INFO">Repeating keyword, round 352/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.660614" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.660283" elapsed="0.001884"/>
</kw>
<msg time="2026-05-25T01:56:38.662241" level="INFO">Repeating keyword, round 353/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.662761" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.662377" elapsed="0.001004"/>
</kw>
<msg time="2026-05-25T01:56:38.663438" level="INFO">Repeating keyword, round 354/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.663909" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.663571" elapsed="0.001603"/>
</kw>
<msg time="2026-05-25T01:56:38.665232" level="INFO">Repeating keyword, round 355/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.665813" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.665365" elapsed="0.001770"/>
</kw>
<msg time="2026-05-25T01:56:38.667194" level="INFO">Repeating keyword, round 356/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.667701" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.667328" elapsed="0.000999"/>
</kw>
<msg time="2026-05-25T01:56:38.668386" level="INFO">Repeating keyword, round 357/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.668866" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.668520" elapsed="0.001650"/>
</kw>
<msg time="2026-05-25T01:56:38.670227" level="INFO">Repeating keyword, round 358/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.670740" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.670361" elapsed="0.001014"/>
</kw>
<msg time="2026-05-25T01:56:38.671431" level="INFO">Repeating keyword, round 359/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.671896" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.671565" elapsed="0.001687"/>
</kw>
<msg time="2026-05-25T01:56:38.673309" level="INFO">Repeating keyword, round 360/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.673830" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.673441" elapsed="0.001831"/>
</kw>
<msg time="2026-05-25T01:56:38.675330" level="INFO">Repeating keyword, round 361/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.675845" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.675462" elapsed="0.001038"/>
</kw>
<msg time="2026-05-25T01:56:38.676557" level="INFO">Repeating keyword, round 362/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.677092" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.676691" elapsed="0.001732"/>
</kw>
<msg time="2026-05-25T01:56:38.678481" level="INFO">Repeating keyword, round 363/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.679029" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.678616" elapsed="0.001037"/>
</kw>
<msg time="2026-05-25T01:56:38.679709" level="INFO">Repeating keyword, round 364/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.680256" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.679901" elapsed="0.001691"/>
</kw>
<msg time="2026-05-25T01:56:38.681650" level="INFO">Repeating keyword, round 365/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.682198" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.681785" elapsed="0.000999"/>
</kw>
<msg time="2026-05-25T01:56:38.682839" level="INFO">Repeating keyword, round 366/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.683362" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.682972" elapsed="0.001701"/>
</kw>
<msg time="2026-05-25T01:56:38.684770" level="INFO">Repeating keyword, round 367/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.685308" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.684913" elapsed="0.000985"/>
</kw>
<msg time="2026-05-25T01:56:38.685958" level="INFO">Repeating keyword, round 368/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.686445" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.686111" elapsed="0.001640"/>
</kw>
<msg time="2026-05-25T01:56:38.687810" level="INFO">Repeating keyword, round 369/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.688354" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.687944" elapsed="0.001023"/>
</kw>
<msg time="2026-05-25T01:56:38.689026" level="INFO">Repeating keyword, round 370/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.689533" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.689179" elapsed="0.001663"/>
</kw>
<msg time="2026-05-25T01:56:38.690900" level="INFO">Repeating keyword, round 371/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.691430" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.691035" elapsed="0.001135"/>
</kw>
<msg time="2026-05-25T01:56:38.692227" level="INFO">Repeating keyword, round 372/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.692704" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.692361" elapsed="0.001372"/>
</kw>
<msg time="2026-05-25T01:56:38.693790" level="INFO">Repeating keyword, round 373/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.694354" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.693923" elapsed="0.001946"/>
</kw>
<msg time="2026-05-25T01:56:38.695928" level="INFO">Repeating keyword, round 374/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.696574" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.696061" elapsed="0.001165"/>
</kw>
<msg time="2026-05-25T01:56:38.697285" level="INFO">Repeating keyword, round 375/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.697752" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.697418" elapsed="0.001682"/>
</kw>
<msg time="2026-05-25T01:56:38.699160" level="INFO">Repeating keyword, round 376/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.699678" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.699300" elapsed="0.001013"/>
</kw>
<msg time="2026-05-25T01:56:38.700377" level="INFO">Repeating keyword, round 377/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.700860" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.700512" elapsed="0.001668"/>
</kw>
<msg time="2026-05-25T01:56:38.702239" level="INFO">Repeating keyword, round 378/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.702754" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.702372" elapsed="0.000982"/>
</kw>
<msg time="2026-05-25T01:56:38.703411" level="INFO">Repeating keyword, round 379/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.703877" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.703544" elapsed="0.001679"/>
</kw>
<msg time="2026-05-25T01:56:38.705282" level="INFO">Repeating keyword, round 380/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.705793" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.705417" elapsed="0.001874"/>
</kw>
<msg time="2026-05-25T01:56:38.707349" level="INFO">Repeating keyword, round 381/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.707870" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.707488" elapsed="0.001002"/>
</kw>
<msg time="2026-05-25T01:56:38.708600" level="INFO">Repeating keyword, round 382/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.709119" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.708752" elapsed="0.001669"/>
</kw>
<msg time="2026-05-25T01:56:38.710479" level="INFO">Repeating keyword, round 383/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.710986" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.710612" elapsed="0.001023"/>
</kw>
<msg time="2026-05-25T01:56:38.711698" level="INFO">Repeating keyword, round 384/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.712180" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.711830" elapsed="0.001888"/>
</kw>
<msg time="2026-05-25T01:56:38.713778" level="INFO">Repeating keyword, round 385/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.714324" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.713911" elapsed="0.001008"/>
</kw>
<msg time="2026-05-25T01:56:38.714976" level="INFO">Repeating keyword, round 386/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.715465" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.715130" elapsed="0.001832"/>
</kw>
<msg time="2026-05-25T01:56:38.717021" level="INFO">Repeating keyword, round 387/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.717569" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.717191" elapsed="0.001022"/>
</kw>
<msg time="2026-05-25T01:56:38.718271" level="INFO">Repeating keyword, round 388/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.718735" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.718405" elapsed="0.001775"/>
</kw>
<msg time="2026-05-25T01:56:38.720239" level="INFO">Repeating keyword, round 389/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.720790" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.720374" elapsed="0.001161"/>
</kw>
<msg time="2026-05-25T01:56:38.721594" level="INFO">Repeating keyword, round 390/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.722058" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.721728" elapsed="0.001677"/>
</kw>
<msg time="2026-05-25T01:56:38.723463" level="INFO">Repeating keyword, round 391/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.723979" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.723598" elapsed="0.001759"/>
</kw>
<msg time="2026-05-25T01:56:38.725415" level="INFO">Repeating keyword, round 392/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.725882" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.725549" elapsed="0.001769"/>
</kw>
<msg time="2026-05-25T01:56:38.727378" level="INFO">Repeating keyword, round 393/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.727891" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.727513" elapsed="0.000983"/>
</kw>
<msg time="2026-05-25T01:56:38.728557" level="INFO">Repeating keyword, round 394/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.729060" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.728720" elapsed="0.001693"/>
</kw>
<msg time="2026-05-25T01:56:38.730471" level="INFO">Repeating keyword, round 395/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.730985" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.730605" elapsed="0.001842"/>
</kw>
<msg time="2026-05-25T01:56:38.732505" level="INFO">Repeating keyword, round 396/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.733034" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.732639" elapsed="0.001040"/>
</kw>
<msg time="2026-05-25T01:56:38.733734" level="INFO">Repeating keyword, round 397/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.735268" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.733865" elapsed="0.003325"/>
</kw>
<msg time="2026-05-25T01:56:38.737253" level="INFO">Repeating keyword, round 398/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.737790" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.737398" elapsed="0.001179"/>
</kw>
<msg time="2026-05-25T01:56:38.738634" level="INFO">Repeating keyword, round 399/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.739117" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.738767" elapsed="0.001414"/>
</kw>
<msg time="2026-05-25T01:56:38.740239" level="INFO">Repeating keyword, round 400/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.740726" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.740372" elapsed="0.002077"/>
</kw>
<msg time="2026-05-25T01:56:38.742517" level="INFO">Repeating keyword, round 401/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.743180" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.742743" elapsed="0.001088"/>
</kw>
<msg time="2026-05-25T01:56:38.743890" level="INFO">Repeating keyword, round 402/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.744382" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.744024" elapsed="0.001674"/>
</kw>
<msg time="2026-05-25T01:56:38.745758" level="INFO">Repeating keyword, round 403/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.746292" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.745895" elapsed="0.001321"/>
</kw>
<msg time="2026-05-25T01:56:38.747305" level="INFO">Repeating keyword, round 404/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.748013" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.747507" elapsed="0.001171"/>
</kw>
<msg time="2026-05-25T01:56:38.748762" level="INFO">Repeating keyword, round 405/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.749491" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.748966" elapsed="0.002438"/>
</kw>
<msg time="2026-05-25T01:56:38.751491" level="INFO">Repeating keyword, round 406/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.752278" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.751734" elapsed="0.001214"/>
</kw>
<msg time="2026-05-25T01:56:38.753029" level="INFO">Repeating keyword, round 407/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.753739" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.753248" elapsed="0.001173"/>
</kw>
<msg time="2026-05-25T01:56:38.754503" level="INFO">Repeating keyword, round 408/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.755233" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.754697" elapsed="0.002602"/>
</kw>
<msg time="2026-05-25T01:56:38.757382" level="INFO">Repeating keyword, round 409/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.758115" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.757571" elapsed="0.001254"/>
</kw>
<msg time="2026-05-25T01:56:38.758881" level="INFO">Repeating keyword, round 410/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.759368" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.759015" elapsed="0.001206"/>
</kw>
<msg time="2026-05-25T01:56:38.760306" level="INFO">Repeating keyword, round 411/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.761126" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.760578" elapsed="0.001208"/>
</kw>
<msg time="2026-05-25T01:56:38.761868" level="INFO">Repeating keyword, round 412/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.762629" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.762125" elapsed="0.001165"/>
</kw>
<msg time="2026-05-25T01:56:38.763373" level="INFO">Repeating keyword, round 413/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.764098" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.763569" elapsed="0.001181"/>
</kw>
<msg time="2026-05-25T01:56:38.764830" level="INFO">Repeating keyword, round 414/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.765545" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.765025" elapsed="0.001332"/>
</kw>
<msg time="2026-05-25T01:56:38.766440" level="INFO">Repeating keyword, round 415/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.767164" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.766634" elapsed="0.001206"/>
</kw>
<msg time="2026-05-25T01:56:38.767917" level="INFO">Repeating keyword, round 416/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.768589" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.768129" elapsed="0.002339"/>
</kw>
<msg time="2026-05-25T01:56:38.770554" level="INFO">Repeating keyword, round 417/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.771390" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.770860" elapsed="0.001246"/>
</kw>
<msg time="2026-05-25T01:56:38.772185" level="INFO">Repeating keyword, round 418/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.772871" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.772370" elapsed="0.002302"/>
</kw>
<msg time="2026-05-25T01:56:38.774731" level="INFO">Repeating keyword, round 419/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.775260" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.774866" elapsed="0.001281"/>
</kw>
<msg time="2026-05-25T01:56:38.776205" level="INFO">Repeating keyword, round 420/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.776837" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.776338" elapsed="0.001861"/>
</kw>
<msg time="2026-05-25T01:56:38.778261" level="INFO">Repeating keyword, round 421/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.778774" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.778394" elapsed="0.001111"/>
</kw>
<msg time="2026-05-25T01:56:38.779563" level="INFO">Repeating keyword, round 422/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.780029" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.779697" elapsed="0.001402"/>
</kw>
<msg time="2026-05-25T01:56:38.781158" level="INFO">Repeating keyword, round 423/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.781717" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.781292" elapsed="0.001931"/>
</kw>
<msg time="2026-05-25T01:56:38.783280" level="INFO">Repeating keyword, round 424/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.783791" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.783413" elapsed="0.001026"/>
</kw>
<msg time="2026-05-25T01:56:38.784496" level="INFO">Repeating keyword, round 425/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.785006" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.784644" elapsed="0.001709"/>
</kw>
<msg time="2026-05-25T01:56:38.786410" level="INFO">Repeating keyword, round 426/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.786997" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.786617" elapsed="0.001856"/>
</kw>
<msg time="2026-05-25T01:56:38.788532" level="INFO">Repeating keyword, round 427/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.789088" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.788689" elapsed="0.001034"/>
</kw>
<msg time="2026-05-25T01:56:38.789779" level="INFO">Repeating keyword, round 428/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.790286" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.789919" elapsed="0.001692"/>
</kw>
<msg time="2026-05-25T01:56:38.791669" level="INFO">Repeating keyword, round 429/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.792225" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.791809" elapsed="0.001093"/>
</kw>
<msg time="2026-05-25T01:56:38.792958" level="INFO">Repeating keyword, round 430/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.793445" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.793109" elapsed="0.001701"/>
</kw>
<msg time="2026-05-25T01:56:38.794869" level="INFO">Repeating keyword, round 431/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.795420" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.795011" elapsed="0.001074"/>
</kw>
<msg time="2026-05-25T01:56:38.796141" level="INFO">Repeating keyword, round 432/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.796604" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.796274" elapsed="0.001878"/>
</kw>
<msg time="2026-05-25T01:56:38.798216" level="INFO">Repeating keyword, round 433/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.798741" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.798352" elapsed="0.001024"/>
</kw>
<msg time="2026-05-25T01:56:38.799434" level="INFO">Repeating keyword, round 434/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.799906" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.799567" elapsed="0.001748"/>
</kw>
<msg time="2026-05-25T01:56:38.801635" level="INFO">Repeating keyword, round 435/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.802175" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.801813" elapsed="0.001012"/>
</kw>
<msg time="2026-05-25T01:56:38.802881" level="INFO">Repeating keyword, round 436/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.803364" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.803014" elapsed="0.001683"/>
</kw>
<msg time="2026-05-25T01:56:38.804759" level="INFO">Repeating keyword, round 437/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.805311" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.804893" elapsed="0.001779"/>
</kw>
<msg time="2026-05-25T01:56:38.806732" level="INFO">Repeating keyword, round 438/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.807269" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.806865" elapsed="0.001027"/>
</kw>
<msg time="2026-05-25T01:56:38.807951" level="INFO">Repeating keyword, round 439/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.808439" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.808104" elapsed="0.001711"/>
</kw>
<msg time="2026-05-25T01:56:38.809879" level="INFO">Repeating keyword, round 440/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.810418" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.810020" elapsed="0.001013"/>
</kw>
<msg time="2026-05-25T01:56:38.811115" level="INFO">Repeating keyword, round 441/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.811582" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.811251" elapsed="0.001674"/>
</kw>
<msg time="2026-05-25T01:56:38.812986" level="INFO">Repeating keyword, round 442/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.813540" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.813158" elapsed="0.001860"/>
</kw>
<msg time="2026-05-25T01:56:38.815096" level="INFO">Repeating keyword, round 443/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.815742" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.815232" elapsed="0.001288"/>
</kw>
<msg time="2026-05-25T01:56:38.816577" level="INFO">Repeating keyword, round 444/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.817124" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.816752" elapsed="0.001383"/>
</kw>
<msg time="2026-05-25T01:56:38.818192" level="INFO">Repeating keyword, round 445/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.818742" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.818327" elapsed="0.001951"/>
</kw>
<msg time="2026-05-25T01:56:38.820339" level="INFO">Repeating keyword, round 446/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.820899" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.820479" elapsed="0.001068"/>
</kw>
<msg time="2026-05-25T01:56:38.821608" level="INFO">Repeating keyword, round 447/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.822099" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.821743" elapsed="0.001702"/>
</kw>
<msg time="2026-05-25T01:56:38.823503" level="INFO">Repeating keyword, round 448/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.824060" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.823640" elapsed="0.001100"/>
</kw>
<msg time="2026-05-25T01:56:38.824796" level="INFO">Repeating keyword, round 449/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.825280" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.824927" elapsed="0.001667"/>
</kw>
<msg time="2026-05-25T01:56:38.826652" level="INFO">Repeating keyword, round 450/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.827192" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.826784" elapsed="0.001029"/>
</kw>
<msg time="2026-05-25T01:56:38.827870" level="INFO">Repeating keyword, round 451/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.828357" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.828003" elapsed="0.001903"/>
</kw>
<msg time="2026-05-25T01:56:38.829968" level="INFO">Repeating keyword, round 452/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.830546" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.830147" elapsed="0.001173"/>
</kw>
<msg time="2026-05-25T01:56:38.831379" level="INFO">Repeating keyword, round 453/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.831849" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.831514" elapsed="0.001694"/>
</kw>
<msg time="2026-05-25T01:56:38.833266" level="INFO">Repeating keyword, round 454/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.833778" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.833401" elapsed="0.001001"/>
</kw>
<msg time="2026-05-25T01:56:38.834459" level="INFO">Repeating keyword, round 455/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.834922" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.834593" elapsed="0.001685"/>
</kw>
<msg time="2026-05-25T01:56:38.836337" level="INFO">Repeating keyword, round 456/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.836880" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.836472" elapsed="0.001061"/>
</kw>
<msg time="2026-05-25T01:56:38.837591" level="INFO">Repeating keyword, round 457/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.838056" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.837724" elapsed="0.001661"/>
</kw>
<msg time="2026-05-25T01:56:38.839446" level="INFO">Repeating keyword, round 458/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.839956" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.839580" elapsed="0.001037"/>
</kw>
<msg time="2026-05-25T01:56:38.840684" level="INFO">Repeating keyword, round 459/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.841173" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.840818" elapsed="0.001680"/>
</kw>
<msg time="2026-05-25T01:56:38.842555" level="INFO">Repeating keyword, round 460/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.843090" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.842689" elapsed="0.001719"/>
</kw>
<msg time="2026-05-25T01:56:38.844468" level="INFO">Repeating keyword, round 461/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.844992" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.844612" elapsed="0.001022"/>
</kw>
<msg time="2026-05-25T01:56:38.845689" level="INFO">Repeating keyword, round 462/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.846172" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.845821" elapsed="0.001686"/>
</kw>
<msg time="2026-05-25T01:56:38.847565" level="INFO">Repeating keyword, round 463/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.848091" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.847700" elapsed="0.001259"/>
</kw>
<msg time="2026-05-25T01:56:38.849014" level="INFO">Repeating keyword, round 464/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.849517" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.849181" elapsed="0.001315"/>
</kw>
<msg time="2026-05-25T01:56:38.850652" level="INFO">Repeating keyword, round 465/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.851497" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.850862" elapsed="0.001283"/>
</kw>
<msg time="2026-05-25T01:56:38.852228" level="INFO">Repeating keyword, round 466/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.853203" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.852427" elapsed="0.002697"/>
</kw>
<msg time="2026-05-25T01:56:38.855211" level="INFO">Repeating keyword, round 467/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.855994" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.855461" elapsed="0.001214"/>
</kw>
<msg time="2026-05-25T01:56:38.856758" level="INFO">Repeating keyword, round 468/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.857457" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.856955" elapsed="0.002651"/>
</kw>
<msg time="2026-05-25T01:56:38.859688" level="INFO">Repeating keyword, round 469/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.860498" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.859929" elapsed="0.001341"/>
</kw>
<msg time="2026-05-25T01:56:38.861357" level="INFO">Repeating keyword, round 470/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.862021" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.861622" elapsed="0.001596"/>
</kw>
<msg time="2026-05-25T01:56:38.863305" level="INFO">Repeating keyword, round 471/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.864225" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.863649" elapsed="0.001220"/>
</kw>
<msg time="2026-05-25T01:56:38.864951" level="INFO">Repeating keyword, round 472/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.865665" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.865177" elapsed="0.002488"/>
</kw>
<msg time="2026-05-25T01:56:38.867753" level="INFO">Repeating keyword, round 473/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.868606" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.868002" elapsed="0.002501"/>
</kw>
<msg time="2026-05-25T01:56:38.870588" level="INFO">Repeating keyword, round 474/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.871334" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.870843" elapsed="0.001253"/>
</kw>
<msg time="2026-05-25T01:56:38.872179" level="INFO">Repeating keyword, round 475/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.872866" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.872368" elapsed="0.001884"/>
</kw>
<msg time="2026-05-25T01:56:38.874335" level="INFO">Repeating keyword, round 476/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.874997" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.874525" elapsed="0.001192"/>
</kw>
<msg time="2026-05-25T01:56:38.875793" level="INFO">Repeating keyword, round 477/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.876472" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.875978" elapsed="0.002507"/>
</kw>
<msg time="2026-05-25T01:56:38.878570" level="INFO">Repeating keyword, round 478/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.879341" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.878817" elapsed="0.001203"/>
</kw>
<msg time="2026-05-25T01:56:38.880140" level="INFO">Repeating keyword, round 479/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.880854" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.880339" elapsed="0.001188"/>
</kw>
<msg time="2026-05-25T01:56:38.881612" level="INFO">Repeating keyword, round 480/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.882351" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.881815" elapsed="0.002402"/>
</kw>
<msg time="2026-05-25T01:56:38.884305" level="INFO">Repeating keyword, round 481/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.885058" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.884506" elapsed="0.001241"/>
</kw>
<msg time="2026-05-25T01:56:38.885828" level="INFO">Repeating keyword, round 482/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.886594" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.886034" elapsed="0.001345"/>
</kw>
<msg time="2026-05-25T01:56:38.887458" level="INFO">Repeating keyword, round 483/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.888128" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.887645" elapsed="0.001528"/>
</kw>
<msg time="2026-05-25T01:56:38.889231" level="INFO">Repeating keyword, round 484/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.889696" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.889364" elapsed="0.001810"/>
</kw>
<msg time="2026-05-25T01:56:38.891230" level="INFO">Repeating keyword, round 485/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.891701" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.891365" elapsed="0.001857"/>
</kw>
<msg time="2026-05-25T01:56:38.893280" level="INFO">Repeating keyword, round 486/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.893747" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.893413" elapsed="0.000991"/>
</kw>
<msg time="2026-05-25T01:56:38.894491" level="INFO">Repeating keyword, round 487/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.894974" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.894642" elapsed="0.001758"/>
</kw>
<msg time="2026-05-25T01:56:38.896525" level="INFO">Repeating keyword, round 488/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.897125" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.896723" elapsed="0.001038"/>
</kw>
<msg time="2026-05-25T01:56:38.897818" level="INFO">Repeating keyword, round 489/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.898449" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.897960" elapsed="0.001216"/>
</kw>
<msg time="2026-05-25T01:56:38.899235" level="INFO">Repeating keyword, round 490/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.899702" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.899370" elapsed="0.001315"/>
</kw>
<msg time="2026-05-25T01:56:38.900744" level="INFO">Repeating keyword, round 491/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.901273" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.900883" elapsed="0.001306"/>
</kw>
<msg time="2026-05-25T01:56:38.902248" level="INFO">Repeating keyword, round 492/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.902715" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.902382" elapsed="0.001262"/>
</kw>
<msg time="2026-05-25T01:56:38.903703" level="INFO">Repeating keyword, round 493/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.904272" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.903838" elapsed="0.001158"/>
</kw>
<msg time="2026-05-25T01:56:38.905055" level="INFO">Repeating keyword, round 494/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.905560" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.905225" elapsed="0.001323"/>
</kw>
<msg time="2026-05-25T01:56:38.906607" level="INFO">Repeating keyword, round 495/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.907180" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.906739" elapsed="0.001435"/>
</kw>
<msg time="2026-05-25T01:56:38.908233" level="INFO">Repeating keyword, round 496/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.908756" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.908367" elapsed="0.001800"/>
</kw>
<msg time="2026-05-25T01:56:38.910225" level="INFO">Repeating keyword, round 497/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.910740" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.910361" elapsed="0.001051"/>
</kw>
<msg time="2026-05-25T01:56:38.911503" level="INFO">Repeating keyword, round 498/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.911970" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.911638" elapsed="0.001922"/>
</kw>
<msg time="2026-05-25T01:56:38.913620" level="INFO">Repeating keyword, round 499/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.914171" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.913757" elapsed="0.001045"/>
</kw>
<msg time="2026-05-25T01:56:38.914863" level="INFO">Repeating keyword, round 500/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.915367" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.914999" elapsed="0.001738"/>
</kw>
<msg time="2026-05-25T01:56:38.916795" level="INFO">Repeating keyword, round 501/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.917336" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.916932" elapsed="0.001877"/>
</kw>
<msg time="2026-05-25T01:56:38.918868" level="INFO">Repeating keyword, round 502/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.919395" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.919002" elapsed="0.001028"/>
</kw>
<msg time="2026-05-25T01:56:38.920113" level="INFO">Repeating keyword, round 503/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.920611" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.920247" elapsed="0.001877"/>
</kw>
<msg time="2026-05-25T01:56:38.922182" level="INFO">Repeating keyword, round 504/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.922699" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.922317" elapsed="0.001859"/>
</kw>
<msg time="2026-05-25T01:56:38.924233" level="INFO">Repeating keyword, round 505/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.924727" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.924366" elapsed="0.001112"/>
</kw>
<msg time="2026-05-25T01:56:38.925536" level="INFO">Repeating keyword, round 506/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.926006" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.925670" elapsed="0.001956"/>
</kw>
<msg time="2026-05-25T01:56:38.927685" level="INFO">Repeating keyword, round 507/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.928224" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.927820" elapsed="0.001907"/>
</kw>
<msg time="2026-05-25T01:56:38.929786" level="INFO">Repeating keyword, round 508/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.930320" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.929921" elapsed="0.001052"/>
</kw>
<msg time="2026-05-25T01:56:38.931031" level="INFO">Repeating keyword, round 509/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.931564" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.931195" elapsed="0.001780"/>
</kw>
<msg time="2026-05-25T01:56:38.933034" level="INFO">Repeating keyword, round 510/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.933573" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.933195" elapsed="0.001046"/>
</kw>
<msg time="2026-05-25T01:56:38.934298" level="INFO">Repeating keyword, round 511/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.934795" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.934431" elapsed="0.001727"/>
</kw>
<msg time="2026-05-25T01:56:38.936217" level="INFO">Repeating keyword, round 512/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.936908" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.936351" elapsed="0.001291"/>
</kw>
<msg time="2026-05-25T01:56:38.937700" level="INFO">Repeating keyword, round 513/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.938220" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.937833" elapsed="0.001751"/>
</kw>
<msg time="2026-05-25T01:56:38.939643" level="INFO">Repeating keyword, round 514/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.940182" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.939776" elapsed="0.002137"/>
</kw>
<msg time="2026-05-25T01:56:38.941988" level="INFO">Repeating keyword, round 515/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.942523" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.942143" elapsed="0.001144"/>
</kw>
<msg time="2026-05-25T01:56:38.943346" level="INFO">Repeating keyword, round 516/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.943817" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.943482" elapsed="0.001757"/>
</kw>
<msg time="2026-05-25T01:56:38.945298" level="INFO">Repeating keyword, round 517/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.945832" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.945449" elapsed="0.001805"/>
</kw>
<msg time="2026-05-25T01:56:38.947312" level="INFO">Repeating keyword, round 518/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.947787" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.947448" elapsed="0.001083"/>
</kw>
<msg time="2026-05-25T01:56:38.948609" level="INFO">Repeating keyword, round 519/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.949189" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.948745" elapsed="0.001850"/>
</kw>
<msg time="2026-05-25T01:56:38.950661" level="INFO">Repeating keyword, round 520/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.951206" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.950797" elapsed="0.001084"/>
</kw>
<msg time="2026-05-25T01:56:38.951938" level="INFO">Repeating keyword, round 521/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.952425" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.952093" elapsed="0.001095"/>
</kw>
<msg time="2026-05-25T01:56:38.953257" level="INFO">Repeating keyword, round 522/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.953732" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.953398" elapsed="0.001257"/>
</kw>
<msg time="2026-05-25T01:56:38.954724" level="INFO">Repeating keyword, round 523/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.955380" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.954924" elapsed="0.001879"/>
</kw>
<msg time="2026-05-25T01:56:38.956862" level="INFO">Repeating keyword, round 524/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.957399" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.956997" elapsed="0.001060"/>
</kw>
<msg time="2026-05-25T01:56:38.958145" level="INFO">Repeating keyword, round 525/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.958635" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.958279" elapsed="0.001727"/>
</kw>
<msg time="2026-05-25T01:56:38.960101" level="INFO">Repeating keyword, round 526/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.960669" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.960245" elapsed="0.001957"/>
</kw>
<msg time="2026-05-25T01:56:38.962263" level="INFO">Repeating keyword, round 527/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.962773" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.962398" elapsed="0.001045"/>
</kw>
<msg time="2026-05-25T01:56:38.963502" level="INFO">Repeating keyword, round 528/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.963971" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.963635" elapsed="0.001781"/>
</kw>
<msg time="2026-05-25T01:56:38.965481" level="INFO">Repeating keyword, round 529/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.966027" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.965667" elapsed="0.001505"/>
</kw>
<msg time="2026-05-25T01:56:38.967230" level="INFO">Repeating keyword, round 530/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.967698" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.967364" elapsed="0.001041"/>
</kw>
<msg time="2026-05-25T01:56:38.968462" level="INFO">Repeating keyword, round 531/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.969006" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.968658" elapsed="0.001377"/>
</kw>
<msg time="2026-05-25T01:56:38.970123" level="INFO">Repeating keyword, round 532/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.970590" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.970258" elapsed="0.001704"/>
</kw>
<msg time="2026-05-25T01:56:38.972023" level="INFO">Repeating keyword, round 533/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.972592" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.972217" elapsed="0.001139"/>
</kw>
<msg time="2026-05-25T01:56:38.973416" level="INFO">Repeating keyword, round 534/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.973887" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.973553" elapsed="0.001888"/>
</kw>
<msg time="2026-05-25T01:56:38.975499" level="INFO">Repeating keyword, round 535/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.976240" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.975643" elapsed="0.001324"/>
</kw>
<msg time="2026-05-25T01:56:38.977024" level="INFO">Repeating keyword, round 536/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.977513" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.977175" elapsed="0.001696"/>
</kw>
<msg time="2026-05-25T01:56:38.978930" level="INFO">Repeating keyword, round 537/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.979520" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.979164" elapsed="0.001108"/>
</kw>
<msg time="2026-05-25T01:56:38.980331" level="INFO">Repeating keyword, round 538/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.980836" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.980469" elapsed="0.001960"/>
</kw>
<msg time="2026-05-25T01:56:38.982494" level="INFO">Repeating keyword, round 539/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.983025" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.982632" elapsed="0.001086"/>
</kw>
<msg time="2026-05-25T01:56:38.983776" level="INFO">Repeating keyword, round 540/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.984295" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.983914" elapsed="0.001784"/>
</kw>
<msg time="2026-05-25T01:56:38.985816" level="INFO">Repeating keyword, round 541/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.986372" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.985953" elapsed="0.001091"/>
</kw>
<msg time="2026-05-25T01:56:38.987273" level="INFO">Repeating keyword, round 542/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.987760" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.987416" elapsed="0.001742"/>
</kw>
<msg time="2026-05-25T01:56:38.989218" level="INFO">Repeating keyword, round 543/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.989733" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.989353" elapsed="0.001073"/>
</kw>
<msg time="2026-05-25T01:56:38.990485" level="INFO">Repeating keyword, round 544/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.990956" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.990621" elapsed="0.001730"/>
</kw>
<msg time="2026-05-25T01:56:38.992412" level="INFO">Repeating keyword, round 545/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.992982" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.992594" elapsed="0.001312"/>
</kw>
<msg time="2026-05-25T01:56:38.993966" level="INFO">Repeating keyword, round 546/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.994468" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.994126" elapsed="0.001746"/>
</kw>
<msg time="2026-05-25T01:56:38.995932" level="INFO">Repeating keyword, round 547/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.996471" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.996085" elapsed="0.001184"/>
</kw>
<msg time="2026-05-25T01:56:38.997328" level="INFO">Repeating keyword, round 548/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.997798" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.997461" elapsed="0.001751"/>
</kw>
<msg time="2026-05-25T01:56:38.999272" level="INFO">Repeating keyword, round 549/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:38.999804" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:38.999410" elapsed="0.001142"/>
</kw>
<msg time="2026-05-25T01:56:39.000610" level="INFO">Repeating keyword, round 550/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.001103" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.000748" elapsed="0.001429"/>
</kw>
<msg time="2026-05-25T01:56:39.002237" level="INFO">Repeating keyword, round 551/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.002723" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.002380" elapsed="0.001752"/>
</kw>
<msg time="2026-05-25T01:56:39.004193" level="INFO">Repeating keyword, round 552/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.004763" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.004330" elapsed="0.001175"/>
</kw>
<msg time="2026-05-25T01:56:39.005567" level="INFO">Repeating keyword, round 553/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.006039" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.005704" elapsed="0.001749"/>
</kw>
<msg time="2026-05-25T01:56:39.007511" level="INFO">Repeating keyword, round 554/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.008033" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.007647" elapsed="0.001121"/>
</kw>
<msg time="2026-05-25T01:56:39.008826" level="INFO">Repeating keyword, round 555/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.009318" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.008961" elapsed="0.001215"/>
</kw>
<msg time="2026-05-25T01:56:39.010233" level="INFO">Repeating keyword, round 556/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.010706" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.010368" elapsed="0.001739"/>
</kw>
<msg time="2026-05-25T01:56:39.012184" level="INFO">Repeating keyword, round 557/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.012723" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.012321" elapsed="0.001107"/>
</kw>
<msg time="2026-05-25T01:56:39.013486" level="INFO">Repeating keyword, round 558/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.014174" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.013620" elapsed="0.001998"/>
</kw>
<msg time="2026-05-25T01:56:39.015677" level="INFO">Repeating keyword, round 559/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.016227" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.015811" elapsed="0.002122"/>
</kw>
<msg time="2026-05-25T01:56:39.017992" level="INFO">Repeating keyword, round 560/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.018525" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.018143" elapsed="0.001349"/>
</kw>
<msg time="2026-05-25T01:56:39.019552" level="INFO">Repeating keyword, round 561/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.020032" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.019690" elapsed="0.002125"/>
</kw>
<msg time="2026-05-25T01:56:39.021877" level="INFO">Repeating keyword, round 562/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.022451" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.022023" elapsed="0.001148"/>
</kw>
<msg time="2026-05-25T01:56:39.023231" level="INFO">Repeating keyword, round 563/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.023708" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.023367" elapsed="0.001777"/>
</kw>
<msg time="2026-05-25T01:56:39.025205" level="INFO">Repeating keyword, round 564/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.025731" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.025342" elapsed="0.001077"/>
</kw>
<msg time="2026-05-25T01:56:39.026479" level="INFO">Repeating keyword, round 565/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.026958" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.026616" elapsed="0.001763"/>
</kw>
<msg time="2026-05-25T01:56:39.028437" level="INFO">Repeating keyword, round 566/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.028995" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.028605" elapsed="0.001097"/>
</kw>
<msg time="2026-05-25T01:56:39.029761" level="INFO">Repeating keyword, round 567/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.030255" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.029899" elapsed="0.001280"/>
</kw>
<msg time="2026-05-25T01:56:39.031238" level="INFO">Repeating keyword, round 568/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.031714" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.031376" elapsed="0.001778"/>
</kw>
<msg time="2026-05-25T01:56:39.033213" level="INFO">Repeating keyword, round 569/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.033741" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.033351" elapsed="0.001116"/>
</kw>
<msg time="2026-05-25T01:56:39.034525" level="INFO">Repeating keyword, round 570/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.034996" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.034662" elapsed="0.001752"/>
</kw>
<msg time="2026-05-25T01:56:39.036488" level="INFO">Repeating keyword, round 571/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.037017" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.036628" elapsed="0.001128"/>
</kw>
<msg time="2026-05-25T01:56:39.037812" level="INFO">Repeating keyword, round 572/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.038301" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.037947" elapsed="0.001401"/>
</kw>
<msg time="2026-05-25T01:56:39.039407" level="INFO">Repeating keyword, round 573/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.039893" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.039548" elapsed="0.001249"/>
</kw>
<msg time="2026-05-25T01:56:39.040857" level="INFO">Repeating keyword, round 574/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.041450" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.040995" elapsed="0.001882"/>
</kw>
<msg time="2026-05-25T01:56:39.042936" level="INFO">Repeating keyword, round 575/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.043493" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.043099" elapsed="0.001104"/>
</kw>
<msg time="2026-05-25T01:56:39.044266" level="INFO">Repeating keyword, round 576/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.044817" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.044476" elapsed="0.001994"/>
</kw>
<msg time="2026-05-25T01:56:39.046530" level="INFO">Repeating keyword, round 577/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.047062" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.046671" elapsed="0.001100"/>
</kw>
<msg time="2026-05-25T01:56:39.047829" level="INFO">Repeating keyword, round 578/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.048316" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.047963" elapsed="0.001213"/>
</kw>
<msg time="2026-05-25T01:56:39.049238" level="INFO">Repeating keyword, round 579/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.049708" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.049373" elapsed="0.001210"/>
</kw>
<msg time="2026-05-25T01:56:39.050645" level="INFO">Repeating keyword, round 580/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.051204" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.050780" elapsed="0.001395"/>
</kw>
<msg time="2026-05-25T01:56:39.052235" level="INFO">Repeating keyword, round 581/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.052895" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.052371" elapsed="0.001806"/>
</kw>
<msg time="2026-05-25T01:56:39.054237" level="INFO">Repeating keyword, round 582/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.054711" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.054372" elapsed="0.001092"/>
</kw>
<msg time="2026-05-25T01:56:39.055522" level="INFO">Repeating keyword, round 583/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.055997" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.055661" elapsed="0.002532"/>
</kw>
<msg time="2026-05-25T01:56:39.058257" level="INFO">Repeating keyword, round 584/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.058787" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.058411" elapsed="0.001169"/>
</kw>
<msg time="2026-05-25T01:56:39.059637" level="INFO">Repeating keyword, round 585/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.060122" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.059771" elapsed="0.000980"/>
</kw>
<msg time="2026-05-25T01:56:39.060811" level="INFO">Repeating keyword, round 586/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.062161" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.060948" elapsed="0.001957"/>
</kw>
<msg time="2026-05-25T01:56:39.062964" level="INFO">Repeating keyword, round 587/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.063751" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.063406" elapsed="0.001974"/>
</kw>
<msg time="2026-05-25T01:56:39.065438" level="INFO">Repeating keyword, round 588/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.065962" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.065580" elapsed="0.001646"/>
</kw>
<msg time="2026-05-25T01:56:39.067284" level="INFO">Repeating keyword, round 589/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.067755" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.067419" elapsed="0.001128"/>
</kw>
<msg time="2026-05-25T01:56:39.068609" level="INFO">Repeating keyword, round 590/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.069452" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.068743" elapsed="0.001670"/>
</kw>
<msg time="2026-05-25T01:56:39.070470" level="INFO">Repeating keyword, round 591/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.071038" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.070648" elapsed="0.001531"/>
</kw>
<msg time="2026-05-25T01:56:39.072237" level="INFO">Repeating keyword, round 592/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.072731" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.072372" elapsed="0.001344"/>
</kw>
<msg time="2026-05-25T01:56:39.073774" level="INFO">Repeating keyword, round 593/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.074348" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.073913" elapsed="0.001275"/>
</kw>
<msg time="2026-05-25T01:56:39.075309" level="INFO">Repeating keyword, round 594/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.075782" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.075445" elapsed="0.001755"/>
</kw>
<msg time="2026-05-25T01:56:39.077259" level="INFO">Repeating keyword, round 595/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.077769" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.077394" elapsed="0.001337"/>
</kw>
<msg time="2026-05-25T01:56:39.078790" level="INFO">Repeating keyword, round 596/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.079288" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.078926" elapsed="0.002267"/>
</kw>
<msg time="2026-05-25T01:56:39.081255" level="INFO">Repeating keyword, round 597/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.081735" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.081394" elapsed="0.001045"/>
</kw>
<msg time="2026-05-25T01:56:39.082529" level="INFO">Repeating keyword, round 598/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.083008" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.082673" elapsed="0.001499"/>
</kw>
<msg time="2026-05-25T01:56:39.084233" level="INFO">Repeating keyword, round 599/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.084736" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.084372" elapsed="0.001780"/>
</kw>
<msg time="2026-05-25T01:56:39.086214" level="INFO">Repeating keyword, round 600/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-05-25T01:56:39.086739" level="INFO">Starting process:
nc -w 1 10.30.170.200 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-05-25T01:56:39.086352" elapsed="0.001156"/>
</kw>
<arg>${number_ofconnections_to_fail}</arg>
<arg>Start Process</arg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Executes the specified keyword multiple times.</doc>
<status status="PASS" start="2026-05-25T01:56:38.046606" elapsed="1.040974"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-05-25T01:56:39.089171" level="INFO">Running command 'pkill -f 'nc -w' 2&gt;&amp;1'.</msg>
<arg>pkill -f 'nc -w'</arg>
<doc>_This keyword is considered deprecated. Use the
[http://robotframework.org/robotframework/latest/libraries/Process.html|
Process] library instead._</doc>
<status status="PASS" start="2026-05-25T01:56:39.087739" elapsed="0.130024"/>
</kw>
<kw name="Log Environment Details">
<kw name="Get Process ID Based On Regex On Remote System" owner="Utils">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:39.225053" level="INFO">${cmd} = ps -elf | grep -v grep | grep java.*karaf | awk '{print $4}'</msg>
<var>${cmd}</var>
<arg>ps -elf | grep -v grep | grep ${regex_string_to_match_on} | awk '{print $4}'</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:56:39.224655" elapsed="0.000454"/>
</kw>
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:39.226376" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:39.226094" elapsed="0.000339"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:39.226053" elapsed="0.000408"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:39.226797" level="INFO">index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:56:39.226907" level="INFO">${current_ssh_connection} = index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:56:39.226591" elapsed="0.000343"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:39.227463" level="INFO">Attempting to execute command "ps -elf | grep -v grep | grep java.*karaf | awk '{print $4}'" on remote system "10.30.170.200" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:39.227061" elapsed="0.000450"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:39.228021" level="INFO">${conn_id} = 28</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:39.227641" elapsed="0.000406"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:56:39.228971" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:56:39.229055" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:56:39.228677" elapsed="0.000430"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:39.229250" elapsed="0.000350"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:56:39.230430" level="INFO">Logging into '10.30.170.200:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:56:39.546894" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-173-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:56:34 UTC 2026

  System load:  1.21               Processes:             122
  Usage of /:   11.1% of 77.35GB   Users logged in:       0
  Memory usage: 8%                 IPv4 address for ens3: 10.30.170.200
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

10 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:56:37 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-0-builder-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:56:39.230107" elapsed="0.316986"/>
</kw>
<msg time="2026-05-25T01:56:39.547161" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:39.229746" elapsed="0.317484"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:56:39.228270" elapsed="0.319051"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:56:39.547695" level="INFO">Executing command 'ps -elf | grep -v grep | grep java.*karaf | awk '{print $4}''.</msg>
<msg time="2026-05-25T01:56:39.570483" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:56:39.570719" level="INFO">${stdout} = 4288</msg>
<msg time="2026-05-25T01:56:39.570815" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:56:39.547489" elapsed="0.023376"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:39.571208" elapsed="0.000437"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:39.572607" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:39.571957" elapsed="0.000744"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:39.573177" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:39.572867" elapsed="0.000419"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:39.572818" elapsed="0.000517"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:56:39.573683" elapsed="0.000057"/>
</return>
<status status="PASS" start="2026-05-25T01:56:39.573452" elapsed="0.000360"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:39.573419" elapsed="0.000445"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:39.573938" elapsed="0.000030"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:39.579047" elapsed="0.000749"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:39.580226" elapsed="0.000356"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:39.580850" elapsed="0.000098"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:56:39.574583" elapsed="0.006416"/>
</kw>
<msg time="2026-05-25T01:56:39.581133" level="INFO">${output} = 4288</msg>
<var>${output}</var>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>user=${user}</arg>
<arg>password=${password}</arg>
<arg>prompt=${prompt}</arg>
<arg>prompt_timeout=${prompt_timeout}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:56:39.225455" elapsed="0.355703"/>
</kw>
<kw name="Fetch From Left" owner="String">
<msg time="2026-05-25T01:56:39.581517" level="INFO">${pid} = 4288</msg>
<var>${pid}</var>
<arg>${output}</arg>
<arg>\r</arg>
<doc>Returns contents of the ``string`` before the first occurrence of ``marker``.</doc>
<status status="PASS" start="2026-05-25T01:56:39.581312" elapsed="0.000230"/>
</kw>
<return>
<value>${pid}</value>
<status status="PASS" start="2026-05-25T01:56:39.581589" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:56:39.581735" level="INFO">${output} = 4288</msg>
<var>${output}</var>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>java.*karaf</arg>
<arg>${ODL_SYSTEM_USER}</arg>
<doc>Uses ps to find a process that matches the supplied regex. Returns the PID of that process
The ${regex_string_to_match_on} should produce a unique process otherwise the PID returned may not be
the expected PID</doc>
<status status="PASS" start="2026-05-25T01:56:39.222609" elapsed="0.359151"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:39.582167" level="INFO">4288</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:39.581904" elapsed="0.000309"/>
</kw>
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:39.584676" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:39.584442" elapsed="0.000291"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:39.584423" elapsed="0.000334"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:39.585012" level="INFO">index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:56:39.585128" level="INFO">${current_ssh_connection} = index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:56:39.584879" elapsed="0.000276"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:39.585652" level="INFO">Attempting to execute command "netstat -na | grep 6633" on remote system "10.30.170.200" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:39.585277" elapsed="0.000421"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:39.586198" level="INFO">${conn_id} = 30</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:39.585824" elapsed="0.000400"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:56:39.587122" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:56:39.587200" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:56:39.586827" elapsed="0.000397"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:39.587353" elapsed="0.000325"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:56:39.588492" level="INFO">Logging into '10.30.170.200:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:56:39.898566" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-173-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:56:34 UTC 2026

  System load:  1.21               Processes:             122
  Usage of /:   11.1% of 77.35GB   Users logged in:       0
  Memory usage: 8%                 IPv4 address for ens3: 10.30.170.200
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

10 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:56:39 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-0-builder-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:56:39.588181" elapsed="0.310511"/>
</kw>
<msg time="2026-05-25T01:56:39.898769" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:39.587819" elapsed="0.311024"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:56:39.586461" elapsed="0.312487"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:56:39.899409" level="INFO">Executing command 'netstat -na | grep 6633'.</msg>
<msg time="2026-05-25T01:56:39.911626" level="INFO">Command exited with return code 1.</msg>
<msg time="2026-05-25T01:56:39.911902" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:56:39.912004" level="INFO">${stderr} = bash: line 1: netstat: command not found</msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:56:39.899168" elapsed="0.012891"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:39.912410" elapsed="0.000454"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:39.913839" level="INFO">bash: line 1: netstat: command not found</msg>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:39.913220" elapsed="0.000741"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:39.914475" elapsed="0.000040"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:39.914184" elapsed="0.000400"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:39.914131" elapsed="0.000503"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:56:39.914983" elapsed="0.000057"/>
</return>
<status status="PASS" start="2026-05-25T01:56:39.914750" elapsed="0.000426"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:39.914716" elapsed="0.000516"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:39.915310" elapsed="0.000031"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:39.920802" elapsed="0.000589"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:39.921591" elapsed="0.000224"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:39.922041" elapsed="0.000181"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:56:39.915962" elapsed="0.006339"/>
</kw>
<msg time="2026-05-25T01:56:39.922471" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>netstat -na | grep 6633</arg>
<arg>${ODL_SYSTEM_USER}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:56:39.582525" elapsed="0.339982"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:39.923084" level="INFO"/>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:39.922710" elapsed="0.000439"/>
</kw>
<doc>Will display relevant details of the test environement to help aid debugging efforts if
needed in the future.</doc>
<status status="PASS" start="2026-05-25T01:56:39.218340" elapsed="0.704890"/>
</kw>
<kw name="Get Process Thread Count On Remote System" owner="Utils">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:39.926714" level="INFO">${cmd} = ps --no-headers -o nlwp 4288</msg>
<var>${cmd}</var>
<arg>ps --no-headers -o nlwp ${pid}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:56:39.926284" elapsed="0.000468"/>
</kw>
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:39.928458" elapsed="0.000098"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:39.928115" elapsed="0.000496"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:39.928086" elapsed="0.000559"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:39.929014" level="INFO">index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:56:39.929185" level="INFO">${current_ssh_connection} = index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:56:39.928823" elapsed="0.000401"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:39.929952" level="INFO">Attempting to execute command "ps --no-headers -o nlwp 4288" on remote system "10.30.170.200" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:39.929398" elapsed="0.000623"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:39.930765" level="INFO">${conn_id} = 32</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:39.930229" elapsed="0.000584"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:56:39.932134" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:56:39.932243" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:56:39.931678" elapsed="0.000599"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:39.932461" elapsed="0.000444"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:56:39.933759" level="INFO">Logging into '10.30.170.200:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:56:40.248159" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-173-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:56:34 UTC 2026

  System load:  1.21               Processes:             122
  Usage of /:   11.1% of 77.35GB   Users logged in:       0
  Memory usage: 8%                 IPv4 address for ens3: 10.30.170.200
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

10 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:56:39 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-0-builder-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:56:39.933408" elapsed="0.314944"/>
</kw>
<msg time="2026-05-25T01:56:40.248490" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:39.933051" elapsed="0.315563"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:56:39.931141" elapsed="0.317662"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:56:40.249575" level="INFO">Executing command 'ps --no-headers -o nlwp 4288'.</msg>
<msg time="2026-05-25T01:56:40.262539" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:56:40.262779" level="INFO">${stdout} =  168</msg>
<msg time="2026-05-25T01:56:40.262877" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:56:40.249172" elapsed="0.013758"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:40.263274" elapsed="0.000477"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:40.264684" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:40.264060" elapsed="0.000716"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:40.265248" elapsed="0.000036"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:40.264941" elapsed="0.000413"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:40.264893" elapsed="0.000510"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:56:40.265745" elapsed="0.000056"/>
</return>
<status status="PASS" start="2026-05-25T01:56:40.265516" elapsed="0.000357"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:40.265484" elapsed="0.000442"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:40.265999" elapsed="0.000030"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:40.272634" elapsed="0.000469"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:40.273296" elapsed="0.000215"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:40.273678" elapsed="0.000132"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:56:40.266649" elapsed="0.007235"/>
</kw>
<msg time="2026-05-25T01:56:40.274050" level="INFO">${output} =  168</msg>
<var>${output}</var>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>user=${user}</arg>
<arg>password=${password}</arg>
<arg>prompt=${prompt}</arg>
<arg>prompt_timeout=${prompt_timeout}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:56:39.927222" elapsed="0.346946"/>
</kw>
<kw name="Fetch From Left" owner="String">
<msg time="2026-05-25T01:56:40.274682" level="INFO">${thread_count} =  168</msg>
<var>${thread_count}</var>
<arg>${output}</arg>
<arg>\r</arg>
<doc>Returns contents of the ``string`` before the first occurrence of ``marker``.</doc>
<status status="PASS" start="2026-05-25T01:56:40.274389" elapsed="0.000328"/>
</kw>
<return>
<value>${thread_count}</value>
<status status="PASS" start="2026-05-25T01:56:40.274783" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:56:40.274997" level="INFO">${ending_thread_count} =  168</msg>
<var>${ending_thread_count}</var>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${controller_pid}</arg>
<arg>${ODL_SYSTEM_USER}</arg>
<doc>Executes the ps command to retrieve the lightweight process (aka thread) count.</doc>
<status status="PASS" start="2026-05-25T01:56:39.923494" elapsed="0.351538"/>
</kw>
<kw name="Log Environment Details">
<kw name="Get Process ID Based On Regex On Remote System" owner="Utils">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:40.282882" level="INFO">${cmd} = ps -elf | grep -v grep | grep java.*karaf | awk '{print $4}'</msg>
<var>${cmd}</var>
<arg>ps -elf | grep -v grep | grep ${regex_string_to_match_on} | awk '{print $4}'</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:56:40.282447" elapsed="0.000474"/>
</kw>
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:40.284371" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:40.284136" elapsed="0.000291"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:40.284117" elapsed="0.000334"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:40.284700" level="INFO">index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:56:40.284802" level="INFO">${current_ssh_connection} = index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:56:40.284566" elapsed="0.000263"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:40.285343" level="INFO">Attempting to execute command "ps -elf | grep -v grep | grep java.*karaf | awk '{print $4}'" on remote system "10.30.170.200" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:40.284950" elapsed="0.000439"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:40.285870" level="INFO">${conn_id} = 34</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:40.285515" elapsed="0.000381"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:56:40.286728" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:56:40.286804" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:56:40.286454" elapsed="0.000374"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:40.286955" elapsed="0.000338"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:56:40.288259" level="INFO">Logging into '10.30.170.200:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:56:40.604058" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-173-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:56:34 UTC 2026

  System load:  1.21               Processes:             122
  Usage of /:   11.1% of 77.35GB   Users logged in:       0
  Memory usage: 8%                 IPv4 address for ens3: 10.30.170.200
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

10 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:56:40 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-0-builder-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:56:40.287926" elapsed="0.316240"/>
</kw>
<msg time="2026-05-25T01:56:40.604229" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:40.287433" elapsed="0.316855"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:56:40.286095" elapsed="0.318276"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:56:40.604712" level="INFO">Executing command 'ps -elf | grep -v grep | grep java.*karaf | awk '{print $4}''.</msg>
<msg time="2026-05-25T01:56:40.627476" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:56:40.627715" level="INFO">${stdout} = 4288</msg>
<msg time="2026-05-25T01:56:40.627815" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:56:40.604525" elapsed="0.023341"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:40.628305" elapsed="0.000447"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:40.629674" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:40.629063" elapsed="0.000702"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:40.630220" elapsed="0.000034"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:40.629924" elapsed="0.000398"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:40.629877" elapsed="0.000494"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:56:40.630715" elapsed="0.000057"/>
</return>
<status status="PASS" start="2026-05-25T01:56:40.630484" elapsed="0.000360"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:40.630452" elapsed="0.000448"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:40.630973" elapsed="0.000032"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:40.635799" elapsed="0.000405"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:40.636342" elapsed="0.000150"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:40.636611" elapsed="0.000097"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:56:40.631629" elapsed="0.005130"/>
</kw>
<msg time="2026-05-25T01:56:40.636877" level="INFO">${output} = 4288</msg>
<var>${output}</var>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>user=${user}</arg>
<arg>password=${password}</arg>
<arg>prompt=${prompt}</arg>
<arg>prompt_timeout=${prompt_timeout}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:56:40.283364" elapsed="0.353537"/>
</kw>
<kw name="Fetch From Left" owner="String">
<msg time="2026-05-25T01:56:40.637277" level="INFO">${pid} = 4288</msg>
<var>${pid}</var>
<arg>${output}</arg>
<arg>\r</arg>
<doc>Returns contents of the ``string`` before the first occurrence of ``marker``.</doc>
<status status="PASS" start="2026-05-25T01:56:40.637052" elapsed="0.000251"/>
</kw>
<return>
<value>${pid}</value>
<status status="PASS" start="2026-05-25T01:56:40.637350" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:56:40.637496" level="INFO">${output} = 4288</msg>
<var>${output}</var>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>java.*karaf</arg>
<arg>${ODL_SYSTEM_USER}</arg>
<doc>Uses ps to find a process that matches the supplied regex. Returns the PID of that process
The ${regex_string_to_match_on} should produce a unique process otherwise the PID returned may not be
the expected PID</doc>
<status status="PASS" start="2026-05-25T01:56:40.279796" elapsed="0.357724"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:40.637909" level="INFO">4288</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:40.637659" elapsed="0.000293"/>
</kw>
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:40.640415" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:40.640178" elapsed="0.000294"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:40.640158" elapsed="0.000337"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:40.640744" level="INFO">index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:56:40.640844" level="INFO">${current_ssh_connection} = index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:56:40.640614" elapsed="0.000257"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:40.641391" level="INFO">Attempting to execute command "netstat -na | grep 6633" on remote system "10.30.170.200" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:40.640998" elapsed="0.000440"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:40.641918" level="INFO">${conn_id} = 36</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:40.641565" elapsed="0.000378"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:56:40.642774" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:56:40.642849" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:56:40.642505" elapsed="0.000368"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:40.643000" elapsed="0.000344"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:56:40.644151" level="INFO">Logging into '10.30.170.200:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:56:40.988823" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-173-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:56:34 UTC 2026

  System load:  1.21               Processes:             122
  Usage of /:   11.1% of 77.35GB   Users logged in:       0
  Memory usage: 8%                 IPv4 address for ens3: 10.30.170.200
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

10 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:56:40 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-0-builder-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:56:40.643818" elapsed="0.345290"/>
</kw>
<msg time="2026-05-25T01:56:40.989195" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:40.643488" elapsed="0.345788"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:56:40.642143" elapsed="0.347266"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:56:40.989887" level="INFO">Executing command 'netstat -na | grep 6633'.</msg>
<msg time="2026-05-25T01:56:41.002794" level="INFO">Command exited with return code 1.</msg>
<msg time="2026-05-25T01:56:41.002958" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:56:41.003019" level="INFO">${stderr} = bash: line 1: netstat: command not found</msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:56:40.989635" elapsed="0.013417"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:41.003298" elapsed="0.000313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:41.004242" level="INFO">bash: line 1: netstat: command not found</msg>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:41.003822" elapsed="0.000483"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:41.004615" elapsed="0.000026"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:41.004421" elapsed="0.000264"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:41.004385" elapsed="0.000332"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:56:41.004937" elapsed="0.000036"/>
</return>
<status status="PASS" start="2026-05-25T01:56:41.004790" elapsed="0.000229"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:41.004769" elapsed="0.000283"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:41.005121" elapsed="0.000026"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:41.008275" elapsed="0.000445"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:41.008910" elapsed="0.000243"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:41.009332" elapsed="0.000179"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:56:41.005534" elapsed="0.004051"/>
</kw>
<msg time="2026-05-25T01:56:41.009754" level="INFO">${output} = </msg>
<var>${output}</var>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>netstat -na | grep 6633</arg>
<arg>${ODL_SYSTEM_USER}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:56:40.638281" elapsed="0.371507"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:41.010369" level="INFO"/>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:41.009989" elapsed="0.000438"/>
</kw>
<doc>Will display relevant details of the test environement to help aid debugging efforts if
needed in the future.</doc>
<status status="PASS" start="2026-05-25T01:56:40.275269" elapsed="0.735238"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:41.011133" level="INFO">starting count:  164
ending count:  168</msg>
<arg>starting count: ${starting_thread_count}\nending count: ${ending_thread_count}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:41.010689" elapsed="0.000508"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:56:41.011948" level="INFO">${acceptable_thread_count} = 194.0</msg>
<var>${acceptable_thread_count}</var>
<arg>${starting_thread_count} + (${number_of_connections_to_fail} * ${margin_of_error})</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:56:41.011386" elapsed="0.000599"/>
</kw>
<kw name="Should Be True" owner="BuiltIn">
<arg>${ending_thread_count} &lt;= ${acceptable_thread_count}</arg>
<arg>Final thread count of ${ending_thread_count} exceeds acceptable count: ${acceptable_thread_count}</arg>
<doc>Fails if the given condition is not true.</doc>
<status status="PASS" start="2026-05-25T01:56:41.012197" elapsed="0.000682"/>
</kw>
<kw name="Report Failure Due To Bug" owner="Utils" type="TEARDOWN">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:56:41.014457" level="INFO">${test_skipped} = False</msg>
<var>${test_skipped}</var>
<arg>len(re.findall('SKIPPED', """${TEST_MESSAGE}""")) &gt; 0</arg>
<arg>modules=re</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:56:41.013858" elapsed="0.000637"/>
</kw>
<if>
<branch type="IF" condition="('${TEST_STATUS}' != 'FAIL') or ${test_skipped}">
<return>
<status status="PASS" start="2026-05-25T01:56:41.014796" elapsed="0.000037"/>
</return>
<status status="PASS" start="2026-05-25T01:56:41.014599" elapsed="0.000274"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:41.014572" elapsed="0.000335"/>
</if>
<kw name="Comment" owner="BuiltIn">
<arg>Jira tickets are {PROJECT}-{NUMBER} while Bugzilla tickets are {NUMBER}</arg>
<doc>Displays the given messages in the log file as keyword arguments.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:41.015149" elapsed="0.000034"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<var>${match}</var>
<arg>Should Contain</arg>
<arg>${number}</arg>
<arg>-</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:41.015364" elapsed="0.000027"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<var>${bug_url}</var>
<arg>${match}</arg>
<arg>https://jira.opendaylight.org/browse/${number}</arg>
<arg>https://bugs.opendaylight.org/show_bug.cgi?id=${number}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:41.015583" elapsed="0.000028"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<var>${msg}</var>
<arg>This test fails due to ${bug_url}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:41.015781" elapsed="0.000080"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${newline}</var>
<arg>chr(10)</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:41.015996" elapsed="0.000020"/>
</kw>
<kw name="Set Test Message" owner="BuiltIn">
<arg>${msg}${newline}${newline}${TEST_MESSAGE}</arg>
<doc>Sets message for the current test case.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:41.016147" elapsed="0.000020"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:41.016283" elapsed="0.000019"/>
</kw>
<if>
<branch type="IF" condition="&quot;${include_bug_in_tags}&quot;==&quot;True&quot;">
<kw name="Set Tags" owner="BuiltIn">
<arg>${bug_url}</arg>
<doc>Adds given ``tags`` for the current test or all tests in a suite.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:41.016486" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:41.016363" elapsed="0.000173"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:56:41.016347" elapsed="0.000212"/>
</if>
<arg>2429</arg>
<doc>Report that a test failed due to a known Bugzilla bug whose
number is provided as an argument.
Not FAILED (incl. SKIPPED) test are not reported.
This keyword must be used in the [Teardown] setting of the affected test
or as the first line of the test if FastFail module is not being
used. It reports the URL of the bug on console and also puts it
into the Robot log file.</doc>
<status status="PASS" start="2026-05-25T01:56:41.013399" elapsed="0.003209"/>
</kw>
<doc>Using the "nc" tool, a number of connections to the 6633
will be opened and closed to simulate a failed OF handshake. The java threadcount
will be compared before and after to ensure that there are no thread leaks. Since
it's reasonable for other valid threads to be started (or stopped) during the test
a larger number of failed connections will be used and a small margin of error will
determine if the test is a PASS or FAIL</doc>
<status status="PASS" start="2026-05-25T01:56:36.610103" elapsed="4.406550"/>
</test>
<doc>OF Handshake threads should be closed if the connection has a
failure. This bug was fixed in the Helium SR3 release but
persisted in to the Lithium release. Once fixed, this will
catch any future regressions</doc>
<meta name="https://bugs.opendaylight.org/show_bug.cgi?id=2429"/>
<status status="PASS" start="2026-05-25T01:56:36.574634" elapsed="4.442357"/>
</suite>
<suite id="s1-s7" name="6917" source="/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Bug_Validation/6917.robot">
<kw name="Initialization Phase" type="SETUP">
<kw name="Start Mininet Single Controller" owner="MininetKeywords">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:41.098446" level="INFO">Clear any existing mininet</msg>
<arg>Clear any existing mininet</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:41.098160" elapsed="0.000342"/>
</kw>
<kw name="Clean Mininet System" owner="Utils">
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:41.101139" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:41.100814" elapsed="0.000385"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:41.100791" elapsed="0.000436"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:41.101534" level="INFO">index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:56:41.101666" level="INFO">${current_ssh_connection} = index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:56:41.101379" elapsed="0.000320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:41.102291" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:41.101854" elapsed="0.000485"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:41.102866" level="INFO">${conn_id} = 38</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:41.102498" elapsed="0.000396"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:56:41.103835" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:56:41.103919" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:56:41.103512" elapsed="0.000431"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:41.104124" elapsed="0.000386"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:56:41.105437" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:56:41.727894" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:56:41 UTC 2026

  System load:  0.11               Processes:             107
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:55:40 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:56:41.105079" elapsed="0.622972"/>
</kw>
<msg time="2026-05-25T01:56:41.728152" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:41.104697" elapsed="0.623621"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:56:41.103156" elapsed="0.625281"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:56:41.728955" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-05-25T01:56:42.864689" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:56:42.865097" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:56:42.865209" level="INFO">${stderr} = *** Removing excess controllers/ofprotocols/ofdatapaths/pings/noxes
killall controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec iv...</msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:56:41.728696" elapsed="1.136572"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:42.865742" elapsed="0.000566"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:42.867434" level="INFO">*** Removing excess controllers/ofprotocols/ofdatapaths/pings/noxes
killall controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec ivs ryu-manager 2&gt; /dev/null
killall -9 controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec ivs ryu-manager 2&gt; /dev/null
pkill -9 -f "sudo mnexec"
*** Removing junk from /tmp
rm -f /tmp/vconn* /tmp/vlogs* /tmp/*.out /tmp/*.log
*** Removing old X11 tunnels
*** Removing excess kernel datapaths
ps ax | egrep -o 'dp[0-9]+' | sed 's/dp/nl:/'
***  Removing OVS datapaths
ovs-vsctl --timeout=1 list-br
ovs-vsctl --timeout=1 list-br
*** Removing all links of the pattern foo-ethX
ip link show | egrep -o '([-_.[:alnum:]]+-eth[[:digit:]]+)'
ip link show
*** Killing stale mininet node processes
pkill -9 -f mininet:
*** Shutting down stale tunnels
pkill -9 -f Tunnel=Ethernet
pkill -9 -f .ssh/mn
rm -f ~/.ssh/mn/*
*** Cleanup complete.</msg>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:42.866768" elapsed="0.000789"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:42.868019" elapsed="0.000038"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:42.867727" elapsed="0.000431"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:42.867679" elapsed="0.000530"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:56:42.868563" elapsed="0.000066"/>
</return>
<status status="PASS" start="2026-05-25T01:56:42.868327" elapsed="0.000376"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:42.868293" elapsed="0.000464"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:42.868832" elapsed="0.000032"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:42.874523" elapsed="0.000655"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:42.875428" elapsed="0.000233"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:42.875882" elapsed="0.000152"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:56:42.869555" elapsed="0.006577"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:56:41.100314" elapsed="1.775948"/>
</kw>
<msg time="2026-05-25T01:56:42.876337" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:41.099689" elapsed="1.776719"/>
</kw>
<arg>${system}</arg>
<arg>sudo mn -c</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:56:41.099117" elapsed="1.777400"/>
</kw>
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:42.879473" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:42.879044" elapsed="0.000510"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:42.879017" elapsed="0.000571"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:42.879978" level="INFO">index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:56:42.880145" level="INFO">${current_ssh_connection} = index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:56:42.879793" elapsed="0.000390"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:42.880928" level="INFO">Attempting to execute command "sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:42.880395" elapsed="0.000599"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:42.881829" level="INFO">${conn_id} = 40</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:42.881316" elapsed="0.000568"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:56:42.883106" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:56:42.883217" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:56:42.882705" elapsed="0.000547"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:42.883476" elapsed="0.000460"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:56:42.885160" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:56:43.241027" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:56:41 UTC 2026

  System load:  0.11               Processes:             107
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:56:41 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:56:42.884702" elapsed="0.356491"/>
</kw>
<msg time="2026-05-25T01:56:43.241282" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:42.884198" elapsed="0.357158"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:56:42.882208" elapsed="0.359258"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:56:43.241999" level="INFO">Executing command 'sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh'.</msg>
<msg time="2026-05-25T01:56:43.274455" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-05-25T01:56:43.274707" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:56:43.274804" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:56:43.241746" elapsed="0.033108"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:43.275274" elapsed="0.000469"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:43.276850" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:43.276233" elapsed="0.000713"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:43.277442" elapsed="0.000039"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:43.277151" elapsed="0.000399"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:43.277096" elapsed="0.000530"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:56:43.277985" elapsed="0.000059"/>
</return>
<status status="PASS" start="2026-05-25T01:56:43.277749" elapsed="0.000400"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:43.277713" elapsed="0.000492"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:56:43.278281" elapsed="0.000032"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:43.283944" elapsed="0.000745"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:43.285112" elapsed="0.000345"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:56:43.285838" elapsed="0.000269"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:56:43.278971" elapsed="0.007205"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:56:42.878312" elapsed="0.407963"/>
</kw>
<msg time="2026-05-25T01:56:43.286328" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:42.877462" elapsed="0.408916"/>
</kw>
<arg>${system}</arg>
<arg>sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:56:42.876762" elapsed="0.409696"/>
</kw>
<arg>${mininet}</arg>
<status status="PASS" start="2026-05-25T01:56:41.098715" elapsed="2.187800"/>
</kw>
<kw name="Open_Connection_To_Tools_System" owner="SSHKeywords">
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:56:43.291287" level="INFO">${tools_connection} = 42</msg>
<var>${tools_connection}</var>
<arg>${ip_address}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:56:43.290825" elapsed="0.000489"/>
</kw>
<kw name="Flexible_Mininet_Login" owner="SSHKeywords">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:56:43.292965" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:56:43.293047" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:56:43.292687" elapsed="0.000398"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:43.293245" elapsed="0.000320"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:56:43.294461" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:56:43.617420" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:56:41 UTC 2026

  System load:  0.11               Processes:             107
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:56:43 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:56:43.294150" elapsed="0.323470"/>
</kw>
<msg time="2026-05-25T01:56:43.617712" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:43.293745" elapsed="0.324053"/>
</kw>
<arg>user=${user}</arg>
<arg>password=${password}</arg>
<arg>delay=${delay}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:56:43.292237" elapsed="0.325684"/>
</kw>
<msg time="2026-05-25T01:56:43.617976" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Flexible SSH Login</arg>
<arg>user=${user}</arg>
<arg>password=${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:56:43.291831" elapsed="0.326201"/>
</kw>
<doc>Call Flexible SSH Login, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:56:43.291495" elapsed="0.326629"/>
</kw>
<return>
<value>${tools_connection}</value>
<status status="PASS" start="2026-05-25T01:56:43.618187" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:56:43.618392" level="INFO">${mininet_conn_id} = 42</msg>
<var>${mininet_conn_id}</var>
<arg>ip_address=${mininet}</arg>
<arg>timeout=${timeout}</arg>
<doc>Open a connection to the tools system at ${ip_address} and return its identifier.</doc>
<status status="PASS" start="2026-05-25T01:56:43.290377" elapsed="0.328041"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:43.619162" level="INFO">${mininet_conn_id} = 42</msg>
<arg>${mininet_conn_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:43.618724" elapsed="0.000482"/>
</kw>
<if>
<branch type="IF" condition="'${custom}' != '${EMPTY}'">
<kw name="Put File" owner="SSHLibrary">
<arg>${custom}</arg>
<doc>Uploads file(s) from the local machine to the remote machine.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:43.621416" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:43.619290" elapsed="0.002186"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:43.619265" elapsed="0.002236"/>
</if>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:43.621970" level="INFO">Start mininet --topo tree,1 to 10.30.170.200</msg>
<arg>Start mininet ${options} to ${controller}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:43.621673" elapsed="0.000342"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:56:43.624775" level="INFO">sudo mn --controller 'remote,ip=10.30.170.200,port=6633' --topo tree,1 --switch ovsk,protocols=OpenFlow13</msg>
<arg>sudo mn --controller 'remote,ip=${controller},port=${ofport}' ${options} --switch ovsk,protocols=OpenFlow${ofversion}</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:56:43.622203" elapsed="0.002630"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:56:43.797128" level="INFO">[?2004l*** Creating network
*** Adding controller
*** Adding hosts:
h1 h2 
*** Adding switches:
s1 
*** Adding links:
(s1, h1) (s1, h2) 
*** Configuring hosts
h1 h2 
*** Starting controller
c0 
*** Starting 1 switches
s1 ...
*** Starting CLI:
mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:56:43.624992" elapsed="0.172229"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:43.797709" level="INFO">Check OVS configuratiom</msg>
<arg>Check OVS configuratiom</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:43.797466" elapsed="0.000293"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:56:43.799655" level="INFO">sh ovs-vsctl show</msg>
<arg>sh ovs-vsctl show</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:56:43.797933" elapsed="0.001779"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:56:43.810429" level="INFO">d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "ptcp:6654"
        Controller "tcp:10.30.170.200:6633"
        fail_mode: secure
        Port s1
            Interface s1
                type: internal
        Port s1-eth1
            Interface s1-eth1
        Port s1-eth2
            Interface s1-eth2
    ovs_version: "2.17.11"
mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:56:43.799870" elapsed="0.010622"/>
</kw>
<return>
<value>${mininet_conn_id}</value>
<status status="PASS" start="2026-05-25T01:56:43.810541" elapsed="0.000035"/>
</return>
<msg time="2026-05-25T01:56:43.810729" level="INFO">${mininet_conn_id} = 42</msg>
<var>${mininet_conn_id}</var>
<doc>Start Mininet with custom topology and connect to controller.</doc>
<status status="PASS" start="2026-05-25T01:56:41.095819" elapsed="2.714935"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:43.811355" level="INFO">${mininet_conn_id} = 42</msg>
<arg>${mininet_conn_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:43.811013" elapsed="0.000384"/>
</kw>
<kw name="Create Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:43.811888" level="INFO">Creating Session using : alias=session, url=http://10.30.170.200:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7f5abfbba610&gt;, timeout=None, proxies=None, verify=False,                     debug=0 </msg>
<arg>session</arg>
<arg>http://${ODL_SYSTEM_IP}:${RESTCONFPORT}</arg>
<arg>auth=${AUTH}</arg>
<arg>headers=${HEADERS_XML}</arg>
<doc>Create Session: create a HTTP session to a server</doc>
<status status="PASS" start="2026-05-25T01:56:43.811553" elapsed="0.000544"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:43.822682" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:43.822825" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 24-May-2026 01:56:43 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '222'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:56:43.823049" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:43.813126" elapsed="0.009974"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:43.825658" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:43.823298" elapsed="0.002408"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-05-25T01:56:43.828945" level="INFO">Item found from container 0 times.</msg>
<msg time="2026-05-25T01:56:43.829055" level="INFO">${count} = 0</msg>
<var>${count}</var>
<arg>${resp.text}</arg>
<arg>"node-id":"openflow:</arg>
<doc>Returns and logs how many times ``item`` is found from ``container``.</doc>
<status status="PASS" start="2026-05-25T01:56:43.825895" elapsed="0.003216"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<msg time="2026-05-25T01:56:43.829760" level="INFO">Argument types are:
&lt;class 'int'&gt;
&lt;class 'str'&gt;</msg>
<msg time="2026-05-25T01:56:43.829904" level="FAIL">0.0 != 1.0</msg>
<arg>${count}</arg>
<arg>${switches}</arg>
<doc>Fails if objects are unequal after converting them to real numbers.</doc>
<status status="FAIL" start="2026-05-25T01:56:43.829364" elapsed="0.000638">0.0 != 1.0</status>
</kw>
<arg>1</arg>
<doc>Check switches are in the topology.</doc>
<status status="FAIL" start="2026-05-25T01:56:43.812840" elapsed="0.017333">0.0 != 1.0</status>
</kw>
<kw name="Check Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:44.844216" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:44.845315" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '921'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:56:44.845492" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:44.832206" elapsed="0.013323"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:44.853368" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:44.845902" elapsed="0.007658"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-05-25T01:56:44.859980" level="INFO">Item found from container 1 time.</msg>
<msg time="2026-05-25T01:56:44.860222" level="INFO">${count} = 1</msg>
<var>${count}</var>
<arg>${resp.text}</arg>
<arg>"node-id":"openflow:</arg>
<doc>Returns and logs how many times ``item`` is found from ``container``.</doc>
<status status="PASS" start="2026-05-25T01:56:44.854302" elapsed="0.005979"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<msg time="2026-05-25T01:56:44.861341" level="INFO">Argument types are:
&lt;class 'int'&gt;
&lt;class 'str'&gt;</msg>
<arg>${count}</arg>
<arg>${switches}</arg>
<doc>Fails if objects are unequal after converting them to real numbers.</doc>
<status status="PASS" start="2026-05-25T01:56:44.860967" elapsed="0.000437"/>
</kw>
<arg>1</arg>
<doc>Check switches are in the topology.</doc>
<status status="PASS" start="2026-05-25T01:56:44.831334" elapsed="0.030152"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Switches In Topology</arg>
<arg>1</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:56:43.812272" elapsed="1.049270"/>
</kw>
<doc>Starts mininet and verify if topology is in operational datastore.</doc>
<status status="PASS" start="2026-05-25T01:56:41.095418" elapsed="3.766188"/>
</kw>
<test id="s1-s7-t1" name="Add Delete Same Flow" line="23">
<for flavor="IN RANGE">
<iter>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add And Delete Flow">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:56:44.867910" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:56:44.868112" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:56:44.867755" elapsed="0.000389"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:56:44.868892" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfb09b20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:56:44.868340" elapsed="0.000581"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:56:44.869438" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:56:44.869147" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:56:44.869923" level="INFO">${flow_id} = 144</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:56:44.869654" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:56:44.870429" level="INFO">${flow_priority} = 21</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:56:44.870158" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:56:44.871505" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:56:44.870646" elapsed="0.000890"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:44.872096" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:44.871740" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:44.872685" level="INFO">${flow_id} = 144</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:44.872333" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:44.873269" level="INFO">${flow_priority} = 21</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:44.872919" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:44.873813" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:44.873501" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:44.874382" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:44.874048" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:44.874938" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfb09b20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:44.874619" elapsed="0.000360"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:56:44.867378" elapsed="0.007654"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:44.883220" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:44.882951" elapsed="0.000376"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:44.909955" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Content-Length': '1266', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:56:44.910164" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:44.910399" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:44.883490" elapsed="0.026970"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:44.917186" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:44.911014" elapsed="0.006237"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:56:44.882504" elapsed="0.034841"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:56:44.928956" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:56:44.928624" elapsed="0.000359"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:44.948465" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:44.949982" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '1056'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:56:44.950279" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:44.929160" elapsed="0.021180"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:44.951449" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:44.950808" elapsed="0.000747"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:44.957309" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:44.951983" elapsed="0.005436"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:56:44.959633" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:44.957511" elapsed="0.002187"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:44.957481" elapsed="0.002243"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:56:44.963455" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:56:44.963502" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:56:44.959911" elapsed="0.003614"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:44.965791" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:44.963602" elapsed="0.002245"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:44.963583" elapsed="0.002287"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:56:44.965904" elapsed="0.000041"/>
</return>
<msg time="2026-05-25T01:56:44.966129" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:56:44.966173" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:56:44.928167" elapsed="0.038029"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:56:44.968633" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:44.966768" elapsed="0.001910"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:44.966749" elapsed="0.001951"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:44.969315" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:44.968894" elapsed="0.000448"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:44.969896" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:44.969543" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:56:44.969973" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:56:44.970167" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:56:44.966434" elapsed="0.003759"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:56:44.970395" elapsed="0.000400"/>
</kw>
<arg>${True}</arg>
<arg>${data}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:56:44.927464" elapsed="0.043394"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Operational Flow</arg>
<arg>${True}</arg>
<arg>${data}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:56:44.917591" elapsed="0.053316"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:56:44.983587" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:56:44.983737" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:56:44.983447" elapsed="0.000319"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:56:44.984414" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfac7c40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:56:44.983958" elapsed="0.000483"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:56:44.984928" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:56:44.984647" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:56:44.985433" level="INFO">${flow_id} = 144</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:56:44.985163" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:56:44.985915" level="INFO">${flow_priority} = 21</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:56:44.985647" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:56:44.986839" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:56:44.986158" elapsed="0.000711"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:44.987426" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:44.987080" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:44.987988" level="INFO">${flow_id} = 144</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:44.987658" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:44.988677" level="INFO">${flow_priority} = 21</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:44.988314" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:44.989252" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:44.988911" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:44.989819" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:44.989488" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:44.990403" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfac7c40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:44.990056" elapsed="0.000404"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:56:44.983085" elapsed="0.007430"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:44.991102" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:44.990702" elapsed="0.000432"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:44.991565" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:44.991324" elapsed="0.000306"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.002463" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:56:45.002158" elapsed="0.000332"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:45.009297" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:45.009430" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '831'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:56:45.009546" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:45.002648" elapsed="0.006924"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.010022" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:45.009767" elapsed="0.000320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.012543" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:45.010269" elapsed="0.002368"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:56:45.015498" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:45.012711" elapsed="0.002856"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:45.012689" elapsed="0.002909"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:56:45.020458" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:56:45.020560" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:56:45.015847" elapsed="0.004750"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:45.023175" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:45.020702" elapsed="0.002530"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:45.020674" elapsed="0.002582"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:56:45.023290" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:56:45.023483" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:56:45.023527" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:56:45.001787" elapsed="0.021762"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:56:45.026143" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:45.024123" elapsed="0.002066"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:45.024105" elapsed="0.002106"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.026796" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:45.026396" elapsed="0.000427"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.027392" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:45.027023" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:56:45.027477" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:56:45.027654" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:56:45.023780" elapsed="0.003899"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:56:45.027873" elapsed="0.000398"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:56:45.001202" elapsed="0.027133"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.037312" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:56:45.036994" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:45.044277" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:45.044486" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '1056'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:56:45.044655" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:45.037500" elapsed="0.007192"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.045353" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:45.044972" elapsed="0.000445"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.048993" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:45.045669" elapsed="0.003496"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:56:45.052389" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:45.049268" elapsed="0.003190"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:45.049240" elapsed="0.003284"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:56:45.057691" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:56:45.057757" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:56:45.052783" elapsed="0.005007"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:45.061002" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:45.057898" elapsed="0.003205"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:45.057871" elapsed="0.003268"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:56:45.061186" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:56:45.061463" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:56:45.061525" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:56:45.036580" elapsed="0.024977"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:56:45.065041" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:45.062379" elapsed="0.002731"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:45.062352" elapsed="0.002781"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.065718" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:45.065319" elapsed="0.000426"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.066316" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:45.065947" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:56:45.066393" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:56:45.066571" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:56:45.061884" elapsed="0.004712"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:56:45.066792" elapsed="0.000405"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:56:45.035914" elapsed="0.031348"/>
</kw>
<arg>${flowfile}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:56:44.979248" elapsed="0.088072"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Datastore Presence</arg>
<arg>${flowfile}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:56:44.971098" elapsed="0.096278"/>
</kw>
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:45.083839" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:45.083884" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:45.083974" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:45.075294" elapsed="0.008706"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.088280" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:45.084219" elapsed="0.004165"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:56:45.074860" elapsed="0.013671"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.102904" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:56:45.102599" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:45.109047" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:45.109224" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:56:45.109321" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:45.103109" elapsed="0.006237"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.109795" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:45.109543" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.112335" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:45.110020" elapsed="0.002368"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:56:45.114618" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:45.112480" elapsed="0.002189"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:45.112457" elapsed="0.002236"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:56:45.118220" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:56:45.118285" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:56:45.114874" elapsed="0.003445"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:45.121608" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:45.118427" elapsed="0.003261"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:45.118400" elapsed="0.003322"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:56:45.121769" elapsed="0.000042"/>
</return>
<msg time="2026-05-25T01:56:45.122056" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:56:45.122147" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:56:45.102176" elapsed="0.020004"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:56:45.125641" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:45.122978" elapsed="0.002727"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:45.122953" elapsed="0.002783"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.126575" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:45.125995" elapsed="0.000619"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.127516" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:45.126896" elapsed="0.000658"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:56:45.127626" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:56:45.127875" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:56:45.122512" elapsed="0.005398"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:56:45.128183" elapsed="0.000413"/>
</kw>
<arg>${False}</arg>
<arg>${data}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:56:45.101536" elapsed="0.027125"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Operational Flow</arg>
<arg>${False}</arg>
<arg>${data}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:56:45.088904" elapsed="0.039805"/>
</kw>
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:56:45.141177" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:56:45.141322" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:56:45.141015" elapsed="0.000336"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:56:45.141972" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc092980&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:56:45.141544" elapsed="0.000456"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:56:45.142500" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:56:45.142213" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:56:45.143040" level="INFO">${flow_id} = 144</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:56:45.142760" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:56:45.143557" level="INFO">${flow_priority} = 21</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:56:45.143279" elapsed="0.000304"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:56:45.144503" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:56:45.143777" elapsed="0.000763"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.145104" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:45.144737" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.145688" level="INFO">${flow_id} = 144</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:45.145350" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.146283" level="INFO">${flow_priority} = 21</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:45.145924" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.146876" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:45.146547" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.147466" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:45.147129" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.148040" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc092980&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:45.147705" elapsed="0.000392"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:56:45.140658" elapsed="0.007497"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.148763" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:45.148344" elapsed="0.000451"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.149280" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:45.148985" elapsed="0.000361"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.158630" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:56:45.158325" elapsed="0.000332"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:45.170453" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:45.170950" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:56:45.171285" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:45.158817" elapsed="0.012527"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.172447" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:45.171782" elapsed="0.000778"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.178725" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:45.172968" elapsed="0.005875"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:56:45.182292" elapsed="0.000030"/>
</return>
<status status="PASS" start="2026-05-25T01:56:45.179008" elapsed="0.003352"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:45.178961" elapsed="0.003424"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:56:45.182569" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:45.182874" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:45.182673" elapsed="0.000256"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:56:45.182651" elapsed="0.000300"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:56:45.182983" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:56:45.184899" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:56:45.184944" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:56:45.157943" elapsed="0.027025"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:56:45.187398" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:45.185553" elapsed="0.001890"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:45.185535" elapsed="0.001930"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.188045" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:45.187648" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.188698" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:45.188292" elapsed="0.000432"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:56:45.188775" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:56:45.188953" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:56:45.185222" elapsed="0.003756"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:56:45.189192" elapsed="0.000385"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:56:45.157356" elapsed="0.032285"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.198533" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:56:45.198235" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:45.207356" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:45.207466" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:56:45.207562" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:45.198717" elapsed="0.008870"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.208039" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:45.207786" elapsed="0.000325"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.212811" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:45.208292" elapsed="0.004799"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:56:45.217998" elapsed="0.000034"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:45.213260" elapsed="0.004878"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:45.213215" elapsed="0.004975"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:56:45.222910" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:56:45.222957" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:56:45.218591" elapsed="0.004390"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:45.225100" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:45.223058" elapsed="0.002101"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:45.223038" elapsed="0.002144"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:56:45.225215" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:56:45.225410" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:56:45.225454" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:56:45.197800" elapsed="0.027677"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:56:45.227891" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:45.226041" elapsed="0.001895"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:45.226022" elapsed="0.001936"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.228612" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:45.228189" elapsed="0.000450"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:45.229208" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:45.228840" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:56:45.229285" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:56:45.229462" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:56:45.225709" elapsed="0.003779"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:56:45.229683" elapsed="0.000470"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:56:45.197170" elapsed="0.033048"/>
</kw>
<arg>${flowfile}</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:56:45.136727" elapsed="0.093556"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.230910" level="INFO">Slept 5 seconds.</msg>
<arg>5</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-05-25T01:56:45.230470" elapsed="5.000733"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn" type="TEARDOWN">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:50.256712" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:50.257989" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/yang-data+xml', 'Content-Length': '413'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-path xmlns:a="urn:opendaylight:inventory" xmlns:b="urn:opendaylight:flow:inventory"&gt;/a:nodes/a:node[a:id='openflow:1']/b:table[b:id='2']/b:flow[b:id='144']&lt;/error-path&gt;&lt;error-message&gt;Data does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:56:50.258231" level="INFO">${resp} = None</msg>
<msg time="2026-05-25T01:56:50.258292" level="FAIL">Url: http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 Expected status: 409 != 204</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="FAIL" start="2026-05-25T01:56:50.246309" elapsed="0.012649">Url: http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 Expected status: 409 != 204</status>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.262734" level="FAIL">Resolving variable '${resp.text}' failed: AttributeError: 'NoneType' object has no attribute 'text'</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="FAIL" start="2026-05-25T01:56:50.259330" elapsed="0.003456">Resolving variable '${resp.text}' failed: AttributeError: 'NoneType' object has no attribute 'text'</status>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="FAIL" start="2026-05-25T01:56:50.245798" elapsed="0.017178">Several failures occurred:

1) Url: http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 Expected status: 409 != 204

2) Resolving variable '${resp.text}' failed: AttributeError: 'NoneType' object has no attribute 'text'</status>
</kw>
<arg>FlowLib.Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:56:50.231928" elapsed="0.031253"/>
</kw>
<arg>f21.xml</arg>
<doc>Add a Delete a Flow and verify presence in Datastore. The 5 sec sleep is required to reproduce the bug.</doc>
<status status="PASS" start="2026-05-25T01:56:44.863453" elapsed="5.399810"/>
</kw>
<arg>Add And Delete Flow</arg>
<arg>f21.xml</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:56:44.862982" elapsed="5.400346"/>
</kw>
<var name="${i}">0</var>
<status status="PASS" start="2026-05-25T01:56:44.862777" elapsed="5.400596"/>
</iter>
<iter>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add And Delete Flow">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:56:50.269050" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:56:50.269221" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:56:50.268900" elapsed="0.000350"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:56:50.269907" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfac7ce0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:56:50.269463" elapsed="0.000472"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:56:50.270439" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:56:50.270149" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:56:50.270933" level="INFO">${flow_id} = 144</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:56:50.270659" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:56:50.271445" level="INFO">${flow_priority} = 21</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:56:50.271169" elapsed="0.000302"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:56:50.272440" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:56:50.271662" elapsed="0.000809"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.273009" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:50.272668" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.273597" level="INFO">${flow_id} = 144</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:50.273257" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.274170" level="INFO">${flow_priority} = 21</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:50.273827" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.274719" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:50.274405" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.275288" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:50.274953" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.275850" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfac7ce0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:50.275527" elapsed="0.000363"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:56:50.268537" elapsed="0.007408"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.284159" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:50.283810" elapsed="0.000458"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:50.298236" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Content-Length': '1266', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:56:50.298322" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:50.298532" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:50.284430" elapsed="0.014158"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.304017" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:50.299041" elapsed="0.005137"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:56:50.283378" elapsed="0.020990"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.317049" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:56:50.316735" elapsed="0.000358"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:50.327957" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:50.328141" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '1056'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:56:50.328252" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:50.317255" elapsed="0.011023"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.329297" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:50.328696" elapsed="0.000734"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.335023" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:50.329880" elapsed="0.005389"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:56:50.339182" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:50.335440" elapsed="0.003798"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:50.335392" elapsed="0.003869"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:56:50.342909" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:56:50.342957" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:56:50.339444" elapsed="0.003537"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:50.345255" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:50.343057" elapsed="0.002255"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:50.343038" elapsed="0.002298"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:56:50.345370" elapsed="0.000048"/>
</return>
<msg time="2026-05-25T01:56:50.345587" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:56:50.345631" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:56:50.316312" elapsed="0.029341"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:56:50.348103" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:50.346243" elapsed="0.001908"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:50.346225" elapsed="0.001948"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.348765" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:50.348363" elapsed="0.000429"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.349364" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:50.348993" elapsed="0.000422"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:56:50.349468" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:56:50.349648" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:56:50.345894" elapsed="0.003780"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:56:50.349893" elapsed="0.000416"/>
</kw>
<arg>${True}</arg>
<arg>${data}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:56:50.315650" elapsed="0.034723"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Operational Flow</arg>
<arg>${True}</arg>
<arg>${data}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:56:50.304819" elapsed="0.045604"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:56:50.363120" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:56:50.363273" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:56:50.362959" elapsed="0.000344"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:56:50.363920" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38b7e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:56:50.363498" elapsed="0.000450"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:56:50.364447" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:56:50.364160" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:56:50.364939" level="INFO">${flow_id} = 144</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:56:50.364666" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:56:50.365458" level="INFO">${flow_priority} = 21</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:56:50.365170" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:56:50.366390" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:56:50.365677" elapsed="0.000744"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.366968" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:50.366618" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.367550" level="INFO">${flow_id} = 144</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:50.367216" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.368208" level="INFO">${flow_priority} = 21</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:50.367825" elapsed="0.000428"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.368819" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:50.368446" elapsed="0.000420"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.369424" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:50.369059" elapsed="0.000420"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.370012" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38b7e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:50.369677" elapsed="0.000376"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:56:50.362600" elapsed="0.007525"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.370755" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:50.370318" elapsed="0.000477"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.371291" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:50.370990" elapsed="0.000369"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.381456" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:56:50.381121" elapsed="0.000363"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:50.392509" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:50.392811" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '831'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:56:50.393053" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:50.381643" elapsed="0.011512"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.394233" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:50.393632" elapsed="0.000703"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.399873" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:50.394737" elapsed="0.005383"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:56:50.403541" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:50.400292" elapsed="0.003300"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:50.400243" elapsed="0.003372"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:56:50.407080" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:56:50.407129" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:56:50.403795" elapsed="0.003358"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:50.409214" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:50.407227" elapsed="0.002045"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:50.407207" elapsed="0.002089"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:56:50.409330" elapsed="0.000043"/>
</return>
<msg time="2026-05-25T01:56:50.409540" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:56:50.409584" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:56:50.380744" elapsed="0.028863"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:56:50.412172" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:50.410182" elapsed="0.002036"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:50.410164" elapsed="0.002076"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.412824" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:50.412426" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.413447" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:50.413052" elapsed="0.000422"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:56:50.413525" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:56:50.413702" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:56:50.409835" elapsed="0.003893"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:56:50.413921" elapsed="0.000406"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:56:50.380149" elapsed="0.034243"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.423275" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:56:50.422959" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:50.434029" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:50.434217" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '1056'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:56:50.434344" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:50.423462" elapsed="0.010908"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.434834" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:50.434573" elapsed="0.000306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.437472" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:50.435092" elapsed="0.002510"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:56:50.442157" elapsed="0.000068"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:50.437682" elapsed="0.004645"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:50.437659" elapsed="0.004730"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:56:50.450922" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:56:50.450970" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:56:50.442829" elapsed="0.008165"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:50.453321" elapsed="0.000038"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:50.451089" elapsed="0.002306"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:50.451053" elapsed="0.002367"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:56:50.453457" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:56:50.453669" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:56:50.453713" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:56:50.422545" elapsed="0.031191"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:56:50.456274" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:50.454394" elapsed="0.001976"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:50.454374" elapsed="0.002020"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.457028" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:50.456606" elapsed="0.000451"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.457673" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:50.457285" elapsed="0.000415"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:56:50.457752" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:56:50.457933" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:56:50.454023" elapsed="0.003935"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:56:50.458175" elapsed="0.000408"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:56:50.421896" elapsed="0.036751"/>
</kw>
<arg>${flowfile}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:56:50.358768" elapsed="0.099939"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Datastore Presence</arg>
<arg>${flowfile}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:56:50.350593" elapsed="0.108173"/>
</kw>
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:50.479128" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:50.479195" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:50.479330" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:50.466554" elapsed="0.012813"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.482760" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:50.479643" elapsed="0.003180"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:56:50.466139" elapsed="0.016774"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.496167" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:56:50.495703" elapsed="0.000506"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:50.504252" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:50.504437" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:56:50.504537" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:50.496434" elapsed="0.008129"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.505020" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:50.504760" elapsed="0.000322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.507553" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:50.505265" elapsed="0.002342"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:56:50.509843" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:50.507681" elapsed="0.002212"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:50.507659" elapsed="0.002257"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:56:50.515735" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:56:50.515803" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:56:50.510110" elapsed="0.005728"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:50.518798" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:50.515948" elapsed="0.002932"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:50.515920" elapsed="0.002993"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:56:50.518961" elapsed="0.000043"/>
</return>
<msg time="2026-05-25T01:56:50.519262" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:56:50.519357" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:56:50.495087" elapsed="0.024318"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:56:50.522805" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:50.520308" elapsed="0.002544"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:50.520281" elapsed="0.002593"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.523499" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:50.523083" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.524165" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:50.523754" elapsed="0.000440"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:56:50.524249" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:56:50.524432" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:56:50.519797" elapsed="0.004660"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:56:50.524656" elapsed="0.000441"/>
</kw>
<arg>${False}</arg>
<arg>${data}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:56:50.494194" elapsed="0.030971"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Operational Flow</arg>
<arg>${False}</arg>
<arg>${data}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:56:50.483180" elapsed="0.042032"/>
</kw>
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:56:50.537501" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:56:50.537668" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:56:50.537351" elapsed="0.000347"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:56:50.538401" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc0d6520&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:56:50.537899" elapsed="0.000532"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:56:50.538939" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:56:50.538630" elapsed="0.000342"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:56:50.539524" level="INFO">${flow_id} = 144</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:56:50.539237" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:56:50.540031" level="INFO">${flow_priority} = 21</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:56:50.539743" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:56:50.541158" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:56:50.540270" elapsed="0.000920"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.541761" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:50.541402" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.542379" level="INFO">${flow_id} = 144</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:50.542012" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.542967" level="INFO">${flow_priority} = 21</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:50.542620" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.543568" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:50.543234" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.544195" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:50.543806" elapsed="0.000438"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.544776" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc0d6520&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:50.544438" elapsed="0.000381"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:56:50.536949" elapsed="0.007927"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.545520" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:50.545094" elapsed="0.000459"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.545990" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:50.545744" elapsed="0.000334"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.555388" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:56:50.554966" elapsed="0.000455"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:50.565390" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:50.565642" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:56:50.565790" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:50.555624" elapsed="0.010192"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.566287" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:50.566014" elapsed="0.000363"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.572834" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:50.566828" elapsed="0.006175"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:56:50.578169" elapsed="0.000069"/>
</return>
<status status="PASS" start="2026-05-25T01:56:50.573296" elapsed="0.005027"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:50.573208" elapsed="0.005145"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:56:50.578540" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:50.578804" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:50.578633" elapsed="0.000224"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:56:50.578615" elapsed="0.000265"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:56:50.578913" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:56:50.580816" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:56:50.580862" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:56:50.554490" elapsed="0.026395"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:56:50.583342" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:50.581497" elapsed="0.001892"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:50.581478" elapsed="0.001933"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.584005" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:50.583597" elapsed="0.000435"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.584608" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:50.584252" elapsed="0.000383"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:56:50.584686" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:56:50.584865" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:56:50.581139" elapsed="0.003752"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:56:50.585104" elapsed="0.000414"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:56:50.553850" elapsed="0.031731"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.594535" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:56:50.594228" elapsed="0.000335"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:50.604588" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:50.604701" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:56:50.604817" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:50.594723" elapsed="0.010126"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.605349" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:50.605051" elapsed="0.000345"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.608003" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:50.605576" elapsed="0.002530"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:56:50.610395" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:50.608180" elapsed="0.002285"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:50.608160" elapsed="0.002336"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:56:50.614908" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:56:50.614974" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:56:50.610744" elapsed="0.004262"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:50.617922" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:50.615137" elapsed="0.002865"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:50.615108" elapsed="0.002929"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:56:50.618106" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:56:50.618381" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:56:50.618441" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:56:50.593782" elapsed="0.024690"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:56:50.621895" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:50.619301" elapsed="0.002657"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:50.619274" elapsed="0.002715"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.622695" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:50.622267" elapsed="0.000456"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:50.623293" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:50.622923" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:56:50.623370" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:56:50.623547" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:56:50.618799" elapsed="0.004773"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:56:50.623768" elapsed="0.000401"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:56:50.593107" elapsed="0.031126"/>
</kw>
<arg>${flowfile}</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:56:50.533094" elapsed="0.091196"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.624949" level="INFO">Slept 5 seconds.</msg>
<arg>5</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-05-25T01:56:50.624474" elapsed="5.000754"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn" type="TEARDOWN">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:55.648616" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:55.648934" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/yang-data+xml', 'Content-Length': '413'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-path xmlns:a="urn:opendaylight:inventory" xmlns:b="urn:opendaylight:flow:inventory"&gt;/a:nodes/a:node[a:id='openflow:1']/b:table[b:id='2']/b:flow[b:id='144']&lt;/error-path&gt;&lt;error-message&gt;Data does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:56:55.649179" level="INFO">${resp} = None</msg>
<msg time="2026-05-25T01:56:55.649240" level="FAIL">Url: http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 Expected status: 409 != 204</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="FAIL" start="2026-05-25T01:56:55.639518" elapsed="0.010323">Url: http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 Expected status: 409 != 204</status>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.653624" level="FAIL">Resolving variable '${resp.text}' failed: AttributeError: 'NoneType' object has no attribute 'text'</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="FAIL" start="2026-05-25T01:56:55.650206" elapsed="0.003466">Resolving variable '${resp.text}' failed: AttributeError: 'NoneType' object has no attribute 'text'</status>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="FAIL" start="2026-05-25T01:56:55.639042" elapsed="0.014819">Several failures occurred:

1) Url: http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 Expected status: 409 != 204

2) Resolving variable '${resp.text}' failed: AttributeError: 'NoneType' object has no attribute 'text'</status>
</kw>
<arg>FlowLib.Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:56:55.625953" elapsed="0.028082"/>
</kw>
<arg>f21.xml</arg>
<doc>Add a Delete a Flow and verify presence in Datastore. The 5 sec sleep is required to reproduce the bug.</doc>
<status status="PASS" start="2026-05-25T01:56:50.264318" elapsed="5.389818"/>
</kw>
<arg>Add And Delete Flow</arg>
<arg>f21.xml</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:56:50.263771" elapsed="5.390428"/>
</kw>
<var name="${i}">1</var>
<status status="PASS" start="2026-05-25T01:56:50.263518" elapsed="5.390727"/>
</iter>
<iter>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add And Delete Flow">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:56:55.661023" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:56:55.661251" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:56:55.660820" elapsed="0.000471"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:56:55.662187" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38af20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:56:55.661562" elapsed="0.000665"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:56:55.662914" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:56:55.662499" elapsed="0.000452"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:56:55.663623" level="INFO">${flow_id} = 144</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:56:55.663238" elapsed="0.000421"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:56:55.664328" level="INFO">${flow_priority} = 21</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:56:55.663928" elapsed="0.000441"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:56:55.665647" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:56:55.664636" elapsed="0.001054"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.666455" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:55.665964" elapsed="0.000549"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.667295" level="INFO">${flow_id} = 144</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:55.666820" elapsed="0.000532"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.667967" level="INFO">${flow_priority} = 21</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:55.667639" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.668528" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:55.668213" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.669093" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:55.668760" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.669655" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38af20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:55.669331" elapsed="0.000365"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:56:55.660318" elapsed="0.009431"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.677942" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:55.677688" elapsed="0.000354"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:55.694302" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Content-Length': '1266', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:56:55.694454" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:55.694680" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:55.678216" elapsed="0.016523"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.700441" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:55.695202" elapsed="0.005338"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:56:55.677257" elapsed="0.023412"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.714895" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:56:55.714430" elapsed="0.000502"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:55.724619" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:55.724934" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '1056'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:56:55.725224" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:55.715174" elapsed="0.010108"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.726319" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:55.725716" elapsed="0.000704"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.732024" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:55.726846" elapsed="0.005417"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:56:55.736511" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:55.732434" elapsed="0.004133"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:55.732385" elapsed="0.004206"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:56:55.740250" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:56:55.740296" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:56:55.736770" elapsed="0.003549"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:55.742568" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:55.740397" elapsed="0.002239"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:55.740378" elapsed="0.002283"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:56:55.742694" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:56:55.742892" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:56:55.742936" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:56:55.713822" elapsed="0.029137"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:56:55.745377" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:55.743543" elapsed="0.001879"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:55.743525" elapsed="0.001918"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.746029" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:55.745630" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.746653" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:55.746272" elapsed="0.000408"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:56:55.746730" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:56:55.746925" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:56:55.743209" elapsed="0.003741"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:56:55.747165" elapsed="0.000397"/>
</kw>
<arg>${True}</arg>
<arg>${data}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:56:55.712910" elapsed="0.034719"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Operational Flow</arg>
<arg>${True}</arg>
<arg>${data}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:56:55.701103" elapsed="0.046577"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:56:55.760314" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:56:55.760444" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:56:55.760175" elapsed="0.000299"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:56:55.761272" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38b380&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:56:55.760731" elapsed="0.000573"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:56:55.761861" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:56:55.761541" elapsed="0.000352"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:56:55.762496" level="INFO">${flow_id} = 144</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:56:55.762167" elapsed="0.000358"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:56:55.763152" level="INFO">${flow_priority} = 21</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:56:55.762801" elapsed="0.000380"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:56:55.764232" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:56:55.763425" elapsed="0.000843"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.765018" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:55.764633" elapsed="0.000467"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.765716" level="INFO">${flow_id} = 144</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:55.765335" elapsed="0.000427"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.766472" level="INFO">${flow_priority} = 21</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:55.766045" elapsed="0.000476"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.767267" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:55.766807" elapsed="0.000514"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.767935" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:55.767555" elapsed="0.000435"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.768608" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38b380&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:55.768231" elapsed="0.000432"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:56:55.759801" elapsed="0.008929"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.769443" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:55.768952" elapsed="0.000528"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.769993" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:55.769706" elapsed="0.000362"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.779594" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:56:55.779285" elapsed="0.000336"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:55.789852" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:55.789992" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '831'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:56:55.790122" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:55.779780" elapsed="0.010369"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.790620" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:55.790346" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.793116" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:55.790845" elapsed="0.002367"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:56:55.795395" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:55.793285" elapsed="0.002160"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:55.793265" elapsed="0.002203"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:56:55.798952" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:56:55.798998" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:56:55.795647" elapsed="0.003374"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:55.801061" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:55.799111" elapsed="0.002020"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:55.799090" elapsed="0.002065"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:56:55.801189" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:56:55.801383" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:56:55.801427" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:56:55.778902" elapsed="0.022547"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:56:55.804060" elapsed="0.000029"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:55.802048" elapsed="0.002074"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:55.802030" elapsed="0.002114"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.804727" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:55.804329" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.805320" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:55.804953" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:56:55.805396" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:56:55.805572" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:56:55.801718" elapsed="0.003879"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:56:55.805790" elapsed="0.000402"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:56:55.778227" elapsed="0.028029"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.815227" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:56:55.814909" elapsed="0.000347"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:55.824731" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:55.824868" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '1056'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:56:55.824986" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:55.815413" elapsed="0.009598"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.825483" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:55.825230" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.828624" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:55.825707" elapsed="0.003032"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:56:55.830918" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:55.828818" elapsed="0.002148"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:55.828797" elapsed="0.002192"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:56:55.834611" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:56:55.834658" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:56:55.831183" elapsed="0.003498"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:55.836921" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:55.834757" elapsed="0.002219"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:55.834738" elapsed="0.002262"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:56:55.837033" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:56:55.837242" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:56:55.837286" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:56:55.814474" elapsed="0.022834"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:56:55.839730" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:55.837874" elapsed="0.001901"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:55.837856" elapsed="0.001941"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.840401" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:55.839982" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.840982" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:55.840630" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:56:55.841058" elapsed="0.000043"/>
</return>
<msg time="2026-05-25T01:56:55.841252" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:56:55.837540" elapsed="0.003737"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:56:55.841471" elapsed="0.000381"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:56:55.813817" elapsed="0.028098"/>
</kw>
<arg>${flowfile}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:56:55.755954" elapsed="0.086017"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Datastore Presence</arg>
<arg>${flowfile}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:56:55.747847" elapsed="0.094181"/>
</kw>
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:55.862320" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:55.862366" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:55.862456" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:55.849751" elapsed="0.012730"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.864865" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:55.862690" elapsed="0.002218"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:56:55.849341" elapsed="0.015623"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.874259" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:56:55.873938" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:55.883507" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:55.883666" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:56:55.883766" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:55.874444" elapsed="0.009348"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.884271" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:55.883988" elapsed="0.000329"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.886766" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:55.884496" elapsed="0.002322"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:56:55.888990" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:55.886889" elapsed="0.002150"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:55.886868" elapsed="0.002194"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:56:55.892326" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:56:55.892373" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:56:55.889257" elapsed="0.003140"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:55.894444" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:55.892474" elapsed="0.002026"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:55.892454" elapsed="0.002094"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:56:55.894585" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:56:55.894779" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:56:55.894822" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:56:55.873518" elapsed="0.021326"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:56:55.897271" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:55.895423" elapsed="0.001893"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:55.895405" elapsed="0.001932"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.897917" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:55.897521" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.898515" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:55.898160" elapsed="0.000414"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:56:55.898625" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:56:55.898804" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:56:55.895089" elapsed="0.003740"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:56:55.899025" elapsed="0.000402"/>
</kw>
<arg>${False}</arg>
<arg>${data}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:56:55.872885" elapsed="0.026606"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Operational Flow</arg>
<arg>${False}</arg>
<arg>${data}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:56:55.865147" elapsed="0.034392"/>
</kw>
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:56:55.911677" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:56:55.911834" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:56:55.911536" elapsed="0.000327"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:56:55.912492" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfd5c2c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:56:55.912055" elapsed="0.000466"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:56:55.913001" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:56:55.912715" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:56:55.913556" level="INFO">${flow_id} = 144</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:56:55.913279" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:56:55.914044" level="INFO">${flow_priority} = 21</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:56:55.913772" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:56:55.915208" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:56:55.914278" elapsed="0.000961"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.915786" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:55.915436" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.916387" level="INFO">${flow_id} = 144</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:55.916027" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.916962" level="INFO">${flow_priority} = 21</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:55.916623" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.917537" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:55.917210" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.918127" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:55.917778" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.918710" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfd5c2c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:56:55.918362" elapsed="0.000389"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:56:55.911175" elapsed="0.007631"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.919397" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:55.918997" elapsed="0.000431"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.919887" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:55.919646" elapsed="0.000303"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.928767" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:56:55.928469" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:55.938579" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:55.938784" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:56:55.938913" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:55.928947" elapsed="0.009992"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.939416" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:55.939161" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.941934" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:55.939639" elapsed="0.002345"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:56:55.944183" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-05-25T01:56:55.942053" elapsed="0.002195"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:55.942034" elapsed="0.002238"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:56:55.944451" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:55.944710" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:55.944542" elapsed="0.000220"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:56:55.944526" elapsed="0.000258"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:56:55.944815" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:56:55.946694" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:56:55.946738" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:56:55.928117" elapsed="0.018643"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:56:55.949179" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:55.947336" elapsed="0.001888"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:55.947318" elapsed="0.001928"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.949825" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:55.949430" elapsed="0.000421"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.950419" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:55.950052" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:56:55.950507" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:56:55.950698" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:56:55.946987" elapsed="0.003738"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:56:55.950921" elapsed="0.000399"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:56:55.927531" elapsed="0.023852"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.960365" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:56:55.960053" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:56:55.968278" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:56:55.968387" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:56:55.968481" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:56:55.960549" elapsed="0.007957"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.968957" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:55.968706" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.971624" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:56:55.969199" elapsed="0.002518"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:56:55.974191" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:55.971790" elapsed="0.002468"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:55.971770" elapsed="0.002519"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:56:55.978761" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:56:55.978834" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:56:55.974575" elapsed="0.004301"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:56:55.981780" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:56:55.978986" elapsed="0.002873"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:55.978958" elapsed="0.002934"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:56:55.981937" elapsed="0.000039"/>
</return>
<msg time="2026-05-25T01:56:55.982228" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:56:55.982289" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:56:55.959622" elapsed="0.022699"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:56:55.985777" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:56:55.983140" elapsed="0.002699"/>
</branch>
<status status="PASS" start="2026-05-25T01:56:55.983113" elapsed="0.002756"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.986744" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:55.986144" elapsed="0.000638"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:56:55.987592" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:56:55.987059" elapsed="0.000568"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:56:55.987689" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:56:55.987866" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:56:55.982656" elapsed="0.005235"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:56:55.988099" elapsed="0.000424"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:56:55.958976" elapsed="0.029611"/>
</kw>
<arg>${flowfile}</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:56:55.907354" elapsed="0.081289"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-05-25T01:57:00.989284" level="INFO">Slept 5 seconds.</msg>
<arg>5</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-05-25T01:56:55.988826" elapsed="5.000679"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn" type="TEARDOWN">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:01.011335" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:01.011652" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/yang-data+xml', 'Content-Length': '413'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-path xmlns:a="urn:opendaylight:inventory" xmlns:b="urn:opendaylight:flow:inventory"&gt;/a:nodes/a:node[a:id='openflow:1']/b:table[b:id='2']/b:flow[b:id='144']&lt;/error-path&gt;&lt;error-message&gt;Data does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:57:01.011861" level="INFO">${resp} = None</msg>
<msg time="2026-05-25T01:57:01.011920" level="FAIL">Url: http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 Expected status: 409 != 204</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="FAIL" start="2026-05-25T01:57:01.003693" elapsed="0.008874">Url: http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 Expected status: 409 != 204</status>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.017790" level="FAIL">Resolving variable '${resp.text}' failed: AttributeError: 'NoneType' object has no attribute 'text'</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="FAIL" start="2026-05-25T01:57:01.012913" elapsed="0.004926">Resolving variable '${resp.text}' failed: AttributeError: 'NoneType' object has no attribute 'text'</status>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="FAIL" start="2026-05-25T01:57:01.003221" elapsed="0.014799">Several failures occurred:

1) Url: http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 Expected status: 409 != 204

2) Resolving variable '${resp.text}' failed: AttributeError: 'NoneType' object has no attribute 'text'</status>
</kw>
<arg>FlowLib.Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:57:00.990258" elapsed="0.027956"/>
</kw>
<arg>f21.xml</arg>
<doc>Add a Delete a Flow and verify presence in Datastore. The 5 sec sleep is required to reproduce the bug.</doc>
<status status="PASS" start="2026-05-25T01:56:55.655219" elapsed="5.363073"/>
</kw>
<arg>Add And Delete Flow</arg>
<arg>f21.xml</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:56:55.654676" elapsed="5.363679"/>
</kw>
<var name="${i}">2</var>
<status status="PASS" start="2026-05-25T01:56:55.654386" elapsed="5.364014"/>
</iter>
<iter>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add And Delete Flow">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:57:01.025208" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:57:01.025408" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:57:01.024987" elapsed="0.000461"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:57:01.026340" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc2fd260&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:57:01.025720" elapsed="0.000660"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:01.027059" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:01.026660" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:01.027777" level="INFO">${flow_id} = 144</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:01.027393" elapsed="0.000420"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:01.028521" level="INFO">${flow_priority} = 21</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:01.028102" elapsed="0.000455"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:57:01.029836" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:57:01.028825" elapsed="0.001054"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.030648" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:01.030176" elapsed="0.000531"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.031460" level="INFO">${flow_id} = 144</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:01.030980" elapsed="0.000538"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.032310" level="INFO">${flow_priority} = 21</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:01.031787" elapsed="0.000584"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.032979" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:01.032639" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.033551" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:01.033229" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.034128" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc2fd260&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:01.033788" elapsed="0.000383"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:57:01.024486" elapsed="0.009741"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.042785" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:01.042475" elapsed="0.000456"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:01.059797" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Content-Length': '1266', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:57:01.060017" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:01.060399" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:01.043128" elapsed="0.017341"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.063533" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:01.060988" elapsed="0.002593"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:57:01.041889" elapsed="0.021766"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.073314" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:57:01.072970" elapsed="0.000371"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:01.083935" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:01.084148" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '1056'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:57:01.084275" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:01.073500" elapsed="0.010802"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.084823" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:01.084541" elapsed="0.000329"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.087412" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:01.085053" elapsed="0.002484"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:57:01.089760" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:01.087624" elapsed="0.002190"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:01.087598" elapsed="0.002239"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:57:01.093564" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:57:01.093612" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:57:01.090020" elapsed="0.003616"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:01.095930" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:01.093715" elapsed="0.002272"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:01.093695" elapsed="0.002317"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:57:01.096046" elapsed="0.000048"/>
</return>
<msg time="2026-05-25T01:57:01.096282" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:57:01.096327" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:57:01.072532" elapsed="0.023818"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:57:01.098819" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:01.096965" elapsed="0.001900"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:01.096946" elapsed="0.001941"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.099525" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:01.099094" elapsed="0.000459"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.100134" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:01.099755" elapsed="0.000406"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:57:01.100210" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:57:01.100390" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:57:01.096616" elapsed="0.003799"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:57:01.100615" elapsed="0.000399"/>
</kw>
<arg>${True}</arg>
<arg>${data}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:57:01.071829" elapsed="0.029268"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Operational Flow</arg>
<arg>${True}</arg>
<arg>${data}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:57:01.063852" elapsed="0.037298"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:57:01.113967" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:57:01.114160" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:57:01.113816" elapsed="0.000375"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:57:01.114837" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abf1025c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:57:01.114393" elapsed="0.000472"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:01.115366" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:01.115062" elapsed="0.000331"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:01.115859" level="INFO">${flow_id} = 144</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:01.115588" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:01.116392" level="INFO">${flow_priority} = 21</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:01.116092" elapsed="0.000326"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:57:01.117346" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:57:01.116614" elapsed="0.000764"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.117929" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:01.117577" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.118519" level="INFO">${flow_id} = 144</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:01.118184" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.119181" level="INFO">${flow_priority} = 21</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:01.118822" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.119746" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:01.119415" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.120346" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:01.119983" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.120917" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abf1025c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:01.120584" elapsed="0.000376"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:57:01.113455" elapsed="0.007562"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.121618" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:01.121223" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.122103" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:01.121843" elapsed="0.000324"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.131389" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:57:01.131048" elapsed="0.000371"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:01.140203" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:01.140375" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '831'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:57:01.140495" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:01.131585" elapsed="0.008937"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.141032" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:01.140752" elapsed="0.000344"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.143611" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:01.141279" elapsed="0.002457"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:57:01.145952" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:01.143821" elapsed="0.002185"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:01.143796" elapsed="0.002234"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:57:01.149658" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:57:01.149706" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:57:01.146231" elapsed="0.003499"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:01.151809" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:01.149806" elapsed="0.002059"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:01.149786" elapsed="0.002103"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:57:01.151925" elapsed="0.000036"/>
</return>
<msg time="2026-05-25T01:57:01.152164" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:57:01.152210" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:57:01.130679" elapsed="0.021554"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:57:01.154926" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:01.152847" elapsed="0.002126"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:01.152829" elapsed="0.002166"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.155633" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:01.155203" elapsed="0.000457"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.156315" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:01.155858" elapsed="0.000484"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:57:01.156393" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:57:01.156571" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:57:01.152496" elapsed="0.004101"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:57:01.156795" elapsed="0.000418"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:57:01.130045" elapsed="0.027232"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.166385" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:57:01.166038" elapsed="0.000376"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:01.173682" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:01.173857" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '1056'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:57:01.173997" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:01.166583" elapsed="0.007449"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.174589" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:01.174296" elapsed="0.000343"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.177253" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:01.174823" elapsed="0.002577"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:57:01.179634" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:01.177486" elapsed="0.002202"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:01.177461" elapsed="0.002250"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:57:01.184973" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:57:01.185045" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:57:01.179941" elapsed="0.005160"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:01.188524" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:01.185220" elapsed="0.003388"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:01.185190" elapsed="0.003455"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:57:01.188696" elapsed="0.000048"/>
</return>
<msg time="2026-05-25T01:57:01.189003" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:57:01.189091" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:57:01.165595" elapsed="0.023535"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:57:01.193114" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:01.190243" elapsed="0.002943"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:01.190215" elapsed="0.003005"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.194163" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:01.193505" elapsed="0.000700"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.195050" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:01.194510" elapsed="0.000606"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:57:01.195194" elapsed="0.000042"/>
</return>
<msg time="2026-05-25T01:57:01.195468" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:57:01.189694" elapsed="0.005814"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:57:01.195809" elapsed="0.000635"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:57:01.164887" elapsed="0.031653"/>
</kw>
<arg>${flowfile}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:57:01.109596" elapsed="0.087037"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Datastore Presence</arg>
<arg>${flowfile}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:57:01.101325" elapsed="0.095397"/>
</kw>
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:01.216352" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:01.216419" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:01.216549" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:01.206017" elapsed="0.010568"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.220185" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:01.216878" elapsed="0.003373"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:57:01.205595" elapsed="0.014740"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.234415" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:57:01.233930" elapsed="0.000526"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:01.243365" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:01.243604" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:57:01.243712" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:01.234691" elapsed="0.009049"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.244351" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:01.243962" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.249542" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:01.244586" elapsed="0.005077"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:57:01.254670" elapsed="0.000039"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:01.249835" elapsed="0.004951"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:01.249786" elapsed="0.005052"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:57:01.259349" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:57:01.259399" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:57:01.255280" elapsed="0.004145"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:01.261537" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:01.259506" elapsed="0.002090"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:01.259486" elapsed="0.002135"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:57:01.261654" elapsed="0.000033"/>
</return>
<msg time="2026-05-25T01:57:01.261869" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:57:01.261915" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:57:01.233300" elapsed="0.028640"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:57:01.264451" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:01.262564" elapsed="0.001935"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:01.262545" elapsed="0.001977"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.265150" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:01.264713" elapsed="0.000465"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.265750" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:01.265386" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:57:01.265830" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:57:01.266009" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:57:01.262213" elapsed="0.003823"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:57:01.266255" elapsed="0.000406"/>
</kw>
<arg>${False}</arg>
<arg>${data}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:57:01.232335" elapsed="0.034392"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Operational Flow</arg>
<arg>${False}</arg>
<arg>${data}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:57:01.220586" elapsed="0.046192"/>
</kw>
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:57:01.279030" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:57:01.279241" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:57:01.278885" elapsed="0.000387"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:57:01.279902" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfac7bf0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:57:01.279468" elapsed="0.000464"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:01.280477" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:01.280181" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:01.281054" level="INFO">${flow_id} = 144</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:01.280770" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:01.281577" level="INFO">${flow_priority} = 21</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:01.281294" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:57:01.282708" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:57:01.281802" elapsed="0.000938"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.283371" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:01.282943" elapsed="0.000472"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.283962" level="INFO">${flow_id} = 144</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:01.283615" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.284589" level="INFO">${flow_priority} = 21</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:01.284241" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.285178" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:01.284831" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.285757" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:01.285420" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.286349" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfac7bf0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:01.285994" elapsed="0.000398"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:57:01.278523" elapsed="0.007926"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.287034" level="INFO">${det} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:01.286642" elapsed="0.000437"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.287517" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;drop-action/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:01.287272" elapsed="0.000307"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.296469" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:57:01.296155" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:01.304129" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:01.304365" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/xml', 'Content-Length': '304'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:57:01.304568" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:01.296656" elapsed="0.007940"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.305246" level="INFO">&lt;Response [409]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:01.304841" elapsed="0.000471"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.308892" level="INFO">&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-message&gt;Request could not be completed because the relevant data model content does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:01.305566" elapsed="0.003400"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-05-25T01:57:01.312094" elapsed="0.000049"/>
</return>
<status status="PASS" start="2026-05-25T01:57:01.309099" elapsed="0.003099"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:01.309042" elapsed="0.003191"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="NOT RUN" start="2026-05-25T01:57:01.312492" elapsed="0.000032"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:01.312833" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:01.312625" elapsed="0.000262"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:57:01.312601" elapsed="0.000310"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-05-25T01:57:01.312944" elapsed="0.000014"/>
</return>
<msg time="2026-05-25T01:57:01.314901" level="INFO">${presence_flow} = False</msg>
<msg time="2026-05-25T01:57:01.314949" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:57:01.295769" elapsed="0.019204"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:57:01.317453" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:01.315575" elapsed="0.001925"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:01.315557" elapsed="0.001965"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.318134" level="INFO">${msgf} = The flow is not expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:01.317709" elapsed="0.000453"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.318718" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:01.318363" elapsed="0.000382"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:57:01.318795" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:57:01.318975" level="INFO">${msgf} = The flow is not expected in config data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:57:01.315234" elapsed="0.003767"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:57:01.319215" elapsed="0.000397"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:57:01.295184" elapsed="0.024491"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.328847" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:57:01.328528" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:01.336806" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:01.336967" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '265'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:57:01.337131" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:01.329040" elapsed="0.008130"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.337809" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:01.337451" elapsed="0.000422"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.341585" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:01.338146" elapsed="0.003580"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:57:01.344833" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:01.341831" elapsed="0.003073"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:01.341802" elapsed="0.003134"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:57:01.349394" level="INFO">${pres} = False</msg>
<msg time="2026-05-25T01:57:01.349461" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:57:01.345211" elapsed="0.004284"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:01.352792" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:01.349605" elapsed="0.003249"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:01.349578" elapsed="0.003303"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:57:01.352917" elapsed="0.000034"/>
</return>
<msg time="2026-05-25T01:57:01.353157" level="INFO">${presence_table} = False</msg>
<msg time="2026-05-25T01:57:01.353205" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:57:01.328100" elapsed="0.025130"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:57:01.356238" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:01.353899" elapsed="0.002391"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:01.353879" elapsed="0.002435"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.357003" level="INFO">${msgf} = The flow is not expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:01.356536" elapsed="0.000497"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:01.357722" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:01.357309" elapsed="0.000445"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:57:01.357811" elapsed="0.000032"/>
</return>
<msg time="2026-05-25T01:57:01.358016" level="INFO">${msgf} = The flow is not expected in operational data store, but it is not present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:57:01.353510" elapsed="0.004534"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:57:01.358304" elapsed="0.000453"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:57:01.327416" elapsed="0.031414"/>
</kw>
<arg>${flowfile}</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:57:01.274673" elapsed="0.084221"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.359886" level="INFO">Slept 5 seconds.</msg>
<arg>5</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-05-25T01:57:01.359124" elapsed="5.001441"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn" type="TEARDOWN">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:06.387621" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:06.388145" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/yang-data+xml', 'Content-Length': '413'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-path xmlns:a="urn:opendaylight:inventory" xmlns:b="urn:opendaylight:flow:inventory"&gt;/a:nodes/a:node[a:id='openflow:1']/b:table[b:id='2']/b:flow[b:id='144']&lt;/error-path&gt;&lt;error-message&gt;Data does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:57:06.388481" level="INFO">${resp} = None</msg>
<msg time="2026-05-25T01:57:06.388577" level="FAIL">Url: http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 Expected status: 409 != 204</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="FAIL" start="2026-05-25T01:57:06.375585" elapsed="0.013957">Url: http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 Expected status: 409 != 204</status>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.395565" level="FAIL">Resolving variable '${resp.text}' failed: AttributeError: 'NoneType' object has no attribute 'text'</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="FAIL" start="2026-05-25T01:57:06.390131" elapsed="0.005512">Resolving variable '${resp.text}' failed: AttributeError: 'NoneType' object has no attribute 'text'</status>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 2, ${flow_body}) using DELETE method</doc>
<status status="FAIL" start="2026-05-25T01:57:06.374888" elapsed="0.021042">Several failures occurred:

1) Url: http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144 Expected status: 409 != 204

2) Resolving variable '${resp.text}' failed: AttributeError: 'NoneType' object has no attribute 'text'</status>
</kw>
<arg>FlowLib.Delete Flow Via Restconf</arg>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:57:06.361576" elapsed="0.034708"/>
</kw>
<arg>f21.xml</arg>
<doc>Add a Delete a Flow and verify presence in Datastore. The 5 sec sleep is required to reproduce the bug.</doc>
<status status="PASS" start="2026-05-25T01:57:01.019355" elapsed="5.377057"/>
</kw>
<arg>Add And Delete Flow</arg>
<arg>f21.xml</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:57:01.018808" elapsed="5.377705"/>
</kw>
<var name="${i}">3</var>
<status status="PASS" start="2026-05-25T01:57:01.018550" elapsed="5.378036"/>
</iter>
<var>${i}</var>
<value>${iteration}</value>
<status status="PASS" start="2026-05-25T01:56:44.862557" elapsed="21.534106"/>
</for>
<kw name="Report Failure Due To Bug" owner="Utils" type="TEARDOWN">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.399362" level="INFO">${test_skipped} = False</msg>
<var>${test_skipped}</var>
<arg>len(re.findall('SKIPPED', """${TEST_MESSAGE}""")) &gt; 0</arg>
<arg>modules=re</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:57:06.398474" elapsed="0.000919"/>
</kw>
<if>
<branch type="IF" condition="('${TEST_STATUS}' != 'FAIL') or ${test_skipped}">
<return>
<status status="PASS" start="2026-05-25T01:57:06.399667" elapsed="0.000033"/>
</return>
<status status="PASS" start="2026-05-25T01:57:06.399484" elapsed="0.000250"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:06.399459" elapsed="0.000300"/>
</if>
<kw name="Comment" owner="BuiltIn">
<arg>Jira tickets are {PROJECT}-{NUMBER} while Bugzilla tickets are {NUMBER}</arg>
<doc>Displays the given messages in the log file as keyword arguments.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:06.399943" elapsed="0.000022"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<var>${match}</var>
<arg>Should Contain</arg>
<arg>${number}</arg>
<arg>-</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:06.400149" elapsed="0.000022"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<var>${bug_url}</var>
<arg>${match}</arg>
<arg>https://jira.opendaylight.org/browse/${number}</arg>
<arg>https://bugs.opendaylight.org/show_bug.cgi?id=${number}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:06.400339" elapsed="0.000026"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<var>${msg}</var>
<arg>This test fails due to ${bug_url}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:06.400533" elapsed="0.000021"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${newline}</var>
<arg>chr(10)</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:06.400733" elapsed="0.000024"/>
</kw>
<kw name="Set Test Message" owner="BuiltIn">
<arg>${msg}${newline}${newline}${TEST_MESSAGE}</arg>
<doc>Sets message for the current test case.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:06.400908" elapsed="0.000020"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:06.401090" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="&quot;${include_bug_in_tags}&quot;==&quot;True&quot;">
<kw name="Set Tags" owner="BuiltIn">
<arg>${bug_url}</arg>
<doc>Adds given ``tags`` for the current test or all tests in a suite.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:06.401361" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:06.401175" elapsed="0.000241"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:57:06.401158" elapsed="0.000281"/>
</if>
<arg>6917</arg>
<doc>Report that a test failed due to a known Bugzilla bug whose
number is provided as an argument.
Not FAILED (incl. SKIPPED) test are not reported.
This keyword must be used in the [Teardown] setting of the affected test
or as the first line of the test if FastFail module is not being
used. It reports the URL of the bug on console and also puts it
into the Robot log file.</doc>
<status status="PASS" start="2026-05-25T01:57:06.397566" elapsed="0.003924"/>
</kw>
<doc>Iterate on add and delete flow until alien ID is found in Operational Datastore.</doc>
<status status="PASS" start="2026-05-25T01:56:44.861691" elapsed="21.539844"/>
</test>
<test id="s1-s7-t2" name="Add Multiple Flows" line="30">
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:57:06.408036" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f20.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f20.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:57:06.408276" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:57:06.407846" elapsed="0.000474"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:57:06.408990" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc0d5670&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:57:06.408535" elapsed="0.000487"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:06.409548" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:06.409239" elapsed="0.000336"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:06.410098" level="INFO">${flow_id} = 143</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:06.409768" elapsed="0.000358"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:06.410727" level="INFO">${flow_priority} = 20</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:06.410371" elapsed="0.000390"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:57:06.411708" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:57:06.411018" elapsed="0.000721"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.412361" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:06.411940" elapsed="0.000464"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.412943" level="INFO">${flow_id} = 143</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:06.412599" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.413533" level="INFO">${flow_priority} = 20</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:06.413199" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.414344" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:06.413770" elapsed="0.000622"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.414922" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:06.414592" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.415541" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc0d5670&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:06.415186" elapsed="0.000405"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:57:06.407455" elapsed="0.008193"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.423779" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;20&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;20&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xf0ff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:06.423520" elapsed="0.000317"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:06.442585" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Content-Length': '897', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;20&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;20&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xf0ff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:57:06.442732" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=143', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:06.442942" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:06.423999" elapsed="0.019006"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.450270" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:06.444661" elapsed="0.005739"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:57:06.423078" elapsed="0.027506"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.463961" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:57:06.463627" elapsed="0.000361"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:06.473584" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:06.474577" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '781'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:57:06.474781" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:06.464164" elapsed="0.010668"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.475611" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:06.475230" elapsed="0.000447"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.479154" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:06.475935" elapsed="0.003306"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:57:06.482332" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:06.479349" elapsed="0.003057"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:06.479316" elapsed="0.003122"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:57:06.485829" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:57:06.485891" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:57:06.482691" elapsed="0.003226"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:06.488204" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:06.485995" elapsed="0.002268"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:06.485975" elapsed="0.002312"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:57:06.488320" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:57:06.488519" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:57:06.488563" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 143 and 1</doc>
<status status="PASS" start="2026-05-25T01:57:06.462966" elapsed="0.025620"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:57:06.491041" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:06.489177" elapsed="0.001925"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:06.489159" elapsed="0.001965"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.491725" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:06.491315" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.492334" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:06.491957" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:57:06.492411" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:57:06.492591" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:57:06.488823" elapsed="0.003794"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:57:06.492816" elapsed="0.000411"/>
</kw>
<arg>${True}</arg>
<arg>${data}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:57:06.462044" elapsed="0.031247"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Operational Flow</arg>
<arg>${True}</arg>
<arg>${data}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:57:06.450990" elapsed="0.042350"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:57:06.506186" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f20.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f20.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:57:06.506350" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:57:06.506024" elapsed="0.000356"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:57:06.506993" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfae7470&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:57:06.506574" elapsed="0.000449"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:06.507529" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:06.507236" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:06.508022" level="INFO">${flow_id} = 143</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:06.507749" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:06.508531" level="INFO">${flow_priority} = 20</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:06.508258" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:57:06.509311" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:57:06.508748" elapsed="0.000595"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.509920" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:06.509540" elapsed="0.000430"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.510517" level="INFO">${flow_id} = 143</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:06.510181" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.511103" level="INFO">${flow_priority} = 20</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:06.510750" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.511663" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:06.511337" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.512247" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:06.511899" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.512816" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfae7470&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:06.512484" elapsed="0.000373"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:57:06.505601" elapsed="0.007309"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.513497" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:06.513115" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.513970" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf20&lt;/flow-name&gt;
    &lt;id&gt;143&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;20&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;20&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
            &lt;metadata-mask&gt;0xf0ff&lt;/metadata-mask&gt;
        &lt;/metadata&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:06.513716" elapsed="0.000311"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.524286" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:57:06.523966" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:06.537504" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=143?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=143?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:06.537665" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=143?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '556'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;143&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:57:06.537780" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:06.524470" elapsed="0.013335"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.539050" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:06.538281" elapsed="0.000953"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.545152" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;143&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:06.539806" elapsed="0.005480"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:57:06.548495" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:06.545456" elapsed="0.003095"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:06.545406" elapsed="0.003169"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:57:06.551657" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:57:06.551703" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:57:06.548770" elapsed="0.002957"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:06.553799" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:06.551801" elapsed="0.002065"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:06.551782" elapsed="0.002109"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:57:06.553925" elapsed="0.000037"/>
</return>
<msg time="2026-05-25T01:57:06.554152" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:57:06.554197" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 143 and 1</doc>
<status status="PASS" start="2026-05-25T01:57:06.523608" elapsed="0.030612"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:57:06.556662" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:06.554810" elapsed="0.001899"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:06.554791" elapsed="0.001940"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.557371" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:06.556919" elapsed="0.000480"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.557982" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:06.557603" elapsed="0.000405"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:57:06.558059" elapsed="0.000045"/>
</return>
<msg time="2026-05-25T01:57:06.558257" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:57:06.554467" elapsed="0.003815"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:57:06.558483" elapsed="0.000394"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:57:06.523011" elapsed="0.035930"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.568106" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:57:06.567782" elapsed="0.000357"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:06.578816" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:06.579015" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '781'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:57:06.579156" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:06.568304" elapsed="0.010879"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.579636" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:06.579380" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.582165" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf20&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;0&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:06.579863" elapsed="0.002364"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:57:06.586305" elapsed="0.000036"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:06.582305" elapsed="0.004110"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:06.582283" elapsed="0.004183"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:57:06.592230" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:57:06.592276" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:57:06.586870" elapsed="0.005430"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:06.594384" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:06.592377" elapsed="0.002063"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:06.592358" elapsed="0.002106"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:57:06.594497" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:57:06.594690" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:57:06.594733" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 143 and 1</doc>
<status status="PASS" start="2026-05-25T01:57:06.567364" elapsed="0.027392"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:57:06.597182" elapsed="0.000029"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:06.595336" elapsed="0.001907"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:06.595318" elapsed="0.001947"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.597877" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:06.597456" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:06.598494" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:06.598139" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:57:06.598571" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:57:06.598748" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:57:06.594989" elapsed="0.003784"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:57:06.598969" elapsed="0.000411"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:57:06.566698" elapsed="0.032747"/>
</kw>
<arg>${flowfile}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:57:06.501660" elapsed="0.097843"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Datastore Presence</arg>
<arg>${flowfile}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:57:06.493508" elapsed="0.106087"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.600445" level="INFO">Slept 8 seconds.</msg>
<arg>8</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-05-25T01:57:06.599794" elapsed="8.001157"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn" type="TEARDOWN">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:14.615842" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes 
 path_url=/rests/data/opendaylight-inventory:nodes 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:14.615912" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:14.602947" elapsed="0.013045"/>
</kw>
<arg>RequestsLibrary.DELETE On Session</arg>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:57:14.601832" elapsed="0.014271"/>
</kw>
<arg>f20.xml</arg>
<doc>Add a Delete a Flow and verify presence in Datastore. The 5 sec sleep is required to reproduce the bug.</doc>
<status status="PASS" start="2026-05-25T01:57:06.403258" elapsed="8.212935"/>
</kw>
<arg>Add Flow</arg>
<arg>f20.xml</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:57:06.402847" elapsed="8.213439"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:57:14.627516" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:57:14.627710" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:57:14.627368" elapsed="0.000372"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:57:14.628406" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abf1007c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:57:14.627938" elapsed="0.000496"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:14.628912" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:14.628629" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:14.629419" level="INFO">${flow_id} = 144</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:14.629147" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:14.629906" level="INFO">${flow_priority} = 21</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:14.629636" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:57:14.630880" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:57:14.630144" elapsed="0.000769"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.631466" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:14.631127" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.632041" level="INFO">${flow_id} = 144</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:14.631702" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.632620" level="INFO">${flow_priority} = 21</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:14.632293" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.633180" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:14.632851" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.633737" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:14.633418" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.634318" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abf1007c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:14.633974" elapsed="0.000385"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:57:14.626637" elapsed="0.007777"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.642466" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:14.642205" elapsed="0.000464"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:14.656121" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Content-Length': '1266', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:57:14.656190" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:14.656297" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:14.642834" elapsed="0.013489"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.658919" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:14.656519" elapsed="0.002444"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:57:14.641742" elapsed="0.017279"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.671249" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:57:14.670910" elapsed="0.000367"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:14.680728" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:14.682309" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '1789'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;779000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;1&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:57:14.682497" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:14.671439" elapsed="0.011096"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.683349" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:14.682934" elapsed="0.000485"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.687221" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;779000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;1&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:14.683721" elapsed="0.003627"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:57:14.690664" elapsed="0.000027"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:14.687465" elapsed="0.003279"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:14.687432" elapsed="0.003346"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:57:14.694940" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:57:14.694990" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:57:14.691107" elapsed="0.003908"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:14.697446" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:14.695112" elapsed="0.002393"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:14.695090" elapsed="0.002440"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:57:14.697565" elapsed="0.000036"/>
</return>
<msg time="2026-05-25T01:57:14.697770" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:57:14.697814" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:57:14.670448" elapsed="0.027389"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:57:14.700293" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:14.698427" elapsed="0.001913"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:14.698409" elapsed="0.001952"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.700962" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:14.700551" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.701571" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:14.701213" elapsed="0.000385"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:57:14.701648" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:57:14.701832" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:57:14.698089" elapsed="0.003769"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:57:14.702059" elapsed="0.000418"/>
</kw>
<arg>${True}</arg>
<arg>${data}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:57:14.669778" elapsed="0.032763"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Operational Flow</arg>
<arg>${True}</arg>
<arg>${data}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:57:14.659206" elapsed="0.043385"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:57:14.715425" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f21.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:57:14.715609" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:57:14.715281" elapsed="0.000360"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:57:14.716302" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc241ee0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:57:14.715852" elapsed="0.000486"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:14.716819" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:14.716534" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:14.717331" level="INFO">${flow_id} = 144</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:14.717038" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:14.717827" level="INFO">${flow_priority} = 21</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:14.717551" elapsed="0.000302"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:57:14.718754" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:57:14.718045" elapsed="0.000741"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.719385" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:14.719005" elapsed="0.000424"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.719992" level="INFO">${flow_id} = 144</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:14.719647" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.720595" level="INFO">${flow_priority} = 21</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:14.720246" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.721181" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:14.720832" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.721760" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:14.721422" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.722358" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc241ee0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:14.721996" elapsed="0.000406"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:57:14.714901" elapsed="0.007557"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.723084" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:14.722649" elapsed="0.000468"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.723583" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf21&lt;/flow-name&gt;
    &lt;id&gt;144&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;21&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;21&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;17&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;8&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;
        &lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:14.723309" elapsed="0.000340"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.733148" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:57:14.732819" elapsed="0.000357"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:14.744507" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:14.744925" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=144?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '831'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:57:14.745217" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:14.733336" elapsed="0.011942"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.746382" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:14.745744" elapsed="0.000742"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.752164" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:14.746926" elapsed="0.005379"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:57:14.756143" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:14.752468" elapsed="0.003726"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:14.752421" elapsed="0.003798"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:57:14.759745" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:57:14.759792" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:57:14.756408" elapsed="0.003407"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:14.762037" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:14.759890" elapsed="0.002218"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:14.759871" elapsed="0.002261"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:57:14.762166" elapsed="0.000033"/>
</return>
<msg time="2026-05-25T01:57:14.762374" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:57:14.762418" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:57:14.732452" elapsed="0.029989"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:57:14.765103" elapsed="0.000036"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:14.763043" elapsed="0.002128"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:14.763025" elapsed="0.002169"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.765796" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:14.765388" elapsed="0.000435"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.766399" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:14.766027" elapsed="0.000398"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:57:14.766476" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:57:14.766654" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:57:14.762689" elapsed="0.003990"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:57:14.766912" elapsed="0.000418"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:57:14.731827" elapsed="0.035568"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.776398" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:57:14.776090" elapsed="0.000369"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:14.785118" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:14.785296" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '1789'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;779000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;1&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:57:14.785428" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:14.776628" elapsed="0.008826"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.785907" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:14.785651" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.790041" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf21&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;143&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;20&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;metadata&gt;&lt;metadata-mask&gt;61695&lt;/metadata-mask&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;/match&gt;&lt;cookie&gt;20&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;0&lt;/max-length&gt;&lt;output-node-connector&gt;LOCAL&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;7&lt;/second&gt;&lt;nanosecond&gt;779000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;1&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:14.786151" elapsed="0.004094"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:57:14.795213" elapsed="0.000046"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:14.790425" elapsed="0.004872"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:14.790378" elapsed="0.004942"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:57:14.799236" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:57:14.799284" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:57:14.795499" elapsed="0.003808"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:14.801584" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:14.799385" elapsed="0.002284"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:14.799366" elapsed="0.002328"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:57:14.801728" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:57:14.801923" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:57:14.801966" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 144 and 1</doc>
<status status="PASS" start="2026-05-25T01:57:14.775658" elapsed="0.026330"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:57:14.804412" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:14.802568" elapsed="0.001889"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:14.802550" elapsed="0.001930"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.805060" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:14.804662" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:14.805657" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:14.805306" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:57:14.805734" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:57:14.805912" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:57:14.802236" elapsed="0.003701"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:57:14.806150" elapsed="0.000391"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:57:14.774973" elapsed="0.031632"/>
</kw>
<arg>${flowfile}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:57:14.711029" elapsed="0.095634"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Datastore Presence</arg>
<arg>${flowfile}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:57:14.702760" elapsed="0.103961"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-05-25T01:57:22.807385" level="INFO">Slept 8 seconds.</msg>
<arg>8</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-05-25T01:57:14.806937" elapsed="8.000726"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn" type="TEARDOWN">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:22.821847" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes 
 path_url=/rests/data/opendaylight-inventory:nodes 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:22.822004" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:22.809705" elapsed="0.012484"/>
</kw>
<arg>RequestsLibrary.DELETE On Session</arg>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:57:22.808561" elapsed="0.013781"/>
</kw>
<arg>f21.xml</arg>
<doc>Add a Delete a Flow and verify presence in Datastore. The 5 sec sleep is required to reproduce the bug.</doc>
<status status="PASS" start="2026-05-25T01:57:14.617630" elapsed="8.204851"/>
</kw>
<arg>Add Flow</arg>
<arg>f21.xml</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:57:14.616790" elapsed="8.205800"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:57:22.833935" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f22.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f22.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:57:22.834327" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:57:22.833614" elapsed="0.000781"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:57:22.835814" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc2fd260&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:57:22.834826" elapsed="0.001050"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:22.836761" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:22.836385" elapsed="0.000403"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:22.837272" level="INFO">${flow_id} = 145</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:22.836983" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:22.837857" level="INFO">${flow_priority} = 22</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:22.837490" elapsed="0.000393"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:57:22.838853" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:57:22.838092" elapsed="0.000793"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:22.839444" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:22.839100" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:22.839999" level="INFO">${flow_id} = 145</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:22.839678" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:22.840615" level="INFO">${flow_priority} = 22</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:22.840278" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:22.841206" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:22.840851" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:22.841786" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:22.841456" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:22.842654" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc2fd260&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:22.842029" elapsed="0.000671"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:57:22.832764" elapsed="0.009995"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:22.850820" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;22&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;22&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:22.850562" elapsed="0.000321"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:22.863666" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Content-Length': '1264', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;22&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;22&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:57:22.863819" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=145', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:22.864049" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:22.851041" elapsed="0.013098"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:22.869268" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:22.864674" elapsed="0.004656"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:57:22.850117" elapsed="0.019294"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:57:22.882053" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:57:22.881738" elapsed="0.000357"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:22.890128" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:22.891945" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '2036'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;628000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;1&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:57:22.892169" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:22.882258" elapsed="0.009958"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:22.892852" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:22.892497" elapsed="0.000418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:22.896412" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;628000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;1&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:22.893188" elapsed="0.003389"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:57:22.899639" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:22.896689" elapsed="0.003024"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:22.896655" elapsed="0.003092"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:57:22.904136" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:57:22.904195" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:57:22.899999" elapsed="0.004220"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:22.906303" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:22.904296" elapsed="0.002064"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:22.904277" elapsed="0.002109"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:57:22.906420" elapsed="0.000034"/>
</return>
<msg time="2026-05-25T01:57:22.906624" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:57:22.906668" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 145 and 1</doc>
<status status="PASS" start="2026-05-25T01:57:22.881307" elapsed="0.025384"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:57:22.909164" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:22.907303" elapsed="0.001908"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:22.907284" elapsed="0.001950"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:22.909839" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:22.909435" elapsed="0.000433"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:22.910469" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:22.910104" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:57:22.910545" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:57:22.910725" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:57:22.906941" elapsed="0.003809"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:57:22.910950" elapsed="0.000409"/>
</kw>
<arg>${True}</arg>
<arg>${data}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:57:22.880638" elapsed="0.030785"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Operational Flow</arg>
<arg>${True}</arg>
<arg>${data}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:57:22.869646" elapsed="0.041826"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:57:22.924097" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f22.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f22.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:57:22.924264" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:57:22.923943" elapsed="0.000351"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:57:22.924897" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe2f2e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:57:22.924484" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:22.925419" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:22.925137" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:22.925913" level="INFO">${flow_id} = 145</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:22.925643" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:22.926413" level="INFO">${flow_priority} = 22</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:22.926143" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:57:22.927331" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:57:22.926629" elapsed="0.000732"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:22.927902" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:22.927559" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:22.928528" level="INFO">${flow_id} = 145</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:22.928187" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:22.929196" level="INFO">${flow_priority} = 22</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:22.928822" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:22.929757" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:22.929431" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:22.930341" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:22.929991" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:22.930909" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe2f2e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:22.930578" elapsed="0.000373"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:57:22.923582" elapsed="0.007424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:22.931609" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:22.931210" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:22.932084" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf22&lt;/flow-name&gt;
    &lt;id&gt;145&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;22&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;22&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:22.931829" elapsed="0.000330"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:57:22.941228" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:57:22.940908" elapsed="0.000347"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:22.948930" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=145?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=145?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:22.949085" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=145?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '829'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;145&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:57:22.949196" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:22.941414" elapsed="0.007808"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:22.949734" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:22.949418" elapsed="0.000379"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:22.953243" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;145&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:22.950046" elapsed="0.003328"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:57:22.956485" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:22.953475" elapsed="0.003079"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:22.953446" elapsed="0.003141"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:57:22.961277" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:57:22.961324" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:57:22.956839" elapsed="0.004509"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:22.963402" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:22.961423" elapsed="0.002035"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:22.961404" elapsed="0.002078"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:57:22.963516" elapsed="0.000033"/>
</return>
<msg time="2026-05-25T01:57:22.963718" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:57:22.963762" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 145 and 1</doc>
<status status="PASS" start="2026-05-25T01:57:22.940550" elapsed="0.023235"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:57:22.966442" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:22.964442" elapsed="0.002047"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:22.964424" elapsed="0.002087"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:22.967116" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:22.966697" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:22.967698" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:22.967345" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:57:22.967775" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:57:22.967952" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:57:22.964017" elapsed="0.003960"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:57:22.968200" elapsed="0.000391"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:57:22.939930" elapsed="0.028726"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:57:22.977589" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:57:22.977288" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:22.986456" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:22.986665" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '2036'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;628000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;1&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:57:22.986845" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:22.977773" elapsed="0.009102"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:22.987363" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:22.987093" elapsed="0.000317"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:22.989932" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf22&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;144&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;udp-destination-port&gt;8080&lt;/udp-destination-port&gt;&lt;udp-source-port&gt;25364&lt;/udp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80::2acf:e9ff:fe21:6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;17&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;8&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;21&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;5&lt;/second&gt;&lt;nanosecond&gt;628000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;1&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:22.987591" elapsed="0.002423"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:57:22.992208" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:22.990100" elapsed="0.002157"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:22.990078" elapsed="0.002201"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:57:22.996246" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:57:22.996293" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:57:22.992458" elapsed="0.003858"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:22.999558" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:22.996393" elapsed="0.003220"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:22.996374" elapsed="0.003263"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:57:22.999671" elapsed="0.000027"/>
</return>
<msg time="2026-05-25T01:57:22.999863" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:57:22.999908" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 145 and 1</doc>
<status status="PASS" start="2026-05-25T01:57:22.976854" elapsed="0.023076"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:57:23.002369" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:23.000526" elapsed="0.001890"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:23.000508" elapsed="0.001930"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:23.003026" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:23.002624" elapsed="0.000429"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:23.003625" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:23.003272" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:57:23.003702" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:57:23.003879" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:57:23.000190" elapsed="0.003714"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:57:23.004123" elapsed="0.000388"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:57:22.976194" elapsed="0.028380"/>
</kw>
<arg>${flowfile}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:57:22.919784" elapsed="0.084886"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Datastore Presence</arg>
<arg>${flowfile}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:57:22.911639" elapsed="0.093088"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.005412" level="INFO">Slept 8 seconds.</msg>
<arg>8</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-05-25T01:57:23.004918" elapsed="8.000825"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn" type="TEARDOWN">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:31.020503" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes 
 path_url=/rests/data/opendaylight-inventory:nodes 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:31.020590" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:31.008654" elapsed="0.012036"/>
</kw>
<arg>RequestsLibrary.DELETE On Session</arg>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:57:31.007131" elapsed="0.013663"/>
</kw>
<arg>f22.xml</arg>
<doc>Add a Delete a Flow and verify presence in Datastore. The 5 sec sleep is required to reproduce the bug.</doc>
<status status="PASS" start="2026-05-25T01:57:22.824260" elapsed="8.196663"/>
</kw>
<arg>Add Flow</arg>
<arg>f22.xml</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:57:22.823201" elapsed="8.197832"/>
</kw>
<kw name="Run Keyword And Continue On Failure" owner="BuiltIn">
<kw name="Add Flow">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:57:31.031488" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f23.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f23.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:57:31.031692" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:57:31.031332" elapsed="0.000389"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:57:31.032404" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc2fee30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:57:31.031922" elapsed="0.000510"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:31.032927" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:31.032631" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:31.033434" level="INFO">${flow_id} = 146</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:31.033161" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:31.033934" level="INFO">${flow_priority} = 23</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:31.033650" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:57:31.034978" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:57:31.034167" elapsed="0.000842"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.035579" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:31.035231" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.036159" level="INFO">${flow_id} = 146</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:31.035818" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.036720" level="INFO">${flow_priority} = 23</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:31.036394" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.037281" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:31.036951" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.037851" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:31.037518" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.038697" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc2fee30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:31.038109" elapsed="0.000631"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:57:31.030942" elapsed="0.007854"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.047024" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;23&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;23&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:31.046768" elapsed="0.000337"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:31.062136" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Content-Length': '1349', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;23&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;23&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:57:31.062233" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=146', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:31.062373" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:31.047262" elapsed="0.015147"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.065802" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:31.062678" elapsed="0.003186"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 2, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:57:31.046333" elapsed="0.019610"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.079462" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:57:31.078979" elapsed="0.000521"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:31.086703" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:31.088119" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '2088'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;486000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;1&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:57:31.088385" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:31.079722" elapsed="0.008693"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.089122" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:31.088752" elapsed="0.000418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.092261" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;486000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;1&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:31.089353" elapsed="0.003024"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:57:31.095504" elapsed="0.000028"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:31.092513" elapsed="0.003075"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:31.092466" elapsed="0.003157"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:57:31.101992" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:57:31.102058" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:57:31.095881" elapsed="0.006231"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:31.104431" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:31.102224" elapsed="0.002263"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:31.102197" elapsed="0.002319"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:57:31.104549" elapsed="0.000038"/>
</return>
<msg time="2026-05-25T01:57:31.104770" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:57:31.104815" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 146 and 1</doc>
<status status="PASS" start="2026-05-25T01:57:31.078387" elapsed="0.026450"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:57:31.107503" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:31.105535" elapsed="0.002015"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:31.105517" elapsed="0.002055"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.108213" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:31.107777" elapsed="0.000464"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.108796" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:31.108444" elapsed="0.000382"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:57:31.108877" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:57:31.109054" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:57:31.105174" elapsed="0.003921"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:57:31.109301" elapsed="0.000410"/>
</kw>
<arg>${True}</arg>
<arg>${data}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:57:31.077382" elapsed="0.032418"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Operational Flow</arg>
<arg>${True}</arg>
<arg>${data}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:57:31.066197" elapsed="0.043691"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:57:31.122697" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f23.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f23.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:57:31.122878" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:57:31.122552" elapsed="0.000355"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:57:31.123579" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc091440&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:57:31.123123" elapsed="0.000487"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:31.124120" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:31.123807" elapsed="0.000340"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:31.124615" level="INFO">${flow_id} = 146</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:31.124341" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:31.125128" level="INFO">${flow_priority} = 23</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:31.124839" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:57:31.126123" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:57:31.125346" elapsed="0.000809"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.126712" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:31.126356" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.127310" level="INFO">${flow_id} = 146</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:31.126956" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.127890" level="INFO">${flow_priority} = 23</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:31.127544" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.128471" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:31.128144" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.129039" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
 ...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:31.128707" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.129625" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc091440&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:31.129291" elapsed="0.000376"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:57:31.122190" elapsed="0.007531"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.130377" level="INFO">${det} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;25...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:31.129923" elapsed="0.000487"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.130850" level="INFO">&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;strict&gt;false&lt;/strict&gt;
    &lt;flow-name&gt;FooXf23&lt;/flow-name&gt;
    &lt;id&gt;146&lt;/id&gt;
    &lt;cookie_mask&gt;255&lt;/cookie_mask&gt;
    &lt;cookie&gt;23&lt;/cookie&gt;
    &lt;table_id&gt;2&lt;/table_id&gt;
    &lt;priority&gt;23&lt;/priority&gt;
    &lt;installHw&gt;false&lt;/installHw&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;dec-nw-ttl/&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;34525&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;
        &lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;
        &lt;metadata&gt;
            &lt;metadata&gt;12345&lt;/metadata&gt;
        &lt;/metadata&gt;
        &lt;ipv6-label&gt;
            &lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;
        &lt;/ipv6-label&gt;
        &lt;ip-match&gt;
            &lt;ip-protocol&gt;6&lt;/ip-protocol&gt;
            &lt;ip-dscp&gt;60&lt;/ip-dscp&gt;
            &lt;ip-ecn&gt;3&lt;/ip-ecn&gt;
        &lt;/ip-match&gt;
        &lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;
        &lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;
    &lt;/match&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:31.130601" elapsed="0.000352"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.140058" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:57:31.139735" elapsed="0.000367"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:31.148314" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=146?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=146?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:31.148454" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=146?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '883'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;146&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:57:31.148562" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:31.140261" elapsed="0.008327"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.149044" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:31.148785" elapsed="0.000321"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.151646" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;146&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:31.149289" elapsed="0.002419"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:57:31.153953" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:31.151779" elapsed="0.002224"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:31.151759" elapsed="0.002266"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:57:31.158770" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:57:31.158837" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:57:31.154222" elapsed="0.004648"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:31.161916" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:31.158975" elapsed="0.003021"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:31.158948" elapsed="0.003082"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:57:31.162096" elapsed="0.000042"/>
</return>
<msg time="2026-05-25T01:57:31.162374" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:57:31.162437" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 146 and 1</doc>
<status status="PASS" start="2026-05-25T01:57:31.139372" elapsed="0.023097"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:57:31.165205" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:31.163149" elapsed="0.002105"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:31.163131" elapsed="0.002145"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.165894" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:31.165468" elapsed="0.000454"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.166510" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:31.166151" elapsed="0.000386"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:57:31.166622" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:57:31.166805" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:57:31.162793" elapsed="0.004039"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:57:31.167030" elapsed="0.000406"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:57:31.138768" elapsed="0.028732"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.176891" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:57:31.176589" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:31.186438" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:31.186626" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '2088'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;486000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;1&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:57:31.186763" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:31.177093" elapsed="0.009695"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.187457" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:31.187098" elapsed="0.000422"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.191023" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;2&lt;/id&gt;&lt;flow&gt;&lt;id&gt;145&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;22&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-source&gt;1234:5678:9abc:def0:fdc0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;22&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;6&lt;/second&gt;&lt;nanosecond&gt;486000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;146&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;installHw&gt;false&lt;/installHw&gt;&lt;priority&gt;23&lt;/priority&gt;&lt;cookie_mask&gt;255&lt;/cookie_mask&gt;&lt;flow-name&gt;FooXf23&lt;/flow-name&gt;&lt;strict&gt;false&lt;/strict&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;34525&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;tcp-destination-port&gt;8080&lt;/tcp-destination-port&gt;&lt;tcp-source-port&gt;183&lt;/tcp-source-port&gt;&lt;ipv6-label&gt;&lt;ipv6-flabel&gt;33&lt;/ipv6-flabel&gt;&lt;/ipv6-label&gt;&lt;ipv6-source&gt;1234:5678:9ABC:DEF0:FDC0::/76&lt;/ipv6-source&gt;&lt;ipv6-destination&gt;fe80:2acf:e9ff:fe21::6431/128&lt;/ipv6-destination&gt;&lt;metadata&gt;&lt;metadata&gt;12345&lt;/metadata&gt;&lt;/metadata&gt;&lt;ip-match&gt;&lt;ip-protocol&gt;6&lt;/ip-protocol&gt;&lt;ip-ecn&gt;3&lt;/ip-ecn&gt;&lt;ip-dscp&gt;60&lt;/ip-dscp&gt;&lt;/ip-match&gt;&lt;/match&gt;&lt;cookie&gt;23&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;dec-nw-ttl/&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;1&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:31.187768" elapsed="0.003429"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:57:31.194587" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:31.191303" elapsed="0.003360"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:31.191271" elapsed="0.003425"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:57:31.200334" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:57:31.200381" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:57:31.194961" elapsed="0.005443"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:31.202690" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:31.200484" elapsed="0.002263"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:31.200464" elapsed="0.002307"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:57:31.202805" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:57:31.203006" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:57:31.203050" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (2, 146 and 1</doc>
<status status="PASS" start="2026-05-25T01:57:31.176167" elapsed="0.026921"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:57:31.205585" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:31.203668" elapsed="0.001962"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:31.203649" elapsed="0.002003"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.206287" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:31.205867" elapsed="0.000448"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:31.206871" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:31.206519" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:57:31.206948" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:57:31.207142" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:57:31.203332" elapsed="0.003836"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:57:31.207366" elapsed="0.000391"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:57:31.175506" elapsed="0.032320"/>
</kw>
<arg>${flowfile}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:57:31.118316" elapsed="0.089568"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Datastore Presence</arg>
<arg>${flowfile}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:57:31.110092" elapsed="0.097849"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-05-25T01:57:39.208679" level="INFO">Slept 8 seconds.</msg>
<arg>8</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-05-25T01:57:31.208152" elapsed="8.000811"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn" type="TEARDOWN">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:39.222657" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes 
 path_url=/rests/data/opendaylight-inventory:nodes 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0vjg05vo89p4w1uomrw2f31sas1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:39.222764" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:39.210764" elapsed="0.012119"/>
</kw>
<arg>RequestsLibrary.DELETE On Session</arg>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:57:39.209760" elapsed="0.013245"/>
</kw>
<arg>f23.xml</arg>
<doc>Add a Delete a Flow and verify presence in Datastore. The 5 sec sleep is required to reproduce the bug.</doc>
<status status="PASS" start="2026-05-25T01:57:31.022521" elapsed="8.200615"/>
</kw>
<arg>Add Flow</arg>
<arg>f23.xml</arg>
<doc>Runs the keyword and continues execution even if a failure occurs.</doc>
<status status="PASS" start="2026-05-25T01:57:31.021599" elapsed="8.201607"/>
</kw>
<kw name="Report Failure Due To Bug" owner="Utils" type="TEARDOWN">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:57:39.225046" level="INFO">${test_skipped} = False</msg>
<var>${test_skipped}</var>
<arg>len(re.findall('SKIPPED', """${TEST_MESSAGE}""")) &gt; 0</arg>
<arg>modules=re</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:57:39.224428" elapsed="0.000679"/>
</kw>
<if>
<branch type="IF" condition="('${TEST_STATUS}' != 'FAIL') or ${test_skipped}">
<return>
<status status="PASS" start="2026-05-25T01:57:39.225443" elapsed="0.000046"/>
</return>
<status status="PASS" start="2026-05-25T01:57:39.225225" elapsed="0.000308"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:39.225194" elapsed="0.000375"/>
</if>
<kw name="Comment" owner="BuiltIn">
<arg>Jira tickets are {PROJECT}-{NUMBER} while Bugzilla tickets are {NUMBER}</arg>
<doc>Displays the given messages in the log file as keyword arguments.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:39.225841" elapsed="0.000031"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<var>${match}</var>
<arg>Should Contain</arg>
<arg>${number}</arg>
<arg>-</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:39.226226" elapsed="0.000031"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<var>${bug_url}</var>
<arg>${match}</arg>
<arg>https://jira.opendaylight.org/browse/${number}</arg>
<arg>https://bugs.opendaylight.org/show_bug.cgi?id=${number}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:39.226498" elapsed="0.000050"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<var>${msg}</var>
<arg>This test fails due to ${bug_url}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:39.226802" elapsed="0.000031"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${newline}</var>
<arg>chr(10)</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:39.227048" elapsed="0.000052"/>
</kw>
<kw name="Set Test Message" owner="BuiltIn">
<arg>${msg}${newline}${newline}${TEST_MESSAGE}</arg>
<doc>Sets message for the current test case.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:39.227315" elapsed="0.000029"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:39.227548" elapsed="0.000038"/>
</kw>
<if>
<branch type="IF" condition="&quot;${include_bug_in_tags}&quot;==&quot;True&quot;">
<kw name="Set Tags" owner="BuiltIn">
<arg>${bug_url}</arg>
<doc>Adds given ``tags`` for the current test or all tests in a suite.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:39.227959" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:39.227707" elapsed="0.000326"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:57:39.227682" elapsed="0.000405"/>
</if>
<arg>6917</arg>
<doc>Report that a test failed due to a known Bugzilla bug whose
number is provided as an argument.
Not FAILED (incl. SKIPPED) test are not reported.
This keyword must be used in the [Teardown] setting of the affected test
or as the first line of the test if FastFail module is not being
used. It reports the URL of the bug on console and also puts it
into the Robot log file.</doc>
<status status="PASS" start="2026-05-25T01:57:39.223832" elapsed="0.004332"/>
</kw>
<doc>Iterate on add and delete flow until alien ID is found in Operational Datastore.</doc>
<status status="PASS" start="2026-05-25T01:57:06.402144" elapsed="32.826084"/>
</test>
<kw name="Final Phase" type="TEARDOWN">
<kw name="Stop Mininet And Exit" owner="MininetKeywords">
<if>
<branch type="IF" condition="&quot;&quot;&quot;${mininet_conn}&quot;&quot;&quot; != &quot;&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${mininet_conn}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:57:39.234643" elapsed="0.000162"/>
</kw>
<status status="PASS" start="2026-05-25T01:57:39.234415" elapsed="0.000427"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:39.234395" elapsed="0.000472"/>
</if>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:57:39.239181" level="INFO">exit</msg>
<arg>exit</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:57:39.235009" elapsed="0.004231"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:57:39.364954" level="INFO">*** Stopping 1 controllers
c0 
*** Stopping 2 links
..
*** Stopping 1 switches
s1 
*** Stopping 2 hosts
h1 h2 
*** Done
completed in 55.659 seconds
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${TOOLS_SYSTEM_PROMPT}</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:57:39.239398" elapsed="0.125797"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:57:39.365576" elapsed="0.000297"/>
</kw>
<arg>${mininet_conn_id}</arg>
<doc>Stops Mininet and exits session ${mininet_conn}</doc>
<status status="PASS" start="2026-05-25T01:57:39.234192" elapsed="0.131769"/>
</kw>
<kw name="Delete All Sessions" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:39.366225" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-05-25T01:57:39.366143" elapsed="0.000159"/>
</kw>
<doc>Stops mininet.</doc>
<status status="PASS" start="2026-05-25T01:57:39.229013" elapsed="0.137351"/>
</kw>
<doc>Test suite for bug 6917 validation.</doc>
<status status="PASS" start="2026-05-25T01:56:41.017795" elapsed="58.348611"/>
</suite>
<suite id="s1-s8" name="7258" source="/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Bug_Validation/7258.robot">
<kw name="Initialization Phase" type="SETUP">
<kw name="Start Mininet Single Controller" owner="MininetKeywords">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:39.450399" level="INFO">Clear any existing mininet</msg>
<arg>Clear any existing mininet</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:39.449972" elapsed="0.000507"/>
</kw>
<kw name="Clean Mininet System" owner="Utils">
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:39.453559" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:39.453238" elapsed="0.000380"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:39.453210" elapsed="0.000436"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:57:39.453987" level="INFO">index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:57:39.454122" level="INFO">${current_ssh_connection} = index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:57:39.453801" elapsed="0.000352"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:39.454685" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:39.454307" elapsed="0.000425"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:57:39.455297" level="INFO">${conn_id} = 43</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:57:39.454894" elapsed="0.000439"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:57:39.456888" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:57:39.456966" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:57:39.456590" elapsed="0.000401"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:39.457174" elapsed="0.000333"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:57:39.458377" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:57:39.806773" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:56:41 UTC 2026

  System load:  0.11               Processes:             107
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:56:43 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:57:39.458040" elapsed="0.348897"/>
</kw>
<msg time="2026-05-25T01:57:39.807025" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:39.457680" elapsed="0.349450"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:57:39.455563" elapsed="0.351691"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:57:39.807828" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-05-25T01:57:40.966337" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:57:40.966749" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:57:40.966867" level="INFO">${stderr} = *** Removing excess controllers/ofprotocols/ofdatapaths/pings/noxes
killall controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec iv...</msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:57:39.807552" elapsed="1.159377"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:57:40.967470" elapsed="0.000593"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:40.969247" level="INFO">*** Removing excess controllers/ofprotocols/ofdatapaths/pings/noxes
killall controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec ivs ryu-manager 2&gt; /dev/null
killall -9 controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec ivs ryu-manager 2&gt; /dev/null
pkill -9 -f "sudo mnexec"
*** Removing junk from /tmp
rm -f /tmp/vconn* /tmp/vlogs* /tmp/*.out /tmp/*.log
*** Removing old X11 tunnels
*** Removing excess kernel datapaths
ps ax | egrep -o 'dp[0-9]+' | sed 's/dp/nl:/'
***  Removing OVS datapaths
ovs-vsctl --timeout=1 list-br
ovs-vsctl --timeout=1 list-br
*** Removing all links of the pattern foo-ethX
ip link show | egrep -o '([-_.[:alnum:]]+-eth[[:digit:]]+)'
ip link show
*** Killing stale mininet node processes
pkill -9 -f mininet:
*** Shutting down stale tunnels
pkill -9 -f Tunnel=Ethernet
pkill -9 -f .ssh/mn
rm -f ~/.ssh/mn/*
*** Cleanup complete.</msg>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:40.968567" elapsed="0.000804"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:57:40.969853" elapsed="0.000042"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:40.969551" elapsed="0.000414"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:40.969498" elapsed="0.000517"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:57:40.970414" elapsed="0.000068"/>
</return>
<status status="PASS" start="2026-05-25T01:57:40.970173" elapsed="0.000383"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:40.970133" elapsed="0.000476"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:57:40.970686" elapsed="0.000031"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:40.976315" elapsed="0.000335"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:57:40.976818" elapsed="0.000166"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:57:40.977148" elapsed="0.000102"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:57:40.971446" elapsed="0.005858"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:57:39.452716" elapsed="1.524680"/>
</kw>
<msg time="2026-05-25T01:57:40.977452" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:39.451910" elapsed="1.525597"/>
</kw>
<arg>${system}</arg>
<arg>sudo mn -c</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:57:39.451245" elapsed="1.526423"/>
</kw>
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:40.979709" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:40.979416" elapsed="0.000351"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:40.979397" elapsed="0.000394"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:57:40.980096" level="INFO">index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:57:40.980201" level="INFO">${current_ssh_connection} = index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:57:40.979942" elapsed="0.000285"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:40.980759" level="INFO">Attempting to execute command "sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:40.980378" elapsed="0.000427"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:57:40.981343" level="INFO">${conn_id} = 45</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:57:40.980963" elapsed="0.000406"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:57:40.982231" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:57:40.982307" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:57:40.981933" elapsed="0.000398"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:40.982489" elapsed="0.000332"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:57:40.983692" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:57:41.319657" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:56:41 UTC 2026

  System load:  0.11               Processes:             107
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:57:39 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:57:40.983379" elapsed="0.336462"/>
</kw>
<msg time="2026-05-25T01:57:41.319945" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:40.982993" elapsed="0.337059"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:57:40.981585" elapsed="0.338646"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:57:41.320905" level="INFO">Executing command 'sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh'.</msg>
<msg time="2026-05-25T01:57:41.364321" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-05-25T01:57:41.364620" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:57:41.364719" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:57:41.320569" elapsed="0.044202"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:57:41.365255" elapsed="0.000543"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:41.366950" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:41.366316" elapsed="0.000729"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:57:41.367573" elapsed="0.000039"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:41.367280" elapsed="0.000402"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:41.367228" elapsed="0.000504"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:57:41.368113" elapsed="0.000069"/>
</return>
<status status="PASS" start="2026-05-25T01:57:41.367850" elapsed="0.000407"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:41.367817" elapsed="0.000494"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:57:41.368385" elapsed="0.000031"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:41.373049" elapsed="0.000346"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:57:41.373668" elapsed="0.000170"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:57:41.373989" elapsed="0.000119"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:57:41.369123" elapsed="0.005043"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:57:40.978895" elapsed="0.395365"/>
</kw>
<msg time="2026-05-25T01:57:41.374316" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:40.978328" elapsed="0.396042"/>
</kw>
<arg>${system}</arg>
<arg>sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:57:40.977848" elapsed="0.396604"/>
</kw>
<arg>${mininet}</arg>
<status status="PASS" start="2026-05-25T01:57:39.450781" elapsed="1.923730"/>
</kw>
<kw name="Open_Connection_To_Tools_System" owner="SSHKeywords">
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:57:41.379235" level="INFO">${tools_connection} = 47</msg>
<var>${tools_connection}</var>
<arg>${ip_address}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:57:41.378839" elapsed="0.000423"/>
</kw>
<kw name="Flexible_Mininet_Login" owner="SSHKeywords">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:57:41.380914" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:57:41.380990" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:57:41.380638" elapsed="0.000375"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:41.381186" elapsed="0.000333"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:57:41.382372" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:57:42.011187" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:57:41 UTC 2026

  System load:  0.1                Processes:             110
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:57:41 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:57:41.382043" elapsed="0.629302"/>
</kw>
<msg time="2026-05-25T01:57:42.011431" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:41.381687" elapsed="0.629826"/>
</kw>
<arg>user=${user}</arg>
<arg>password=${password}</arg>
<arg>delay=${delay}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:57:41.380197" elapsed="0.631431"/>
</kw>
<msg time="2026-05-25T01:57:42.011683" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Flexible SSH Login</arg>
<arg>user=${user}</arg>
<arg>password=${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:41.379786" elapsed="0.631943"/>
</kw>
<doc>Call Flexible SSH Login, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:57:41.379445" elapsed="0.632358"/>
</kw>
<return>
<value>${tools_connection}</value>
<status status="PASS" start="2026-05-25T01:57:42.011856" elapsed="0.000042"/>
</return>
<msg time="2026-05-25T01:57:42.012108" level="INFO">${mininet_conn_id} = 47</msg>
<var>${mininet_conn_id}</var>
<arg>ip_address=${mininet}</arg>
<arg>timeout=${timeout}</arg>
<doc>Open a connection to the tools system at ${ip_address} and return its identifier.</doc>
<status status="PASS" start="2026-05-25T01:57:41.378380" elapsed="0.633755"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:42.012873" level="INFO">${mininet_conn_id} = 47</msg>
<arg>${mininet_conn_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:42.012445" elapsed="0.000470"/>
</kw>
<if>
<branch type="IF" condition="'${custom}' != '${EMPTY}'">
<kw name="Put File" owner="SSHLibrary">
<arg>${custom}</arg>
<doc>Uploads file(s) from the local machine to the remote machine.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:42.015091" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:42.013000" elapsed="0.002150"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:42.012975" elapsed="0.002200"/>
</if>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:42.015648" level="INFO">Start mininet --topo tree,1 to 10.30.170.200</msg>
<arg>Start mininet ${options} to ${controller}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:42.015348" elapsed="0.000347"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:57:42.018225" level="INFO">sudo mn --controller 'remote,ip=10.30.170.200,port=6633' --topo tree,1 --switch ovsk,protocols=OpenFlow13</msg>
<arg>sudo mn --controller 'remote,ip=${controller},port=${ofport}' ${options} --switch ovsk,protocols=OpenFlow${ofversion}</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:57:42.015860" elapsed="0.002490"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:57:42.179535" level="INFO">[?2004l*** Creating network
*** Adding controller
*** Adding hosts:
h1 h2 
*** Adding switches:
s1 
*** Adding links:
(s1, h1) (s1, h2) 
*** Configuring hosts
h1 h2 
*** Starting controller
c0 
*** Starting 1 switches
s1 ...
*** Starting CLI:
mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:57:42.018515" elapsed="0.161088"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:42.180024" level="INFO">Check OVS configuratiom</msg>
<arg>Check OVS configuratiom</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:42.179795" elapsed="0.000295"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:57:42.182061" level="INFO">sh ovs-vsctl show</msg>
<arg>sh ovs-vsctl show</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:57:42.180248" elapsed="0.001886"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:57:42.196440" level="INFO">d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
        Controller "ptcp:6654"
        fail_mode: secure
        Port s1
            Interface s1
                type: internal
        Port s1-eth2
            Interface s1-eth2
        Port s1-eth1
            Interface s1-eth1
    ovs_version: "2.17.11"
mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:57:42.182298" elapsed="0.014208"/>
</kw>
<return>
<value>${mininet_conn_id}</value>
<status status="PASS" start="2026-05-25T01:57:42.196561" elapsed="0.000040"/>
</return>
<msg time="2026-05-25T01:57:42.196760" level="INFO">${mininet_conn_id} = 47</msg>
<var>${mininet_conn_id}</var>
<doc>Start Mininet with custom topology and connect to controller.</doc>
<status status="PASS" start="2026-05-25T01:57:39.446818" elapsed="2.749967"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:42.197322" level="INFO">${mininet_conn_id} = 47</msg>
<arg>${mininet_conn_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:42.196966" elapsed="0.000397"/>
</kw>
<kw name="Create Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:42.197860" level="INFO">Creating Session using : alias=session, url=http://10.30.170.200:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7f5acc4eac50&gt;, timeout=None, proxies=None, verify=False,                     debug=0 </msg>
<arg>session</arg>
<arg>http://${ODL_SYSTEM_IP}:${RESTCONFPORT}</arg>
<arg>auth=${AUTH}</arg>
<arg>headers=${HEADERS_XML}</arg>
<doc>Create Session: create a HTTP session to a server</doc>
<status status="PASS" start="2026-05-25T01:57:42.197521" elapsed="0.000543"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:42.208647" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:42.208835" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node0mk4krp65kb51icfnpc4so54n2.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 24-May-2026 01:57:42 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '222'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:57:42.209006" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:42.199130" elapsed="0.009912"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:42.212473" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:42.209349" elapsed="0.003191"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-05-25T01:57:42.215954" level="INFO">Item found from container 0 times.</msg>
<msg time="2026-05-25T01:57:42.216086" level="INFO">${count} = 0</msg>
<var>${count}</var>
<arg>${resp.text}</arg>
<arg>"node-id":"openflow:</arg>
<doc>Returns and logs how many times ``item`` is found from ``container``.</doc>
<status status="PASS" start="2026-05-25T01:57:42.212802" elapsed="0.003321"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<msg time="2026-05-25T01:57:42.216749" level="INFO">Argument types are:
&lt;class 'int'&gt;
&lt;class 'str'&gt;</msg>
<msg time="2026-05-25T01:57:42.216886" level="FAIL">0.0 != 1.0</msg>
<arg>${count}</arg>
<arg>${switches}</arg>
<doc>Fails if objects are unequal after converting them to real numbers.</doc>
<status status="FAIL" start="2026-05-25T01:57:42.216354" elapsed="0.000636">0.0 != 1.0</status>
</kw>
<arg>1</arg>
<doc>Check switches are in the topology.</doc>
<status status="FAIL" start="2026-05-25T01:57:42.198822" elapsed="0.018340">0.0 != 1.0</status>
</kw>
<kw name="Check Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:43.228368" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0mk4krp65kb51icfnpc4so54n2.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:43.228718" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '921'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:57:43.229113" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:43.219041" elapsed="0.010139"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.235775" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:43.229673" elapsed="0.006183"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.239361" level="INFO">Item found from container 1 time.</msg>
<msg time="2026-05-25T01:57:43.239475" level="INFO">${count} = 1</msg>
<var>${count}</var>
<arg>${resp.text}</arg>
<arg>"node-id":"openflow:</arg>
<doc>Returns and logs how many times ``item`` is found from ``container``.</doc>
<status status="PASS" start="2026-05-25T01:57:43.236153" elapsed="0.003356"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.240194" level="INFO">Argument types are:
&lt;class 'int'&gt;
&lt;class 'str'&gt;</msg>
<arg>${count}</arg>
<arg>${switches}</arg>
<doc>Fails if objects are unequal after converting them to real numbers.</doc>
<status status="PASS" start="2026-05-25T01:57:43.239738" elapsed="0.000540"/>
</kw>
<arg>1</arg>
<doc>Check switches are in the topology.</doc>
<status status="PASS" start="2026-05-25T01:57:43.218153" elapsed="0.022214"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Switches In Topology</arg>
<arg>1</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:57:42.198256" elapsed="1.042176"/>
</kw>
<doc>Starts mininet and verify if topology is in operational datastore.</doc>
<status status="PASS" start="2026-05-25T01:57:39.446199" elapsed="3.794313"/>
</kw>
<test id="s1-s8-t1" name="Add Alien Flow And Verify It Is In Operational DS" line="23">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:57:43.245706" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f161.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f161.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:57:43.245907" level="INFO">${data} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;284&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
             ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:57:43.245559" elapsed="0.000377"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:57:43.246578" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfac79c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:57:43.246151" elapsed="0.000456"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:43.247155" level="INFO">${table_id} = 0</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:43.246829" elapsed="0.000354"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:43.247670" level="INFO">${flow_id} = 284</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:43.247384" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:43.248191" level="INFO">${flow_priority} = 161</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:43.247891" elapsed="0.000327"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:57:43.249016" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;284&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:57:43.248414" elapsed="0.000633"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.249595" level="INFO">${table_id} = 0</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:43.249265" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.250162" level="INFO">${flow_id} = 284</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:43.249833" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.250744" level="INFO">${flow_priority} = 161</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:43.250403" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.251311" level="INFO">${data} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;284&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
             ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:43.250983" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.251859" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;284&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:43.251550" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.252430" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfac79c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:43.252111" elapsed="0.000362"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:57:43.245178" elapsed="0.007400"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.260591" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;284&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;2&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;match&gt;
        &lt;in-port&gt;1&lt;/in-port&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;flow-name&gt;flow1&lt;/flow-name&gt;
    &lt;priority&gt;161&lt;/priority&gt;
    &lt;table_id&gt;0&lt;/table_id&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:43.260340" elapsed="0.000310"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:43.270612" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0mk4krp65kb51icfnpc4so54n2.node0', 'Content-Length': '889', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;284&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;2&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;match&gt;
        &lt;in-port&gt;1&lt;/in-port&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;flow-name&gt;flow1&lt;/flow-name&gt;
    &lt;priority&gt;161&lt;/priority&gt;
    &lt;table_id&gt;0&lt;/table_id&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:57:43.270675" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=284', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:43.270781" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:43.260815" elapsed="0.009991"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.273403" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:43.271003" elapsed="0.002444"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 0, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:57:43.259868" elapsed="0.013637"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:57:43.289768" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f161.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f161.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:57:43.289897" level="INFO">${data} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;284&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
             ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:57:43.289634" elapsed="0.000292"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:57:43.290516" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc0d74c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:57:43.290132" elapsed="0.000412"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:43.291028" level="INFO">${table_id} = 0</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:43.290748" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:43.291540" level="INFO">${flow_id} = 284</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:43.291267" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:43.292025" level="INFO">${flow_priority} = 161</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:43.291755" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:57:43.292800" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;284&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:57:43.292257" elapsed="0.000573"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.293379" level="INFO">${table_id} = 0</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:43.293026" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.293936" level="INFO">${flow_id} = 284</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:43.293616" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.294556" level="INFO">${flow_priority} = 161</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:43.294225" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.295133" level="INFO">${data} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;284&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
             ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:43.294802" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.295694" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;284&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:43.295375" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.296267" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc0d74c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:43.295931" elapsed="0.000378"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:57:43.289276" elapsed="0.007088"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.296964" level="INFO">${det} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;284&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
             ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:43.296556" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.297450" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;284&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;2&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;match&gt;
        &lt;in-port&gt;1&lt;/in-port&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;flow-name&gt;flow1&lt;/flow-name&gt;
    &lt;priority&gt;161&lt;/priority&gt;
    &lt;table_id&gt;0&lt;/table_id&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:43.297204" elapsed="0.000306"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.306562" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:57:43.306250" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:43.314879" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=284?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=284?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0mk4krp65kb51icfnpc4so54n2.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:43.315405" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=284?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '579'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;284&lt;/id&gt;&lt;table_id&gt;0&lt;/table_id&gt;&lt;priority&gt;161&lt;/priority&gt;&lt;flow-name&gt;flow1&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;1&lt;/in-port&gt;&lt;/match&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;2&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:57:43.315513" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:43.306877" elapsed="0.008662"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.315989" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:43.315735" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.318650" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;284&lt;/id&gt;&lt;table_id&gt;0&lt;/table_id&gt;&lt;priority&gt;161&lt;/priority&gt;&lt;flow-name&gt;flow1&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;1&lt;/in-port&gt;&lt;/match&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;2&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:43.316238" elapsed="0.002496"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:57:43.321710" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:43.318858" elapsed="0.002928"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:43.318831" elapsed="0.002988"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:57:43.326263" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:57:43.326330" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:57:43.322110" elapsed="0.004253"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:43.328678" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:43.326468" elapsed="0.002267"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:43.326441" elapsed="0.002317"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:57:43.328791" elapsed="0.000035"/>
</return>
<msg time="2026-05-25T01:57:43.328991" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:57:43.329035" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (0, 284 and 1</doc>
<status status="PASS" start="2026-05-25T01:57:43.305879" elapsed="0.023179"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:57:43.331516" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:43.329673" elapsed="0.001890"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:43.329655" elapsed="0.001929"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.332188" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:43.331770" elapsed="0.000450"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.332773" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:43.332424" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:57:43.332850" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:57:43.333026" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:57:43.329338" elapsed="0.003713"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:57:43.333264" elapsed="0.000393"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:57:43.305277" elapsed="0.028446"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.342740" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:57:43.342414" elapsed="0.000355"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:43.353092" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0mk4krp65kb51icfnpc4so54n2.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:43.355756" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '1483'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;0&lt;/id&gt;&lt;flow&gt;&lt;id&gt;284&lt;/id&gt;&lt;table_id&gt;0&lt;/table_id&gt;&lt;priority&gt;161&lt;/priority&gt;&lt;flow-name&gt;flow1&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;1&lt;/in-port&gt;&lt;/match&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;2&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*0-6&lt;/id&gt;&lt;table_id&gt;0&lt;/table_id&gt;&lt;priority&gt;0&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match/&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;65535&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;0&lt;/second&gt;&lt;nanosecond&gt;3000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags&gt;SEND_FLOW_REM&lt;/flags&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;1&lt;/packets-looked-up&gt;&lt;active-flows&gt;1&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:57:43.356057" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:43.342928" elapsed="0.013216"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.357359" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:43.356725" elapsed="0.000738"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.363502" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;0&lt;/id&gt;&lt;flow&gt;&lt;id&gt;284&lt;/id&gt;&lt;table_id&gt;0&lt;/table_id&gt;&lt;priority&gt;161&lt;/priority&gt;&lt;flow-name&gt;flow1&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;&lt;in-port&gt;1&lt;/in-port&gt;&lt;/match&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;2&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*0-6&lt;/id&gt;&lt;table_id&gt;0&lt;/table_id&gt;&lt;priority&gt;0&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match/&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;65535&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;0&lt;/second&gt;&lt;nanosecond&gt;3000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags&gt;SEND_FLOW_REM&lt;/flags&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;1&lt;/packets-looked-up&gt;&lt;active-flows&gt;1&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:43.357869" elapsed="0.005705"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:57:43.365761" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:43.363653" elapsed="0.002160"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:43.363628" elapsed="0.002209"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:57:43.369435" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:57:43.369482" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:57:43.366021" elapsed="0.003484"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:43.371613" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:43.369583" elapsed="0.002085"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:43.369564" elapsed="0.002128"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:57:43.371725" elapsed="0.000031"/>
</return>
<msg time="2026-05-25T01:57:43.371925" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:57:43.371968" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (0, 284 and 1</doc>
<status status="PASS" start="2026-05-25T01:57:43.341975" elapsed="0.030016"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:57:43.374442" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:43.372594" elapsed="0.001893"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:43.372577" elapsed="0.001933"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.375152" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:43.374726" elapsed="0.000453"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.375734" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:43.375382" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:57:43.375809" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:57:43.376014" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:57:43.372252" elapsed="0.003789"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:57:43.376257" elapsed="0.000395"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:57:43.341333" elapsed="0.035382"/>
</kw>
<arg>${flowfile}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:57:43.284653" elapsed="0.092120"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Datastore Presence</arg>
<arg>${flowfile}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${False}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:57:43.273674" elapsed="0.103156"/>
</kw>
<kw name="Report Failure Due To Bug" owner="Utils" type="TEARDOWN">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.377982" level="INFO">${test_skipped} = False</msg>
<var>${test_skipped}</var>
<arg>len(re.findall('SKIPPED', """${TEST_MESSAGE}""")) &gt; 0</arg>
<arg>modules=re</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:57:43.377579" elapsed="0.000430"/>
</kw>
<if>
<branch type="IF" condition="('${TEST_STATUS}' != 'FAIL') or ${test_skipped}">
<return>
<status status="PASS" start="2026-05-25T01:57:43.378284" elapsed="0.000027"/>
</return>
<status status="PASS" start="2026-05-25T01:57:43.378137" elapsed="0.000203"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:43.378118" elapsed="0.000247"/>
</if>
<kw name="Comment" owner="BuiltIn">
<arg>Jira tickets are {PROJECT}-{NUMBER} while Bugzilla tickets are {NUMBER}</arg>
<doc>Displays the given messages in the log file as keyword arguments.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:43.378544" elapsed="0.000022"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<var>${match}</var>
<arg>Should Contain</arg>
<arg>${number}</arg>
<arg>-</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:43.378748" elapsed="0.000022"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<var>${bug_url}</var>
<arg>${match}</arg>
<arg>https://jira.opendaylight.org/browse/${number}</arg>
<arg>https://bugs.opendaylight.org/show_bug.cgi?id=${number}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:43.378934" elapsed="0.000019"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<var>${msg}</var>
<arg>This test fails due to ${bug_url}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:43.379125" elapsed="0.000021"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${newline}</var>
<arg>chr(10)</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:43.379295" elapsed="0.000019"/>
</kw>
<kw name="Set Test Message" owner="BuiltIn">
<arg>${msg}${newline}${newline}${TEST_MESSAGE}</arg>
<doc>Sets message for the current test case.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:43.379459" elapsed="0.000020"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:43.379624" elapsed="0.000020"/>
</kw>
<if>
<branch type="IF" condition="&quot;${include_bug_in_tags}&quot;==&quot;True&quot;">
<kw name="Set Tags" owner="BuiltIn">
<arg>${bug_url}</arg>
<doc>Adds given ``tags`` for the current test or all tests in a suite.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:43.379880" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:43.379706" elapsed="0.000225"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:57:43.379690" elapsed="0.000264"/>
</if>
<arg>7258</arg>
<doc>Report that a test failed due to a known Bugzilla bug whose
number is provided as an argument.
Not FAILED (incl. SKIPPED) test are not reported.
This keyword must be used in the [Teardown] setting of the affected test
or as the first line of the test if FastFail module is not being
used. It reports the URL of the bug on console and also puts it
into the Robot log file.</doc>
<status status="PASS" start="2026-05-25T01:57:43.377227" elapsed="0.002775"/>
</kw>
<doc>Add flow with incorrect in-port format to generate alien ID</doc>
<status status="PASS" start="2026-05-25T01:57:43.240594" elapsed="0.139453"/>
</test>
<kw name="Final Phase" type="TEARDOWN">
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:43.390838" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes 
 path_url=/rests/data/opendaylight-inventory:nodes 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0mk4krp65kb51icfnpc4so54n2.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:43.390902" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:43.381249" elapsed="0.009726"/>
</kw>
<arg>RequestsLibrary.DELETE On Session</arg>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:57:43.380833" elapsed="0.010218"/>
</kw>
<kw name="Stop Mininet And Exit" owner="MininetKeywords">
<if>
<branch type="IF" condition="&quot;&quot;&quot;${mininet_conn}&quot;&quot;&quot; != &quot;&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${mininet_conn}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:57:43.397440" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:57:43.397121" elapsed="0.000570"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:43.397092" elapsed="0.000635"/>
</if>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:57:43.399935" level="INFO">exit</msg>
<arg>exit</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:57:43.397921" elapsed="0.002329"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:57:43.519723" level="INFO">*** Stopping 1 controllers
c0 
*** Stopping 2 links
..
*** Stopping 1 switches
s1 
*** Stopping 2 hosts
h1 h2 
*** Done
completed in 1.441 seconds
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${TOOLS_SYSTEM_PROMPT}</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:57:43.400490" elapsed="0.119326"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:57:43.520042" elapsed="0.000258"/>
</kw>
<arg>${mininet_conn_id}</arg>
<doc>Stops Mininet and exits session ${mininet_conn}</doc>
<status status="PASS" start="2026-05-25T01:57:43.396795" elapsed="0.123588"/>
</kw>
<kw name="Delete All Sessions" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:43.520693" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-05-25T01:57:43.520592" elapsed="0.000188"/>
</kw>
<doc>Stops mininet.</doc>
<status status="PASS" start="2026-05-25T01:57:43.380610" elapsed="0.140244"/>
</kw>
<doc>Test suite for bug 6917 validation.</doc>
<status status="PASS" start="2026-05-25T01:57:39.367169" elapsed="4.153727"/>
</suite>
<suite id="s1-s9" name="7335" source="/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Bug_Validation/7335.robot">
<kw name="Initialization Phase" type="SETUP">
<kw name="Start Mininet Single Controller" owner="MininetKeywords">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.604528" level="INFO">Clear any existing mininet</msg>
<arg>Clear any existing mininet</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:43.604236" elapsed="0.000351"/>
</kw>
<kw name="Clean Mininet System" owner="Utils">
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:43.607048" elapsed="0.000039"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:43.606732" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:43.606707" elapsed="0.000530"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:57:43.607563" level="INFO">index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:57:43.607691" level="INFO">${current_ssh_connection} = index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:57:43.607395" elapsed="0.000324"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.608291" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:43.607877" elapsed="0.000462"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:57:43.608892" level="INFO">${conn_id} = 48</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:57:43.608503" elapsed="0.000417"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:57:43.609826" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:57:43.609904" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:57:43.609512" elapsed="0.000416"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:43.610108" elapsed="0.000330"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:57:43.611353" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:57:44.000257" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:57:41 UTC 2026

  System load:  0.1                Processes:             110
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:57:41 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:57:43.611007" elapsed="0.389400"/>
</kw>
<msg time="2026-05-25T01:57:44.000496" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:43.610611" elapsed="0.389976"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:57:43.609159" elapsed="0.391544"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:57:44.001229" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-05-25T01:57:45.158569" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:57:45.158962" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:57:45.159102" level="INFO">${stderr} = *** Removing excess controllers/ofprotocols/ofdatapaths/pings/noxes
killall controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec iv...</msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:57:44.000955" elapsed="1.158212"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:57:45.159712" elapsed="0.000651"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:45.161538" level="INFO">*** Removing excess controllers/ofprotocols/ofdatapaths/pings/noxes
killall controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec ivs ryu-manager 2&gt; /dev/null
killall -9 controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec ivs ryu-manager 2&gt; /dev/null
pkill -9 -f "sudo mnexec"
*** Removing junk from /tmp
rm -f /tmp/vconn* /tmp/vlogs* /tmp/*.out /tmp/*.log
*** Removing old X11 tunnels
*** Removing excess kernel datapaths
ps ax | egrep -o 'dp[0-9]+' | sed 's/dp/nl:/'
***  Removing OVS datapaths
ovs-vsctl --timeout=1 list-br
ovs-vsctl --timeout=1 list-br
*** Removing all links of the pattern foo-ethX
ip link show | egrep -o '([-_.[:alnum:]]+-eth[[:digit:]]+)'
ip link show
*** Killing stale mininet node processes
pkill -9 -f mininet:
*** Shutting down stale tunnels
pkill -9 -f Tunnel=Ethernet
pkill -9 -f .ssh/mn
rm -f ~/.ssh/mn/*
*** Cleanup complete.</msg>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:45.160844" elapsed="0.000816"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:57:45.162164" elapsed="0.000041"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:45.161834" elapsed="0.000441"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:45.161784" elapsed="0.000544"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:57:45.162760" elapsed="0.000069"/>
</return>
<status status="PASS" start="2026-05-25T01:57:45.162486" elapsed="0.000419"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:45.162440" elapsed="0.000520"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:57:45.163036" elapsed="0.000065"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:45.168255" elapsed="0.000455"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:57:45.169090" elapsed="0.000235"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:57:45.169573" elapsed="0.000145"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:57:45.163782" elapsed="0.006013"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:57:43.606211" elapsed="1.563715"/>
</kw>
<msg time="2026-05-25T01:57:45.170004" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:43.605609" elapsed="1.564488"/>
</kw>
<arg>${system}</arg>
<arg>sudo mn -c</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:57:43.605151" elapsed="1.565062"/>
</kw>
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:45.173003" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:45.172602" elapsed="0.000502"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:45.172576" elapsed="0.000564"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:57:45.173538" level="INFO">index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:57:45.173682" level="INFO">${current_ssh_connection} = index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:57:45.173350" elapsed="0.000369"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:45.174497" level="INFO">Attempting to execute command "sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:45.173931" elapsed="0.000633"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:57:45.175308" level="INFO">${conn_id} = 50</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:57:45.174784" elapsed="0.000561"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:57:45.176536" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:57:45.176643" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:57:45.176141" elapsed="0.000535"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:45.176896" elapsed="0.000479"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:57:45.178913" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:57:45.498065" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:57:41 UTC 2026

  System load:  0.1                Processes:             110
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:57:43 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:57:45.178474" elapsed="0.319760"/>
</kw>
<msg time="2026-05-25T01:57:45.498320" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:45.177907" elapsed="0.320518"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:57:45.175642" elapsed="0.322900"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:57:45.499054" level="INFO">Executing command 'sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh'.</msg>
<msg time="2026-05-25T01:57:45.531737" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-05-25T01:57:45.532020" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:57:45.532317" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:57:45.498801" elapsed="0.033691"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:57:45.532900" elapsed="0.000520"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:45.534574" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:45.533882" elapsed="0.000785"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:57:45.535170" elapsed="0.000043"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:45.534844" elapsed="0.000440"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:45.534790" elapsed="0.000545"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:57:45.535707" elapsed="0.000064"/>
</return>
<status status="PASS" start="2026-05-25T01:57:45.535452" elapsed="0.000404"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:45.535418" elapsed="0.000493"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:57:45.535987" elapsed="0.000031"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:45.541048" elapsed="0.000499"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:57:45.541795" elapsed="0.000235"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:57:45.542272" elapsed="0.000163"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:57:45.536866" elapsed="0.005646"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:57:45.171909" elapsed="0.370738"/>
</kw>
<msg time="2026-05-25T01:57:45.542727" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:45.171131" elapsed="0.371673"/>
</kw>
<arg>${system}</arg>
<arg>sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:57:45.170477" elapsed="0.372444"/>
</kw>
<arg>${mininet}</arg>
<status status="PASS" start="2026-05-25T01:57:43.604813" elapsed="1.938193"/>
</kw>
<kw name="Open_Connection_To_Tools_System" owner="SSHKeywords">
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:57:45.549607" level="INFO">${tools_connection} = 52</msg>
<var>${tools_connection}</var>
<arg>${ip_address}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:57:45.549099" elapsed="0.000544"/>
</kw>
<kw name="Flexible_Mininet_Login" owner="SSHKeywords">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:57:45.551805" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:57:45.551881" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:57:45.551524" elapsed="0.000380"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:45.552062" elapsed="0.000335"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:57:45.553247" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:57:45.920756" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:57:41 UTC 2026

  System load:  0.1                Processes:             110
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:57:45 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:57:45.552917" elapsed="0.367939"/>
</kw>
<msg time="2026-05-25T01:57:45.920924" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:45.552565" elapsed="0.368425"/>
</kw>
<arg>user=${user}</arg>
<arg>password=${password}</arg>
<arg>delay=${delay}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:57:45.550973" elapsed="0.370134"/>
</kw>
<msg time="2026-05-25T01:57:45.921160" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Flexible SSH Login</arg>
<arg>user=${user}</arg>
<arg>password=${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:45.550433" elapsed="0.370775"/>
</kw>
<doc>Call Flexible SSH Login, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:57:45.549897" elapsed="0.371389"/>
</kw>
<return>
<value>${tools_connection}</value>
<status status="PASS" start="2026-05-25T01:57:45.921408" elapsed="0.000037"/>
</return>
<msg time="2026-05-25T01:57:45.921590" level="INFO">${mininet_conn_id} = 52</msg>
<var>${mininet_conn_id}</var>
<arg>ip_address=${mininet}</arg>
<arg>timeout=${timeout}</arg>
<doc>Open a connection to the tools system at ${ip_address} and return its identifier.</doc>
<status status="PASS" start="2026-05-25T01:57:45.548464" elapsed="0.373152"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:45.922301" level="INFO">${mininet_conn_id} = 52</msg>
<arg>${mininet_conn_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:45.921874" elapsed="0.000473"/>
</kw>
<if>
<branch type="IF" condition="'${custom}' != '${EMPTY}'">
<kw name="Put File" owner="SSHLibrary">
<arg>${custom}</arg>
<doc>Uploads file(s) from the local machine to the remote machine.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:45.924535" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:45.922426" elapsed="0.002165"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:45.922404" elapsed="0.002212"/>
</if>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:45.925095" level="INFO">Start mininet --topo tree,1 to 10.30.170.200</msg>
<arg>Start mininet ${options} to ${controller}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:45.924788" elapsed="0.000353"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:57:45.927607" level="INFO">sudo mn --controller 'remote,ip=10.30.170.200,port=6633' --topo tree,1 --switch ovsk,protocols=OpenFlow13</msg>
<arg>sudo mn --controller 'remote,ip=${controller},port=${ofport}' ${options} --switch ovsk,protocols=OpenFlow${ofversion}</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:57:45.925303" elapsed="0.002361"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:57:46.085461" level="INFO">[?2004l*** Creating network
*** Adding controller
*** Adding hosts:
h1 h2 
*** Adding switches:
s1 
*** Adding links:
(s1, h1) (s1, h2) 
*** Configuring hosts
h1 h2 
*** Starting controller
c0 
*** Starting 1 switches
s1 ...
*** Starting CLI:
mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:57:45.927824" elapsed="0.157771"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:46.086296" level="INFO">Check OVS configuratiom</msg>
<arg>Check OVS configuratiom</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:46.085918" elapsed="0.000431"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:57:46.088215" level="INFO">sh ovs-vsctl show</msg>
<arg>sh ovs-vsctl show</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:57:46.086524" elapsed="0.001747"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:57:46.097903" level="INFO">d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
        Controller "ptcp:6654"
        fail_mode: secure
        Port s1-eth1
            Interface s1-eth1
        Port s1
            Interface s1
                type: internal
        Port s1-eth2
            Interface s1-eth2
    ovs_version: "2.17.11"
mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:57:46.088431" elapsed="0.009536"/>
</kw>
<return>
<value>${mininet_conn_id}</value>
<status status="PASS" start="2026-05-25T01:57:46.098021" elapsed="0.000061"/>
</return>
<msg time="2026-05-25T01:57:46.098288" level="INFO">${mininet_conn_id} = 52</msg>
<var>${mininet_conn_id}</var>
<doc>Start Mininet with custom topology and connect to controller.</doc>
<status status="PASS" start="2026-05-25T01:57:43.601961" elapsed="2.496355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:46.098836" level="INFO">${mininet_conn_id} = 52</msg>
<arg>${mininet_conn_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:46.098493" elapsed="0.000385"/>
</kw>
<kw name="Create Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:46.099409" level="INFO">Creating Session using : alias=session, url=http://10.30.170.200:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7f5acc1a82d0&gt;, timeout=None, proxies=None, verify=False,                     debug=0 </msg>
<arg>session</arg>
<arg>http://${ODL_SYSTEM_IP}:${RESTCONFPORT}</arg>
<arg>auth=${AUTH}</arg>
<arg>headers=${HEADERS_XML}</arg>
<doc>Create Session: create a HTTP session to a server</doc>
<status status="PASS" start="2026-05-25T01:57:46.099039" elapsed="0.000566"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:46.111224" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:46.111424" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node06avzdcsh7f73o5at2ux4ovja3.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 24-May-2026 01:57:46 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '222'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:57:46.111675" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:46.100672" elapsed="0.011062"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:46.117291" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:46.112206" elapsed="0.005192"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-05-25T01:57:46.122873" level="INFO">Item found from container 0 times.</msg>
<msg time="2026-05-25T01:57:46.123050" level="INFO">${count} = 0</msg>
<var>${count}</var>
<arg>${resp.text}</arg>
<arg>"node-id":"openflow:</arg>
<doc>Returns and logs how many times ``item`` is found from ``container``.</doc>
<status status="PASS" start="2026-05-25T01:57:46.117816" elapsed="0.005322"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<msg time="2026-05-25T01:57:46.123691" level="INFO">Argument types are:
&lt;class 'int'&gt;
&lt;class 'str'&gt;</msg>
<msg time="2026-05-25T01:57:46.123858" level="FAIL">0.0 != 1.0</msg>
<arg>${count}</arg>
<arg>${switches}</arg>
<doc>Fails if objects are unequal after converting them to real numbers.</doc>
<status status="FAIL" start="2026-05-25T01:57:46.123405" elapsed="0.000531">0.0 != 1.0</status>
</kw>
<arg>1</arg>
<doc>Check switches are in the topology.</doc>
<status status="FAIL" start="2026-05-25T01:57:46.100388" elapsed="0.023669">0.0 != 1.0</status>
</kw>
<kw name="Check Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:47.135481" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node06avzdcsh7f73o5at2ux4ovja3.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:47.135717" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '921'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:57:47.135876" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:47.125915" elapsed="0.009998"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.139934" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:47.136265" elapsed="0.003745"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.143472" level="INFO">Item found from container 1 time.</msg>
<msg time="2026-05-25T01:57:47.143583" level="INFO">${count} = 1</msg>
<var>${count}</var>
<arg>${resp.text}</arg>
<arg>"node-id":"openflow:</arg>
<doc>Returns and logs how many times ``item`` is found from ``container``.</doc>
<status status="PASS" start="2026-05-25T01:57:47.140302" elapsed="0.003315"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.144349" level="INFO">Argument types are:
&lt;class 'int'&gt;
&lt;class 'str'&gt;</msg>
<arg>${count}</arg>
<arg>${switches}</arg>
<doc>Fails if objects are unequal after converting them to real numbers.</doc>
<status status="PASS" start="2026-05-25T01:57:47.143879" elapsed="0.000551"/>
</kw>
<arg>1</arg>
<doc>Check switches are in the topology.</doc>
<status status="PASS" start="2026-05-25T01:57:47.125059" elapsed="0.019457"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Switches In Topology</arg>
<arg>1</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:57:46.099783" elapsed="1.044798"/>
</kw>
<doc>Starts mininet and verify if topology is in operational datastore.</doc>
<status status="PASS" start="2026-05-25T01:57:43.601478" elapsed="3.543185"/>
</kw>
<test id="s1-s9-t1" name="Add Flow And Check It Is In Operational DS" line="24">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:57:47.149599" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f162.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f162.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:57:47.149814" level="INFO">${data} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;285&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
             ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:57:47.149455" elapsed="0.000389"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:57:47.150502" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe76890&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:57:47.150061" elapsed="0.000469"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:47.151006" level="INFO">${table_id} = 0</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:47.150724" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:47.151512" level="INFO">${flow_id} = 285</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:47.151239" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:47.151996" level="INFO">${flow_priority} = 162</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:47.151726" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:57:47.152826" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;285&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:57:47.152227" elapsed="0.000630"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.153404" level="INFO">${table_id} = 0</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:47.153060" elapsed="0.000441"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.154016" level="INFO">${flow_id} = 285</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:47.153700" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.154627" level="INFO">${flow_priority} = 162</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:47.154296" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.155191" level="INFO">${data} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;285&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
             ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:47.154864" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.155747" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;285&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:47.155436" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.156313" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe76890&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:47.155984" elapsed="0.000375"/>
</kw>
<arg>${XmlsDir}/${flowfile1}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:57:47.149077" elapsed="0.007338"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.164412" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;285&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;2&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;flow-name&gt;flow1&lt;/flow-name&gt;
    &lt;priority&gt;162&lt;/priority&gt;
    &lt;table_id&gt;0&lt;/table_id&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:47.164163" elapsed="0.000306"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:47.176719" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node06avzdcsh7f73o5at2ux4ovja3.node0', 'Content-Length': '860', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;285&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;2&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;flow-name&gt;flow1&lt;/flow-name&gt;
    &lt;priority&gt;162&lt;/priority&gt;
    &lt;table_id&gt;0&lt;/table_id&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:57:47.176887" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=285', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:47.177144" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:47.164626" elapsed="0.012579"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.182992" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:47.177636" elapsed="0.005417"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 0, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:57:47.163702" elapsed="0.019458"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:57:47.199037" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f162.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f162.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:57:47.199185" level="INFO">${data} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;285&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
             ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:57:47.198900" elapsed="0.000314"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:57:47.199803" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe74ae0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:57:47.199406" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:47.200386" level="INFO">${table_id} = 0</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:47.200090" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:47.200899" level="INFO">${flow_id} = 285</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:47.200608" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:47.201439" level="INFO">${flow_priority} = 162</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:47.201156" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:57:47.202223" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;285&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:57:47.201658" elapsed="0.000596"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.202784" level="INFO">${table_id} = 0</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:47.202450" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.203369" level="INFO">${flow_id} = 285</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:47.203019" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.203934" level="INFO">${flow_priority} = 162</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:47.203606" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.204500" level="INFO">${data} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;285&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
             ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:47.204184" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.205083" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;285&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:47.204736" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.205810" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe74ae0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:47.205419" elapsed="0.000436"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:57:47.198534" elapsed="0.007377"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.206551" level="INFO">${det} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;285&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
             ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:47.206150" elapsed="0.000432"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.207014" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;285&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;2&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;flow-name&gt;flow1&lt;/flow-name&gt;
    &lt;priority&gt;162&lt;/priority&gt;
    &lt;table_id&gt;0&lt;/table_id&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:47.206771" elapsed="0.000319"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.216301" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:57:47.215966" elapsed="0.000363"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:47.224015" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=285?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=285?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node06avzdcsh7f73o5at2ux4ovja3.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:47.224685" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=285?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '559'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;285&lt;/id&gt;&lt;table_id&gt;0&lt;/table_id&gt;&lt;priority&gt;162&lt;/priority&gt;&lt;flow-name&gt;flow1&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;2&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:57:47.224920" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:47.216488" elapsed="0.008471"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.225618" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:47.225262" elapsed="0.000421"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.231213" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;285&lt;/id&gt;&lt;table_id&gt;0&lt;/table_id&gt;&lt;priority&gt;162&lt;/priority&gt;&lt;flow-name&gt;flow1&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;2&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:47.225934" elapsed="0.005363"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:57:47.234426" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:47.231410" elapsed="0.003072"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:47.231377" elapsed="0.003129"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:57:47.237627" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:57:47.237674" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:57:47.234691" elapsed="0.003007"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:47.239802" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:47.237773" elapsed="0.002094"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:47.237754" elapsed="0.002139"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:57:47.239927" elapsed="0.000036"/>
</return>
<msg time="2026-05-25T01:57:47.240162" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:57:47.240207" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (0, 285 and 1</doc>
<status status="PASS" start="2026-05-25T01:57:47.215573" elapsed="0.024658"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:57:47.242767" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:47.240820" elapsed="0.002008"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:47.240799" elapsed="0.002058"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.243616" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:47.243108" elapsed="0.000541"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.244286" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:47.243890" elapsed="0.000422"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:57:47.244364" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:57:47.244544" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:57:47.240469" elapsed="0.004101"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:57:47.244776" elapsed="0.000426"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:57:47.214951" elapsed="0.030317"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.254494" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:57:47.254164" elapsed="0.000359"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:47.262058" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node06avzdcsh7f73o5at2ux4ovja3.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:47.263804" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '1463'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;0&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*0-7&lt;/id&gt;&lt;table_id&gt;0&lt;/table_id&gt;&lt;priority&gt;0&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match/&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;65535&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;0&lt;/second&gt;&lt;nanosecond&gt;7000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags&gt;SEND_FLOW_REM&lt;/flags&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;285&lt;/id&gt;&lt;table_id&gt;0&lt;/table_id&gt;&lt;priority&gt;162&lt;/priority&gt;&lt;flow-name&gt;flow1&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;2&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;1&lt;/packets-looked-up&gt;&lt;active-flows&gt;1&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:57:47.263997" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:47.254681" elapsed="0.009344"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.264521" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:47.264251" elapsed="0.000317"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.267881" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;0&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*0-7&lt;/id&gt;&lt;table_id&gt;0&lt;/table_id&gt;&lt;priority&gt;0&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match/&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;65535&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;0&lt;/second&gt;&lt;nanosecond&gt;7000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags&gt;SEND_FLOW_REM&lt;/flags&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;285&lt;/id&gt;&lt;table_id&gt;0&lt;/table_id&gt;&lt;priority&gt;162&lt;/priority&gt;&lt;flow-name&gt;flow1&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;2&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;1&lt;/packets-looked-up&gt;&lt;active-flows&gt;1&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:47.264756" elapsed="0.003227"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:57:47.271147" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:47.268110" elapsed="0.003110"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:47.268057" elapsed="0.003194"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:57:47.277895" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:57:47.278003" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:57:47.271509" elapsed="0.006642"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:47.280390" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:47.278335" elapsed="0.002111"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:47.278289" elapsed="0.002182"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:57:47.280505" elapsed="0.000030"/>
</return>
<msg time="2026-05-25T01:57:47.280705" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:57:47.280749" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (0, 285 and 1</doc>
<status status="PASS" start="2026-05-25T01:57:47.253684" elapsed="0.027088"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:57:47.283266" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:47.281373" elapsed="0.001940"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:47.281355" elapsed="0.001980"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.283957" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:47.283526" elapsed="0.000458"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.284570" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:47.284208" elapsed="0.000388"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:57:47.284650" elapsed="0.000037"/>
</return>
<msg time="2026-05-25T01:57:47.284845" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:57:47.281015" elapsed="0.003856"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:57:47.285085" elapsed="0.000404"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:57:47.253020" elapsed="0.032534"/>
</kw>
<arg>${flowfile1}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:57:47.194693" elapsed="0.090920"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Datastore Presence</arg>
<arg>${flowfile1}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:57:47.183396" elapsed="0.102273"/>
</kw>
<doc>Add flow match IP and Ethertype IP</doc>
<status status="PASS" start="2026-05-25T01:57:47.144747" elapsed="0.141054"/>
</test>
<test id="s1-s9-t2" name="Update Flow With Invalid Match And Check It Is Not In Operational DS" line="38">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:57:47.290754" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f163.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f163.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:57:47.290929" level="INFO">${data} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;285&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
             ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:57:47.290611" elapsed="0.000349"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:57:47.291611" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38b380&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:57:47.291184" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:47.292150" level="INFO">${table_id} = 0</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:47.291841" elapsed="0.000336"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:47.292649" level="INFO">${flow_id} = 285</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:47.292372" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:47.293162" level="INFO">${flow_priority} = 162</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:47.292868" elapsed="0.000320"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:57:47.294147" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;285&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:57:47.293382" elapsed="0.000797"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.294715" level="INFO">${table_id} = 0</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:47.294385" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.295288" level="INFO">${flow_id} = 285</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:47.294955" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.295870" level="INFO">${flow_priority} = 162</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:47.295527" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.296438" level="INFO">${data} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;285&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
             ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:47.296128" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.296992" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;285&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:47.296680" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.297565" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc38b380&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:47.297250" elapsed="0.000358"/>
</kw>
<arg>${XmlsDir}/${flowfile2}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:57:47.290245" elapsed="0.007418"/>
</kw>
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.306052" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;285&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;2&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;match&gt;
        &lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;flow-name&gt;flow1&lt;/flow-name&gt;
    &lt;priority&gt;162&lt;/priority&gt;
    &lt;table_id&gt;0&lt;/table_id&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:47.305781" elapsed="0.000347"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:47.317936" level="INFO">PUT Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=285 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=285 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node06avzdcsh7f73o5at2ux4ovja3.node0', 'Content-Length': '718', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;285&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;2&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;match&gt;
        &lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;flow-name&gt;flow1&lt;/flow-name&gt;
    &lt;priority&gt;162&lt;/priority&gt;
    &lt;table_id&gt;0&lt;/table_id&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:57:47.318135" level="INFO">PUT Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=285 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:47.318273" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=204</arg>
<doc>Sends a PUT request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:47.306302" elapsed="0.012008"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.323865" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:47.318739" elapsed="0.005225"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<arg>${data}</arg>
<doc>Updates a flow configuration by given flow details (${node_id}, 0, ${flow_body}) using PUT method</doc>
<status status="PASS" start="2026-05-25T01:57:47.305301" elapsed="0.018828"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.338053" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:57:47.337713" elapsed="0.000382"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:47.345374" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=285?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=285?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node06avzdcsh7f73o5at2ux4ovja3.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:47.345804" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=285?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '478'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;285&lt;/id&gt;&lt;table_id&gt;0&lt;/table_id&gt;&lt;priority&gt;162&lt;/priority&gt;&lt;flow-name&gt;flow1&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;2&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:57:47.345906" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:47.338258" elapsed="0.007673"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.346432" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:47.346175" elapsed="0.000305"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.348945" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;285&lt;/id&gt;&lt;table_id&gt;0&lt;/table_id&gt;&lt;priority&gt;162&lt;/priority&gt;&lt;flow-name&gt;flow1&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;2&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:47.346660" elapsed="0.002341"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:57:47.351593" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:47.349089" elapsed="0.002577"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:47.349053" elapsed="0.002646"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:57:47.357879" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:57:47.357947" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:57:47.351951" elapsed="0.006030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:47.361325" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:47.358146" elapsed="0.003263"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:47.358114" elapsed="0.003330"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:57:47.361493" elapsed="0.000047"/>
</return>
<msg time="2026-05-25T01:57:47.361782" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:57:47.361843" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (0, 285 and 1</doc>
<status status="PASS" start="2026-05-25T01:57:47.337333" elapsed="0.024542"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:57:47.364510" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:47.362641" elapsed="0.001915"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:47.362623" elapsed="0.001956"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.365228" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:47.364776" elapsed="0.000480"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.365825" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:47.365463" elapsed="0.000389"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:57:47.365972" elapsed="0.000041"/>
</return>
<msg time="2026-05-25T01:57:47.366189" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:57:47.362277" elapsed="0.003939"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:57:47.366421" elapsed="0.000407"/>
</kw>
<arg>${True}</arg>
<arg>${data}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:57:47.336618" elapsed="0.030276"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="No Content From URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:47.381747" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=285?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=285?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node06avzdcsh7f73o5at2ux4ovja3.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:47.381860" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=285?content=nonconfig 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/yang-data+json', 'Content-Length': '242'} 
 body={
  "errors": {
    "error": [
      {
        "error-tag": "data-missing",
        "error-message": "Request could not be completed because the relevant data model content does not exist",
        "error-type": "protocol"
      }
    ]
  }
} 
 </msg>
<msg time="2026-05-25T01:57:47.381954" level="INFO">${resp} = &lt;Response [409]&gt;</msg>
<var>${resp}</var>
<arg>${session}</arg>
<arg>url=${uri}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:47.374853" elapsed="0.007127"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code} == 404 or ${resp.status_code} == 409">
<return>
<status status="PASS" start="2026-05-25T01:57:47.387853" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-05-25T01:57:47.382121" elapsed="0.005815"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:47.382099" elapsed="0.005872"/>
</if>
<kw name="Log" owner="BuiltIn">
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:47.388210" elapsed="0.000033"/>
</kw>
<kw name="Fail" owner="BuiltIn">
<arg>The request failed with code ${resp.status_code}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:47.388451" elapsed="0.000028"/>
</kw>
<arg>session</arg>
<arg>${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=nonconfig</arg>
<doc>Issue a Get On Session and return on error 404 (No content) or will fail and log the content.
Issues a Get On Session for ${uri} in ${session} using headers from
{'Content-Type': 'application/json'}. If the request returns a HTTP error, fails. Otherwise
returns the data obtained by the request.</doc>
<status status="PASS" start="2026-05-25T01:57:47.374312" elapsed="0.014247"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>Utils.No Content From URI</arg>
<arg>session</arg>
<arg>${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=nonconfig</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:57:47.367083" elapsed="0.021546"/>
</kw>
<kw name="Report Failure Due To Bug" owner="Utils" type="TEARDOWN">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.390307" level="INFO">${test_skipped} = False</msg>
<var>${test_skipped}</var>
<arg>len(re.findall('SKIPPED', """${TEST_MESSAGE}""")) &gt; 0</arg>
<arg>modules=re</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:57:47.389670" elapsed="0.000676"/>
</kw>
<if>
<branch type="IF" condition="('${TEST_STATUS}' != 'FAIL') or ${test_skipped}">
<return>
<status status="PASS" start="2026-05-25T01:57:47.390648" elapsed="0.000036"/>
</return>
<status status="PASS" start="2026-05-25T01:57:47.390451" elapsed="0.000274"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:47.390425" elapsed="0.000332"/>
</if>
<kw name="Comment" owner="BuiltIn">
<arg>Jira tickets are {PROJECT}-{NUMBER} while Bugzilla tickets are {NUMBER}</arg>
<doc>Displays the given messages in the log file as keyword arguments.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:47.391007" elapsed="0.000030"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<var>${match}</var>
<arg>Should Contain</arg>
<arg>${number}</arg>
<arg>-</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:47.391277" elapsed="0.000029"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<var>${bug_url}</var>
<arg>${match}</arg>
<arg>https://jira.opendaylight.org/browse/${number}</arg>
<arg>https://bugs.opendaylight.org/show_bug.cgi?id=${number}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:47.391533" elapsed="0.000028"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<var>${msg}</var>
<arg>This test fails due to ${bug_url}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:47.391774" elapsed="0.000027"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${newline}</var>
<arg>chr(10)</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:47.392006" elapsed="0.000027"/>
</kw>
<kw name="Set Test Message" owner="BuiltIn">
<arg>${msg}${newline}${newline}${TEST_MESSAGE}</arg>
<doc>Sets message for the current test case.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:47.392257" elapsed="0.000029"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:47.392487" elapsed="0.000028"/>
</kw>
<if>
<branch type="IF" condition="&quot;${include_bug_in_tags}&quot;==&quot;True&quot;">
<kw name="Set Tags" owner="BuiltIn">
<arg>${bug_url}</arg>
<doc>Adds given ``tags`` for the current test or all tests in a suite.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:47.392842" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:47.392600" elapsed="0.000315"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:57:47.392577" elapsed="0.000371"/>
</if>
<arg>7335</arg>
<doc>Report that a test failed due to a known Bugzilla bug whose
number is provided as an argument.
Not FAILED (incl. SKIPPED) test are not reported.
This keyword must be used in the [Teardown] setting of the affected test
or as the first line of the test if FastFail module is not being
used. It reports the URL of the bug on console and also puts it
into the Robot log file.</doc>
<status status="PASS" start="2026-05-25T01:57:47.389173" elapsed="0.003842"/>
</kw>
<doc>Update flow removing Ethertype, this should remove flow from switch and operational DS</doc>
<status status="PASS" start="2026-05-25T01:57:47.286232" elapsed="0.106927"/>
</test>
<kw name="Final Phase" type="TEARDOWN">
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:47.402410" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes 
 path_url=/rests/data/opendaylight-inventory:nodes 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node06avzdcsh7f73o5at2ux4ovja3.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:47.402455" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:47.395000" elapsed="0.007508"/>
</kw>
<arg>RequestsLibrary.DELETE On Session</arg>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:57:47.394647" elapsed="0.007915"/>
</kw>
<kw name="Stop Mininet And Exit" owner="MininetKeywords">
<if>
<branch type="IF" condition="&quot;&quot;&quot;${mininet_conn}&quot;&quot;&quot; != &quot;&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${mininet_conn}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:57:47.407855" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-05-25T01:57:47.407540" elapsed="0.000586"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:47.407513" elapsed="0.000650"/>
</if>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:57:47.410779" level="INFO">exit</msg>
<arg>exit</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:57:47.408359" elapsed="0.002510"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:57:47.579554" level="INFO">*** Stopping 1 controllers
c0 
*** Stopping 2 links
..
*** Stopping 1 switches
s1 
*** Stopping 2 hosts
h1 h2 
*** Done
completed in 1.585 seconds
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${TOOLS_SYSTEM_PROMPT}</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:57:47.411129" elapsed="0.168594"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:57:47.579979" elapsed="0.000250"/>
</kw>
<arg>${mininet_conn_id}</arg>
<doc>Stops Mininet and exits session ${mininet_conn}</doc>
<status status="PASS" start="2026-05-25T01:57:47.407229" elapsed="0.173067"/>
</kw>
<kw name="Delete All Sessions" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:47.580548" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-05-25T01:57:47.580464" elapsed="0.000177"/>
</kw>
<doc>Stops mininet.</doc>
<status status="PASS" start="2026-05-25T01:57:47.394421" elapsed="0.186279"/>
</kw>
<doc>Test suite for bug 6917 validation.</doc>
<status status="PASS" start="2026-05-25T01:57:43.521864" elapsed="4.058873"/>
</suite>
<suite id="s1-s10" name="7349" source="/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Bug_Validation/7349.robot">
<kw name="Initialization Phase" type="SETUP">
<kw name="Start Mininet Single Controller" owner="MininetKeywords">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.659649" level="INFO">Clear any existing mininet</msg>
<arg>Clear any existing mininet</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:47.659399" elapsed="0.000299"/>
</kw>
<kw name="Clean Mininet System" owner="Utils">
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:47.662118" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:47.661765" elapsed="0.000414"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:47.661740" elapsed="0.000468"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:57:47.662533" level="INFO">index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:57:47.662644" level="INFO">${current_ssh_connection} = index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:57:47.662363" elapsed="0.000307"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.663223" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:47.662825" elapsed="0.000445"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:57:47.663804" level="INFO">${conn_id} = 53</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:57:47.663432" elapsed="0.000398"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:57:47.664697" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:57:47.664773" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:57:47.664412" elapsed="0.000385"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:47.664958" elapsed="0.000340"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:57:47.666169" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:57:48.026371" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:57:41 UTC 2026

  System load:  0.1                Processes:             110
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:57:45 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:57:47.665829" elapsed="0.360835"/>
</kw>
<msg time="2026-05-25T01:57:48.026753" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:47.665470" elapsed="0.361368"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:57:47.664046" elapsed="0.362908"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:57:48.027529" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-05-25T01:57:49.223498" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:57:49.223895" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:57:49.224000" level="INFO">${stderr} = *** Removing excess controllers/ofprotocols/ofdatapaths/pings/noxes
killall controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec iv...</msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:57:48.027254" elapsed="1.196805"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:57:49.224623" elapsed="0.000659"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:49.226500" level="INFO">*** Removing excess controllers/ofprotocols/ofdatapaths/pings/noxes
killall controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec ivs ryu-manager 2&gt; /dev/null
killall -9 controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec ivs ryu-manager 2&gt; /dev/null
pkill -9 -f "sudo mnexec"
*** Removing junk from /tmp
rm -f /tmp/vconn* /tmp/vlogs* /tmp/*.out /tmp/*.log
*** Removing old X11 tunnels
*** Removing excess kernel datapaths
ps ax | egrep -o 'dp[0-9]+' | sed 's/dp/nl:/'
***  Removing OVS datapaths
ovs-vsctl --timeout=1 list-br
ovs-vsctl --timeout=1 list-br
*** Removing all links of the pattern foo-ethX
ip link show | egrep -o '([-_.[:alnum:]]+-eth[[:digit:]]+)'
ip link show
*** Killing stale mininet node processes
pkill -9 -f mininet:
*** Shutting down stale tunnels
pkill -9 -f Tunnel=Ethernet
pkill -9 -f .ssh/mn
rm -f ~/.ssh/mn/*
*** Cleanup complete.</msg>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:49.225786" elapsed="0.000841"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:57:49.227174" elapsed="0.000051"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:49.226809" elapsed="0.000494"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:49.226756" elapsed="0.000599"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:57:49.227742" elapsed="0.000072"/>
</return>
<status status="PASS" start="2026-05-25T01:57:49.227482" elapsed="0.000408"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:49.227444" elapsed="0.000502"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:57:49.228026" elapsed="0.000034"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:49.233929" elapsed="0.000662"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:57:49.234764" elapsed="0.000173"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:57:49.235106" elapsed="0.000103"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:57:49.228801" elapsed="0.006463"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:57:47.661269" elapsed="1.574091"/>
</kw>
<msg time="2026-05-25T01:57:49.235418" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:47.660686" elapsed="1.574787"/>
</kw>
<arg>${system}</arg>
<arg>sudo mn -c</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:57:47.660234" elapsed="1.575324"/>
</kw>
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:49.237600" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:49.237307" elapsed="0.000353"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:49.237287" elapsed="0.000414"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:57:49.238001" level="INFO">index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:57:49.238125" level="INFO">${current_ssh_connection} = index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:57:49.237859" elapsed="0.000293"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:49.238697" level="INFO">Attempting to execute command "sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:49.238308" elapsed="0.000511"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:57:49.239386" level="INFO">${conn_id} = 55</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:57:49.238986" elapsed="0.000434"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:57:49.240314" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:57:49.240393" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:57:49.240007" elapsed="0.000411"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:49.240581" elapsed="0.000325"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:57:49.241796" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:57:49.554289" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:57:41 UTC 2026

  System load:  0.1                Processes:             110
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:57:47 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:57:49.241459" elapsed="0.312965"/>
</kw>
<msg time="2026-05-25T01:57:49.554504" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:49.241094" elapsed="0.313486"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:57:49.239652" elapsed="0.315034"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:57:49.555186" level="INFO">Executing command 'sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh'.</msg>
<msg time="2026-05-25T01:57:49.587923" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-05-25T01:57:49.588355" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:57:49.588458" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:57:49.554925" elapsed="0.033589"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:57:49.589008" elapsed="0.000676"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:49.590841" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:49.590197" elapsed="0.000738"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:57:49.591440" elapsed="0.000039"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:49.591141" elapsed="0.000408"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:49.591059" elapsed="0.000542"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:57:49.591947" elapsed="0.000068"/>
</return>
<status status="PASS" start="2026-05-25T01:57:49.591717" elapsed="0.000399"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:49.591683" elapsed="0.000489"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:57:49.592247" elapsed="0.000031"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:49.597993" elapsed="0.000752"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:57:49.599152" elapsed="0.000347"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:57:49.599826" elapsed="0.000210"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:57:49.592957" elapsed="0.007230"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:57:49.236801" elapsed="0.363588"/>
</kw>
<msg time="2026-05-25T01:57:49.600508" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:49.236218" elapsed="0.364402"/>
</kw>
<arg>${system}</arg>
<arg>sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:57:49.235740" elapsed="0.365050"/>
</kw>
<arg>${mininet}</arg>
<status status="PASS" start="2026-05-25T01:57:47.659906" elapsed="1.941119"/>
</kw>
<kw name="Open_Connection_To_Tools_System" owner="SSHKeywords">
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:57:49.606743" level="INFO">${tools_connection} = 57</msg>
<var>${tools_connection}</var>
<arg>${ip_address}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:57:49.606367" elapsed="0.000403"/>
</kw>
<kw name="Flexible_Mininet_Login" owner="SSHKeywords">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:57:49.608444" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:57:49.608521" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:57:49.608153" elapsed="0.000391"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:49.608704" elapsed="0.000319"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:57:49.609909" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:57:49.933341" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:57:41 UTC 2026

  System load:  0.1                Processes:             110
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:57:49 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:57:49.609567" elapsed="0.323970"/>
</kw>
<msg time="2026-05-25T01:57:49.933653" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:49.609208" elapsed="0.324536"/>
</kw>
<arg>user=${user}</arg>
<arg>password=${password}</arg>
<arg>delay=${delay}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:57:49.607703" elapsed="0.326169"/>
</kw>
<msg time="2026-05-25T01:57:49.933925" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Flexible SSH Login</arg>
<arg>user=${user}</arg>
<arg>password=${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:49.607305" elapsed="0.326667"/>
</kw>
<doc>Call Flexible SSH Login, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:57:49.606954" elapsed="0.327094"/>
</kw>
<return>
<value>${tools_connection}</value>
<status status="PASS" start="2026-05-25T01:57:49.934127" elapsed="0.000047"/>
</return>
<msg time="2026-05-25T01:57:49.934359" level="INFO">${mininet_conn_id} = 57</msg>
<var>${mininet_conn_id}</var>
<arg>ip_address=${mininet}</arg>
<arg>timeout=${timeout}</arg>
<doc>Open a connection to the tools system at ${ip_address} and return its identifier.</doc>
<status status="PASS" start="2026-05-25T01:57:49.605900" elapsed="0.328485"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:49.935177" level="INFO">${mininet_conn_id} = 57</msg>
<arg>${mininet_conn_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:49.934719" elapsed="0.000503"/>
</kw>
<if>
<branch type="IF" condition="'${custom}' != '${EMPTY}'">
<kw name="Put File" owner="SSHLibrary">
<arg>${custom}</arg>
<doc>Uploads file(s) from the local machine to the remote machine.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:49.937432" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:49.935306" elapsed="0.002183"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:49.935283" elapsed="0.002231"/>
</if>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:49.938025" level="INFO">Start mininet --topo tree,1 to 10.30.170.200</msg>
<arg>Start mininet ${options} to ${controller}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:49.937720" elapsed="0.000368"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:57:49.940503" level="INFO">sudo mn --controller 'remote,ip=10.30.170.200,port=6633' --topo tree,1 --switch ovsk,protocols=OpenFlow13</msg>
<arg>sudo mn --controller 'remote,ip=${controller},port=${ofport}' ${options} --switch ovsk,protocols=OpenFlow${ofversion}</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:57:49.938256" elapsed="0.002305"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:57:50.090155" level="INFO">[?2004l*** Creating network
*** Adding controller
*** Adding hosts:
h1 h2 
*** Adding switches:
s1 
*** Adding links:
(s1, h1) (s1, h2) 
*** Configuring hosts
h1 h2 
*** Starting controller
c0 
*** Starting 1 switches
s1 ...
*** Starting CLI:
mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:57:49.940722" elapsed="0.149614"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:50.091058" level="INFO">Check OVS configuratiom</msg>
<arg>Check OVS configuratiom</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:50.090709" elapsed="0.000416"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:57:50.092582" level="INFO">sh ovs-vsctl show</msg>
<arg>sh ovs-vsctl show</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:57:50.091299" elapsed="0.001340"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:57:50.101988" level="INFO">d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
        Controller "ptcp:6654"
        fail_mode: secure
        Port s1-eth2
            Interface s1-eth2
        Port s1
            Interface s1
                type: internal
        Port s1-eth1
            Interface s1-eth1
    ovs_version: "2.17.11"
mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:57:50.092807" elapsed="0.009350"/>
</kw>
<return>
<value>${mininet_conn_id}</value>
<status status="PASS" start="2026-05-25T01:57:50.102247" elapsed="0.000066"/>
</return>
<msg time="2026-05-25T01:57:50.102682" level="INFO">${mininet_conn_id} = 57</msg>
<var>${mininet_conn_id}</var>
<doc>Start Mininet with custom topology and connect to controller.</doc>
<status status="PASS" start="2026-05-25T01:57:47.657194" elapsed="2.445515"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:50.103401" level="INFO">${mininet_conn_id} = 57</msg>
<arg>${mininet_conn_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:50.102947" elapsed="0.000499"/>
</kw>
<kw name="Create Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:50.103966" level="INFO">Creating Session using : alias=session, url=http://10.30.170.200:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7f5acc0bd850&gt;, timeout=None, proxies=None, verify=False,                     debug=0 </msg>
<arg>session</arg>
<arg>http://${ODL_SYSTEM_IP}:${RESTCONFPORT}</arg>
<arg>auth=${AUTH}</arg>
<arg>headers=${HEADERS_XML}</arg>
<doc>Create Session: create a HTTP session to a server</doc>
<status status="PASS" start="2026-05-25T01:57:50.103611" elapsed="0.000571"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:50.114028" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:50.114271" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node0abimpba1bawd9wj4mwig5rtw4.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 24-May-2026 01:57:50 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '222'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:57:50.114454" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:50.105247" elapsed="0.009241"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:50.117288" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:50.114820" elapsed="0.002517"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-05-25T01:57:50.119761" level="INFO">Item found from container 0 times.</msg>
<msg time="2026-05-25T01:57:50.119840" level="INFO">${count} = 0</msg>
<var>${count}</var>
<arg>${resp.text}</arg>
<arg>"node-id":"openflow:</arg>
<doc>Returns and logs how many times ``item`` is found from ``container``.</doc>
<status status="PASS" start="2026-05-25T01:57:50.117546" elapsed="0.002318"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<msg time="2026-05-25T01:57:50.120339" level="INFO">Argument types are:
&lt;class 'int'&gt;
&lt;class 'str'&gt;</msg>
<msg time="2026-05-25T01:57:50.120447" level="FAIL">0.0 != 1.0</msg>
<arg>${count}</arg>
<arg>${switches}</arg>
<doc>Fails if objects are unequal after converting them to real numbers.</doc>
<status status="FAIL" start="2026-05-25T01:57:50.120040" elapsed="0.000481">0.0 != 1.0</status>
</kw>
<arg>1</arg>
<doc>Check switches are in the topology.</doc>
<status status="FAIL" start="2026-05-25T01:57:50.104957" elapsed="0.015687">0.0 != 1.0</status>
</kw>
<kw name="Check Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:51.132816" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0abimpba1bawd9wj4mwig5rtw4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:51.133039" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '921'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:57:51.133217" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:51.122518" elapsed="0.010736"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.138198" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:51.133626" elapsed="0.004650"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.141873" level="INFO">Item found from container 1 time.</msg>
<msg time="2026-05-25T01:57:51.142058" level="INFO">${count} = 1</msg>
<var>${count}</var>
<arg>${resp.text}</arg>
<arg>"node-id":"openflow:</arg>
<doc>Returns and logs how many times ``item`` is found from ``container``.</doc>
<status status="PASS" start="2026-05-25T01:57:51.138544" elapsed="0.003572"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.142693" level="INFO">Argument types are:
&lt;class 'int'&gt;
&lt;class 'str'&gt;</msg>
<arg>${count}</arg>
<arg>${switches}</arg>
<doc>Fails if objects are unequal after converting them to real numbers.</doc>
<status status="PASS" start="2026-05-25T01:57:51.142352" elapsed="0.000399"/>
</kw>
<arg>1</arg>
<doc>Check switches are in the topology.</doc>
<status status="PASS" start="2026-05-25T01:57:51.121664" elapsed="0.021152"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Switches In Topology</arg>
<arg>1</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:57:50.104361" elapsed="1.038501"/>
</kw>
<doc>Starts mininet and verify if topology is in operational datastore.</doc>
<status status="PASS" start="2026-05-25T01:57:47.656764" elapsed="3.486159"/>
</kw>
<test id="s1-s10-t1" name="Add Flow And Check It Is In Operational DS" line="24">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:57:51.147419" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f162.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f162.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:57:51.147589" level="INFO">${data} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;285&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
             ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:57:51.147273" elapsed="0.000345"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:57:51.148257" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc12f4c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:57:51.147809" elapsed="0.000476"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:51.148763" level="INFO">${table_id} = 0</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:51.148478" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:51.149271" level="INFO">${flow_id} = 285</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:51.148981" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:51.150417" level="INFO">${flow_priority} = 162</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:51.149549" elapsed="0.000901"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:57:51.151271" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;285&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:57:51.150646" elapsed="0.000656"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.151834" level="INFO">${table_id} = 0</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:51.151503" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.152416" level="INFO">${flow_id} = 285</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:51.152103" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.152994" level="INFO">${flow_priority} = 162</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:51.152673" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.153594" level="INFO">${data} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;285&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
             ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:51.153245" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.154160" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;285&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:51.153835" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.154709" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc12f4c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:51.154395" elapsed="0.000356"/>
</kw>
<arg>${XmlsDir}/${flowfile1}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:57:51.146886" elapsed="0.007920"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.163097" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;285&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;2&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;flow-name&gt;flow1&lt;/flow-name&gt;
    &lt;priority&gt;162&lt;/priority&gt;
    &lt;table_id&gt;0&lt;/table_id&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:51.162825" elapsed="0.000332"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:51.178612" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0abimpba1bawd9wj4mwig5rtw4.node0', 'Content-Length': '860', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;285&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;2&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;flow-name&gt;flow1&lt;/flow-name&gt;
    &lt;priority&gt;162&lt;/priority&gt;
    &lt;table_id&gt;0&lt;/table_id&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:57:51.178759" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=285', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:51.178972" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:51.163386" elapsed="0.015656"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.185190" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:51.179533" elapsed="0.005773"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 0, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:57:51.162369" elapsed="0.023131"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:57:51.202457" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f162.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f162.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:57:51.202627" level="INFO">${data} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;285&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
             ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:57:51.202314" elapsed="0.000343"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:57:51.203273" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1b7ce0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:57:51.202850" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:51.203797" level="INFO">${table_id} = 0</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:51.203495" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:51.204320" level="INFO">${flow_id} = 285</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:51.204022" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:51.204819" level="INFO">${flow_priority} = 162</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:51.204534" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:57:51.205656" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;285&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:57:51.205034" elapsed="0.000654"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.206329" level="INFO">${table_id} = 0</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:51.205961" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.206918" level="INFO">${flow_id} = 285</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:51.206568" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.207511" level="INFO">${flow_priority} = 162</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:51.207174" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.208117" level="INFO">${data} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;285&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
             ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:51.207767" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.208693" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;285&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:51.208359" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.209385" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1b7ce0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:51.208935" elapsed="0.000548"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:57:51.201928" elapsed="0.007612"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.210184" level="INFO">${det} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;285&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
             ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:51.209754" elapsed="0.000461"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.210650" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;285&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;2&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;flow-name&gt;flow1&lt;/flow-name&gt;
    &lt;priority&gt;162&lt;/priority&gt;
    &lt;table_id&gt;0&lt;/table_id&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:51.210403" elapsed="0.000315"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.219855" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:57:51.219526" elapsed="0.000358"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:51.227028" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=285?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=285?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0abimpba1bawd9wj4mwig5rtw4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:51.227204" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=285?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '559'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;285&lt;/id&gt;&lt;table_id&gt;0&lt;/table_id&gt;&lt;priority&gt;162&lt;/priority&gt;&lt;flow-name&gt;flow1&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;2&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:57:51.227311" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:51.220045" elapsed="0.007292"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.227918" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:51.227554" elapsed="0.000440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.233639" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;285&lt;/id&gt;&lt;table_id&gt;0&lt;/table_id&gt;&lt;priority&gt;162&lt;/priority&gt;&lt;flow-name&gt;flow1&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;2&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:51.228273" elapsed="0.005450"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:57:51.236853" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:51.233834" elapsed="0.003094"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:51.233802" elapsed="0.003160"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:57:51.240613" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:57:51.240661" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:57:51.237252" elapsed="0.003432"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:51.242837" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:51.240761" elapsed="0.002132"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:51.240741" elapsed="0.002176"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:57:51.242952" elapsed="0.000035"/>
</return>
<msg time="2026-05-25T01:57:51.243176" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:57:51.243221" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (0, 285 and 1</doc>
<status status="PASS" start="2026-05-25T01:57:51.219151" elapsed="0.024095"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:57:51.245780" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:51.243893" elapsed="0.001934"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:51.243875" elapsed="0.001975"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.246489" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:51.246038" elapsed="0.000480"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.247096" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:51.246721" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:57:51.247175" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:57:51.247363" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:57:51.243549" elapsed="0.003841"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:57:51.247596" elapsed="0.000405"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:57:51.218485" elapsed="0.029597"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.257182" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:57:51.256851" elapsed="0.000358"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:51.267093" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0abimpba1bawd9wj4mwig5rtw4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:51.268824" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '1463'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;0&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*0-8&lt;/id&gt;&lt;table_id&gt;0&lt;/table_id&gt;&lt;priority&gt;0&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match/&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;65535&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;0&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags&gt;SEND_FLOW_REM&lt;/flags&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;285&lt;/id&gt;&lt;table_id&gt;0&lt;/table_id&gt;&lt;priority&gt;162&lt;/priority&gt;&lt;flow-name&gt;flow1&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;2&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;1&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:57:51.268951" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:51.257391" elapsed="0.011586"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.269514" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:51.269199" elapsed="0.000363"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.274413" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;0&lt;/id&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*0-8&lt;/id&gt;&lt;table_id&gt;0&lt;/table_id&gt;&lt;priority&gt;0&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match/&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;65535&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;0&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags&gt;SEND_FLOW_REM&lt;/flags&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;285&lt;/id&gt;&lt;table_id&gt;0&lt;/table_id&gt;&lt;priority&gt;162&lt;/priority&gt;&lt;flow-name&gt;flow1&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;2&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;1&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:51.269767" elapsed="0.004905"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:57:51.280400" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:51.274942" elapsed="0.005579"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:51.274872" elapsed="0.005704"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:57:51.285592" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:57:51.285639" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:57:51.281027" elapsed="0.004635"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:51.287753" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:51.285740" elapsed="0.002070"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:51.285721" elapsed="0.002113"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:57:51.287868" elapsed="0.000029"/>
</return>
<msg time="2026-05-25T01:57:51.288090" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:57:51.288138" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (0, 285 and 1</doc>
<status status="PASS" start="2026-05-25T01:57:51.256411" elapsed="0.031750"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:57:51.290635" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:51.288742" elapsed="0.001940"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:51.288724" elapsed="0.001981"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.291328" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:51.290892" elapsed="0.000465"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.291926" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:51.291563" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:57:51.292004" elapsed="0.000028"/>
</return>
<msg time="2026-05-25T01:57:51.292210" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:57:51.288402" elapsed="0.003835"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:57:51.292440" elapsed="0.000399"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:57:51.255748" elapsed="0.037157"/>
</kw>
<arg>${flowfile1}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:57:51.197831" elapsed="0.095136"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Datastore Presence</arg>
<arg>${flowfile1}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:57:51.185884" elapsed="0.107141"/>
</kw>
<doc>Add flow match IP and Ethertype IP</doc>
<status status="PASS" start="2026-05-25T01:57:51.142990" elapsed="0.150190"/>
</test>
<test id="s1-s10-t2" name="Delete and Add Flow Same Match With Different ID" line="38">
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:51.312369" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=285 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=285 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0abimpba1bawd9wj4mwig5rtw4.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:51.312416" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=285 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:51.312512" level="INFO">${resp} = &lt;Response [204]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}/flow=${flow_id}</arg>
<arg>expected_status=204</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:51.301878" elapsed="0.010666"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.318855" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:51.313036" elapsed="0.005923"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${flow_id}</arg>
<doc>Deletes a flow from configuration datastore specified by given flow details (${node_id}, 0, ${flow_body}) using DELETE method</doc>
<status status="PASS" start="2026-05-25T01:57:51.301459" elapsed="0.017664"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:57:51.325043" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f164.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f164.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:57:51.325241" level="INFO">${data} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;286&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
             ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:57:51.324898" elapsed="0.000374"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:57:51.325989" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe75f80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:57:51.325550" elapsed="0.000468"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:51.326534" level="INFO">${table_id} = 0</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:51.326237" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:51.327042" level="INFO">${flow_id} = 286</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:51.326760" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:51.327565" level="INFO">${flow_priority} = 162</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:51.327283" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:57:51.328384" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;286&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:57:51.327789" elapsed="0.000626"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.328942" level="INFO">${table_id} = 0</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:51.328615" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.329531" level="INFO">${flow_id} = 286</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:51.329196" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.330112" level="INFO">${flow_priority} = 162</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:51.329775" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.330656" level="INFO">${data} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;286&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
             ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:51.330349" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.331222" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;286&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:51.330893" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.331777" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5abfe75f80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:51.331461" elapsed="0.000358"/>
</kw>
<arg>${XmlsDir}/${flowfile2}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:57:51.324532" elapsed="0.007345"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.339990" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;286&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;2&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;flow-name&gt;flow1&lt;/flow-name&gt;
    &lt;priority&gt;162&lt;/priority&gt;
    &lt;table_id&gt;0&lt;/table_id&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
&lt;/flow&gt;
</msg>
<arg>${flow_body}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:51.339730" elapsed="0.000317"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:51.353272" level="INFO">POST Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0abimpba1bawd9wj4mwig5rtw4.node0', 'Content-Length': '860', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;286&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;2&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;flow-name&gt;flow1&lt;/flow-name&gt;
    &lt;priority&gt;162&lt;/priority&gt;
    &lt;table_id&gt;0&lt;/table_id&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
&lt;/flow&gt;
 
 </msg>
<msg time="2026-05-25T01:57:51.353445" level="INFO">POST Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=286', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:51.353759" level="INFO">${resp} = &lt;Response [201]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${node_id}/flow-node-inventory:table=${table_id}</arg>
<arg>data=${flow_body}</arg>
<arg>expected_status=201</arg>
<doc>Sends a POST request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:51.340221" elapsed="0.013598"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.359678" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:51.354291" elapsed="0.005485"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${table_id}</arg>
<arg>${data}</arg>
<doc>Configures a flow specified by given flow details (${node_id}, 0, ${flow_body}) using POST method</doc>
<status status="PASS" start="2026-05-25T01:57:51.339289" elapsed="0.020623"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Datastore Presence" owner="FlowLib">
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-05-25T01:57:51.379113" level="INFO" html="true">Getting file '&lt;a href="file:///w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f164.xml"&gt;/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/variables/xmls/f164.xml&lt;/a&gt;'.</msg>
<msg time="2026-05-25T01:57:51.379252" level="INFO">${data} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;286&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
             ...</msg>
<var>${data}</var>
<arg>${file}</arg>
<doc>Returns the contents of a specified file.</doc>
<status status="PASS" start="2026-05-25T01:57:51.378956" elapsed="0.000324"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-05-25T01:57:51.379860" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1b4310&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-05-25T01:57:51.379473" elapsed="0.000415"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:51.380379" level="INFO">${table_id} = 0</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:51.380095" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:51.380872" level="INFO">${flow_id} = 286</msg>
<var>${flow_id}</var>
<arg>${xmlroot}</arg>
<arg>id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:51.380600" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-05-25T01:57:51.381417" level="INFO">${flow_priority} = 162</msg>
<var>${flow_priority}</var>
<arg>${xmlroot}</arg>
<arg>priority</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-05-25T01:57:51.381102" elapsed="0.000341"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-05-25T01:57:51.382207" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;286&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
...</msg>
<var>${upddata}</var>
<arg>${data}</arg>
<status status="PASS" start="2026-05-25T01:57:51.381635" elapsed="0.000603"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.382770" level="INFO">${table_id} = 0</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:51.382438" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.383347" level="INFO">${flow_id} = 286</msg>
<arg>${flow_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:51.383006" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.383922" level="INFO">${flow_priority} = 162</msg>
<arg>${flow_priority}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:51.383580" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.384506" level="INFO">${data} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;286&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
             ...</msg>
<arg>${data}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:51.384175" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.385084" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;286&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
...</msg>
<arg>${upddata}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:51.384748" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.385678" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7f5acc1b4310&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:51.385337" elapsed="0.000384"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-05-25T01:57:51.378594" elapsed="0.007182"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.386380" level="INFO">${det} = &lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;286&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
             ...</msg>
<var>${det}</var>
<arg>${upd}==${True}</arg>
<arg>${upddata}</arg>
<arg>${data}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:51.385971" elapsed="0.000445"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.386879" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &lt;id&gt;286&lt;/id&gt;
    &lt;instructions&gt;
        &lt;instruction&gt;
            &lt;order&gt;0&lt;/order&gt;
            &lt;apply-actions&gt;
                &lt;action&gt;
                    &lt;order&gt;0&lt;/order&gt;
                    &lt;output-action&gt;
                        &lt;output-node-connector&gt;2&lt;/output-node-connector&gt;
                    &lt;/output-action&gt;
                &lt;/action&gt;
            &lt;/apply-actions&gt;
        &lt;/instruction&gt;
    &lt;/instructions&gt;
    &lt;hard-timeout&gt;0&lt;/hard-timeout&gt;
    &lt;match&gt;
        &lt;ethernet-match&gt;
            &lt;ethernet-type&gt;
                &lt;type&gt;2048&lt;/type&gt;
            &lt;/ethernet-type&gt;
        &lt;/ethernet-match&gt;
        &lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;
    &lt;/match&gt;
    &lt;flow-name&gt;flow1&lt;/flow-name&gt;
    &lt;priority&gt;162&lt;/priority&gt;
    &lt;table_id&gt;0&lt;/table_id&gt;
    &lt;idle-timeout&gt;0&lt;/idle-timeout&gt;
&lt;/flow&gt;
</msg>
<arg>${det}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:51.386621" elapsed="0.000375"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.396135" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:57:51.395803" elapsed="0.000366"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:51.405778" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=286?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=286?content=config 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0abimpba1bawd9wj4mwig5rtw4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:51.406820" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=286?content=config 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '559'} 
 body=&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;286&lt;/id&gt;&lt;table_id&gt;0&lt;/table_id&gt;&lt;priority&gt;162&lt;/priority&gt;&lt;flow-name&gt;flow1&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;2&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;/flow&gt; 
 </msg>
<msg time="2026-05-25T01:57:51.407055" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:51.396338" elapsed="0.010801"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.408182" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:51.407580" elapsed="0.000705"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.414331" level="INFO">&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;286&lt;/id&gt;&lt;table_id&gt;0&lt;/table_id&gt;&lt;priority&gt;162&lt;/priority&gt;&lt;flow-name&gt;flow1&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;2&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;/flow&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:51.408685" elapsed="0.005769"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:57:51.418028" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:51.414565" elapsed="0.003562"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:51.414533" elapsed="0.003629"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-05-25T01:57:51.422800" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:57:51.422871" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-05-25T01:57:51.418428" elapsed="0.004477"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:51.426154" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:51.423032" elapsed="0.003206"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:51.422995" elapsed="0.003279"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:57:51.426323" elapsed="0.000047"/>
</return>
<msg time="2026-05-25T01:57:51.426583" level="INFO">${presence_flow} = True</msg>
<msg time="2026-05-25T01:57:51.426627" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks the config store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (0, 286 and 1</doc>
<status status="PASS" start="2026-05-25T01:57:51.395414" elapsed="0.031236"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:57:51.429355" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:51.427235" elapsed="0.002173"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:51.427217" elapsed="0.002214"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.430188" level="INFO">${msgf} = The flow is expected in config data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:51.429663" elapsed="0.000559"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.430861" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:51.430435" elapsed="0.000460"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:57:51.430959" elapsed="0.000036"/>
</return>
<msg time="2026-05-25T01:57:51.431207" level="INFO">${msgf} = The flow is expected in config data store, but it is present.</msg>
<var>${msgf}</var>
<arg>config</arg>
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:57:51.426885" elapsed="0.004355"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:57:51.431504" elapsed="0.000497"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:57:51.394772" elapsed="0.037329"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.443250" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-05-25T01:57:51.442918" elapsed="0.000359"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:51.453416" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0abimpba1bawd9wj4mwig5rtw4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:51.455177" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/xml', 'Content-Length': '1463'} 
 body=&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;0&lt;/id&gt;&lt;flow&gt;&lt;id&gt;286&lt;/id&gt;&lt;table_id&gt;0&lt;/table_id&gt;&lt;priority&gt;162&lt;/priority&gt;&lt;flow-name&gt;flow1&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;2&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*0-8&lt;/id&gt;&lt;table_id&gt;0&lt;/table_id&gt;&lt;priority&gt;0&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match/&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;65535&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;0&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags&gt;SEND_FLOW_REM&lt;/flags&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;1&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt; 
 </msg>
<msg time="2026-05-25T01:57:51.455300" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:51.443442" elapsed="0.011884"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.455781" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:51.455526" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.458633" level="INFO">&lt;table xmlns="urn:opendaylight:flow:inventory"&gt;&lt;id&gt;0&lt;/id&gt;&lt;flow&gt;&lt;id&gt;286&lt;/id&gt;&lt;table_id&gt;0&lt;/table_id&gt;&lt;priority&gt;162&lt;/priority&gt;&lt;flow-name&gt;flow1&lt;/flow-name&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match&gt;&lt;ethernet-match&gt;&lt;ethernet-type&gt;&lt;type&gt;2048&lt;/type&gt;&lt;/ethernet-type&gt;&lt;/ethernet-match&gt;&lt;ipv4-destination&gt;10.0.10.0/24&lt;/ipv4-destination&gt;&lt;/match&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;output-node-connector&gt;2&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*0-8&lt;/id&gt;&lt;table_id&gt;0&lt;/table_id&gt;&lt;priority&gt;0&lt;/priority&gt;&lt;cookie_mask&gt;0&lt;/cookie_mask&gt;&lt;idle-timeout&gt;0&lt;/idle-timeout&gt;&lt;match/&gt;&lt;cookie&gt;10&lt;/cookie&gt;&lt;instructions&gt;&lt;instruction&gt;&lt;order&gt;0&lt;/order&gt;&lt;apply-actions&gt;&lt;action&gt;&lt;order&gt;0&lt;/order&gt;&lt;output-action&gt;&lt;max-length&gt;65535&lt;/max-length&gt;&lt;output-node-connector&gt;CONTROLLER&lt;/output-node-connector&gt;&lt;/output-action&gt;&lt;/action&gt;&lt;/apply-actions&gt;&lt;/instruction&gt;&lt;/instructions&gt;&lt;hard-timeout&gt;0&lt;/hard-timeout&gt;&lt;flow-statistics xmlns="urn:opendaylight:flow:statistics"&gt;&lt;packet-count&gt;0&lt;/packet-count&gt;&lt;byte-count&gt;0&lt;/byte-count&gt;&lt;duration&gt;&lt;second&gt;0&lt;/second&gt;&lt;nanosecond&gt;2000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags&gt;SEND_FLOW_REM&lt;/flags&gt;&lt;/flow&gt;&lt;flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"&gt;&lt;packets-looked-up&gt;0&lt;/packets-looked-up&gt;&lt;active-flows&gt;1&lt;/active-flows&gt;&lt;packets-matched&gt;0&lt;/packets-matched&gt;&lt;/flow-table-statistics&gt;&lt;/table&gt;</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:51.456004" elapsed="0.002700"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-05-25T01:57:51.460926" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:51.458779" elapsed="0.002200"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:51.458757" elapsed="0.002245"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-05-25T01:57:51.464731" level="INFO">${pres} = True</msg>
<msg time="2026-05-25T01:57:51.464780" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-05-25T01:57:51.461205" elapsed="0.003599"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:51.467172" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:51.464887" elapsed="0.002357"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:51.464867" elapsed="0.002406"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-05-25T01:57:51.467315" elapsed="0.000044"/>
</return>
<msg time="2026-05-25T01:57:51.467674" level="INFO">${presence_table} = True</msg>
<msg time="2026-05-25T01:57:51.467721" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks the operational store for given flow. Returns True if present, otherwise returns False
This keyword assumes that the global/suite variables are available (0, 286 and 1</doc>
<status status="PASS" start="2026-05-25T01:57:51.442486" elapsed="0.025259"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-05-25T01:57:51.470995" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:51.468537" elapsed="0.002505"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:51.468511" elapsed="0.002570"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.471779" level="INFO">${msgf} = The flow is expected in operational data store, but</msg>
<var>${msgf}</var>
<arg>${expected}==${True}</arg>
<arg>The flow is expected in ${ds} data store, but</arg>
<arg>The flow is not expected in ${ds} data store, but</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:51.471288" elapsed="0.000520"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.472415" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-05-25T01:57:51.472037" elapsed="0.000405"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-05-25T01:57:51.472494" elapsed="0.000032"/>
</return>
<msg time="2026-05-25T01:57:51.472679" level="INFO">${msgf} = The flow is expected in operational data store, but it is present.</msg>
<var>${msgf}</var>
<arg>operational</arg>
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>${msg}</arg>
<doc>Utility keyword to help manipulate mesage strings that may be used later to PASS or FAIL with</doc>
<status status="PASS" start="2026-05-25T01:57:51.468052" elapsed="0.004654"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-05-25T01:57:51.472906" elapsed="0.000460"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-05-25T01:57:51.441783" elapsed="0.031654"/>
</kw>
<arg>${flowfile2}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Checks if flow is properly existing or not existing in the config and operational
datastores, based on the variables ${reqconfpres} and ${reqoperpres}</doc>
<status status="PASS" start="2026-05-25T01:57:51.373089" elapsed="0.100423"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Datastore Presence</arg>
<arg>${flowfile2}</arg>
<arg>${True}</arg>
<arg>${True}</arg>
<arg>${False}</arg>
<arg>${True}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:57:51.360323" elapsed="0.113263"/>
</kw>
<kw name="Report Failure Due To Bug" owner="Utils" type="TEARDOWN">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.474810" level="INFO">${test_skipped} = False</msg>
<var>${test_skipped}</var>
<arg>len(re.findall('SKIPPED', """${TEST_MESSAGE}""")) &gt; 0</arg>
<arg>modules=re</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:57:51.474385" elapsed="0.000453"/>
</kw>
<if>
<branch type="IF" condition="('${TEST_STATUS}' != 'FAIL') or ${test_skipped}">
<return>
<status status="PASS" start="2026-05-25T01:57:51.475055" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-05-25T01:57:51.474913" elapsed="0.000217"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:51.474894" elapsed="0.000260"/>
</if>
<kw name="Comment" owner="BuiltIn">
<arg>Jira tickets are {PROJECT}-{NUMBER} while Bugzilla tickets are {NUMBER}</arg>
<doc>Displays the given messages in the log file as keyword arguments.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:51.475339" elapsed="0.000022"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<var>${match}</var>
<arg>Should Contain</arg>
<arg>${number}</arg>
<arg>-</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:51.475518" elapsed="0.000021"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<var>${bug_url}</var>
<arg>${match}</arg>
<arg>https://jira.opendaylight.org/browse/${number}</arg>
<arg>https://bugs.opendaylight.org/show_bug.cgi?id=${number}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:51.475700" elapsed="0.000020"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<var>${msg}</var>
<arg>This test fails due to ${bug_url}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:51.475875" elapsed="0.000025"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${newline}</var>
<arg>chr(10)</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:51.476058" elapsed="0.000038"/>
</kw>
<kw name="Set Test Message" owner="BuiltIn">
<arg>${msg}${newline}${newline}${TEST_MESSAGE}</arg>
<doc>Sets message for the current test case.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:51.476246" elapsed="0.000020"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:51.476412" elapsed="0.000020"/>
</kw>
<if>
<branch type="IF" condition="&quot;${include_bug_in_tags}&quot;==&quot;True&quot;">
<kw name="Set Tags" owner="BuiltIn">
<arg>${bug_url}</arg>
<doc>Adds given ``tags`` for the current test or all tests in a suite.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:51.476669" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:51.476493" elapsed="0.000229"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:57:51.476477" elapsed="0.000268"/>
</if>
<arg>7349</arg>
<doc>Report that a test failed due to a known Bugzilla bug whose
number is provided as an argument.
Not FAILED (incl. SKIPPED) test are not reported.
This keyword must be used in the [Teardown] setting of the affected test
or as the first line of the test if FastFail module is not being
used. It reports the URL of the bug on console and also puts it
into the Robot log file.</doc>
<status status="PASS" start="2026-05-25T01:57:51.473997" elapsed="0.002798"/>
</kw>
<doc>Delete flow and add flow with same body and different ID. New ID should be shown in operational.</doc>
<status status="PASS" start="2026-05-25T01:57:51.293557" elapsed="0.183283"/>
</test>
<kw name="Final Phase" type="TEARDOWN">
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:51.488657" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes 
 path_url=/rests/data/opendaylight-inventory:nodes 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0abimpba1bawd9wj4mwig5rtw4.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:51.488779" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:51.478095" elapsed="0.010760"/>
</kw>
<arg>RequestsLibrary.DELETE On Session</arg>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:57:51.477715" elapsed="0.011212"/>
</kw>
<kw name="Stop Mininet And Exit" owner="MininetKeywords">
<if>
<branch type="IF" condition="&quot;&quot;&quot;${mininet_conn}&quot;&quot;&quot; != &quot;&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${mininet_conn}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:57:51.498573" elapsed="0.000149"/>
</kw>
<status status="PASS" start="2026-05-25T01:57:51.498131" elapsed="0.000628"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:51.498049" elapsed="0.000736"/>
</if>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:57:51.501350" level="INFO">exit</msg>
<arg>exit</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:57:51.498925" elapsed="0.002485"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:57:51.635184" level="INFO">*** Stopping 1 controllers
c0 
*** Stopping 2 links
..
*** Stopping 1 switches
s1 
*** Stopping 2 hosts
h1 h2 
*** Done
completed in 1.629 seconds
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${TOOLS_SYSTEM_PROMPT}</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:57:51.501574" elapsed="0.133703"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:57:51.635483" elapsed="0.000198"/>
</kw>
<arg>${mininet_conn_id}</arg>
<doc>Stops Mininet and exits session ${mininet_conn}</doc>
<status status="PASS" start="2026-05-25T01:57:51.497557" elapsed="0.138187"/>
</kw>
<kw name="Delete All Sessions" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:51.635974" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-05-25T01:57:51.635899" elapsed="0.000152"/>
</kw>
<doc>Stops mininet.</doc>
<status status="PASS" start="2026-05-25T01:57:51.477488" elapsed="0.158634"/>
</kw>
<doc>Test suite for bug 6917 validation.</doc>
<status status="PASS" start="2026-05-25T01:57:47.581621" elapsed="4.054539"/>
</suite>
<suite id="s1-s11" name="8723" source="/w/workspace/openflowplugin-csit-1node-flow-services-all-titanium/test/csit/suites/openflowplugin/Bug_Validation/8723.robot">
<kw name="Initialization Phase" type="SETUP">
<kw name="Start Mininet Single Controller" owner="MininetKeywords">
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.716011" level="INFO">Clear any existing mininet</msg>
<arg>Clear any existing mininet</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:51.715760" elapsed="0.000303"/>
</kw>
<kw name="Clean Mininet System" owner="Utils">
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:51.718462" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:51.718152" elapsed="0.000368"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:51.718128" elapsed="0.000419"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:57:51.718856" level="INFO">index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:57:51.718965" level="INFO">${current_ssh_connection} = index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:57:51.718697" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.719539" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:51.719160" elapsed="0.000426"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:57:51.720128" level="INFO">${conn_id} = 58</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:57:51.719744" elapsed="0.000411"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:57:51.720997" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:57:51.721089" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:57:51.720716" elapsed="0.000405"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:51.721294" elapsed="0.000324"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:57:51.722476" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:57:52.075386" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:57:41 UTC 2026

  System load:  0.1                Processes:             110
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:57:49 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:57:51.722161" elapsed="0.353382"/>
</kw>
<msg time="2026-05-25T01:57:52.075717" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:51.721788" elapsed="0.354012"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:57:51.720368" elapsed="0.355551"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:57:52.076452" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-05-25T01:57:53.254009" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:57:53.254457" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:57:53.254563" level="INFO">${stderr} = *** Removing excess controllers/ofprotocols/ofdatapaths/pings/noxes
killall controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec iv...</msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:57:52.076194" elapsed="1.178428"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:57:53.255175" elapsed="0.000638"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:53.257014" level="INFO">*** Removing excess controllers/ofprotocols/ofdatapaths/pings/noxes
killall controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec ivs ryu-manager 2&gt; /dev/null
killall -9 controller ofprotocol ofdatapath ping nox_corelt-nox_core ovs-openflowd ovs-controllerovs-testcontroller udpbwtest mnexec ivs ryu-manager 2&gt; /dev/null
pkill -9 -f "sudo mnexec"
*** Removing junk from /tmp
rm -f /tmp/vconn* /tmp/vlogs* /tmp/*.out /tmp/*.log
*** Removing old X11 tunnels
*** Removing excess kernel datapaths
ps ax | egrep -o 'dp[0-9]+' | sed 's/dp/nl:/'
***  Removing OVS datapaths
ovs-vsctl --timeout=1 list-br
ovs-vsctl --timeout=1 list-br
*** Removing all links of the pattern foo-ethX
ip link show | egrep -o '([-_.[:alnum:]]+-eth[[:digit:]]+)'
ip link show
*** Killing stale mininet node processes
pkill -9 -f mininet:
*** Shutting down stale tunnels
pkill -9 -f Tunnel=Ethernet
pkill -9 -f .ssh/mn
rm -f ~/.ssh/mn/*
*** Cleanup complete.</msg>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:53.256328" elapsed="0.000842"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:57:53.257653" elapsed="0.000043"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:53.257354" elapsed="0.000413"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:53.257298" elapsed="0.000520"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:57:53.258222" elapsed="0.000070"/>
</return>
<status status="PASS" start="2026-05-25T01:57:53.257948" elapsed="0.000417"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:53.257913" elapsed="0.000505"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:57:53.258493" elapsed="0.000030"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:53.263229" elapsed="0.000459"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:57:53.263921" elapsed="0.000253"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:57:53.264383" elapsed="0.000138"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:57:53.259237" elapsed="0.005361"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:57:51.717647" elapsed="1.547081"/>
</kw>
<msg time="2026-05-25T01:57:53.264805" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:51.717055" elapsed="1.547823"/>
</kw>
<arg>${system}</arg>
<arg>sudo mn -c</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:57:51.716606" elapsed="1.548418"/>
</kw>
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:53.267357" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:53.267052" elapsed="0.000363"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:53.267033" elapsed="0.000406"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:57:53.267731" level="INFO">index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:57:53.267834" level="INFO">${current_ssh_connection} = index=None
host=None
alias=None
port=22
timeout=3 seconds
newline=

prompt=None
term_type=vt100
width=80
height=24
path_separator=/
encoding=utf8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:57:53.267592" elapsed="0.000268"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:53.268409" level="INFO">Attempting to execute command "sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:53.268012" elapsed="0.000443"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:57:53.269085" level="INFO">${conn_id} = 60</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:57:53.268678" elapsed="0.000435"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:57:53.269963" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:57:53.270046" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:57:53.269680" elapsed="0.000404"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:53.270245" elapsed="0.000317"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:57:53.271414" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:57:53.599462" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:57:41 UTC 2026

  System load:  0.1                Processes:             110
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:57:52 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:57:53.271099" elapsed="0.328524"/>
</kw>
<msg time="2026-05-25T01:57:53.599710" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:53.270731" elapsed="0.329064"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:57:53.269329" elapsed="0.330586"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:57:53.600460" level="INFO">Executing command 'sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh'.</msg>
<msg time="2026-05-25T01:57:53.643363" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-05-25T01:57:53.643633" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:57:53.643730" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:57:53.600201" elapsed="0.043580"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:57:53.644213" elapsed="0.000499"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:53.645876" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:53.645245" elapsed="0.000725"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:57:53.646498" elapsed="0.000040"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:53.646196" elapsed="0.000412"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:53.646136" elapsed="0.000523"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:57:53.647014" elapsed="0.000088"/>
</return>
<status status="PASS" start="2026-05-25T01:57:53.646778" elapsed="0.000400"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:53.646744" elapsed="0.000487"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:57:53.647306" elapsed="0.000032"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:53.653039" elapsed="0.000617"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:57:53.653825" elapsed="0.000165"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:57:53.654157" elapsed="0.000103"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:57:53.648006" elapsed="0.006308"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:57:53.266573" elapsed="0.387834"/>
</kw>
<msg time="2026-05-25T01:57:53.654460" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:53.265920" elapsed="0.388592"/>
</kw>
<arg>${system}</arg>
<arg>sudo ps -elf | egrep 'usr/local/bin/mn' | egrep python | awk '{print "sudo kill -9",$4}' | sh</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:57:53.265292" elapsed="0.389309"/>
</kw>
<arg>${mininet}</arg>
<status status="PASS" start="2026-05-25T01:57:51.716291" elapsed="1.938369"/>
</kw>
<kw name="Open_Connection_To_Tools_System" owner="SSHKeywords">
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:57:53.659453" level="INFO">${tools_connection} = 62</msg>
<var>${tools_connection}</var>
<arg>${ip_address}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:57:53.659082" elapsed="0.000397"/>
</kw>
<kw name="Flexible_Mininet_Login" owner="SSHKeywords">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:57:53.661212" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:57:53.661289" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:57:53.660882" elapsed="0.000431"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:53.661473" elapsed="0.000322"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:57:53.662656" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:57:54.026781" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:57:41 UTC 2026

  System load:  0.1                Processes:             110
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:57:53 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:57:53.662345" elapsed="0.364610"/>
</kw>
<msg time="2026-05-25T01:57:54.027054" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:53.661965" elapsed="0.365196"/>
</kw>
<arg>user=${user}</arg>
<arg>password=${password}</arg>
<arg>delay=${delay}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:57:53.660439" elapsed="0.366858"/>
</kw>
<msg time="2026-05-25T01:57:54.027357" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Flexible SSH Login</arg>
<arg>user=${user}</arg>
<arg>password=${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:53.660023" elapsed="0.367384"/>
</kw>
<doc>Call Flexible SSH Login, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:57:53.659660" elapsed="0.367828"/>
</kw>
<return>
<value>${tools_connection}</value>
<status status="PASS" start="2026-05-25T01:57:54.027558" elapsed="0.000051"/>
</return>
<msg time="2026-05-25T01:57:54.027810" level="INFO">${mininet_conn_id} = 62</msg>
<var>${mininet_conn_id}</var>
<arg>ip_address=${mininet}</arg>
<arg>timeout=${timeout}</arg>
<doc>Open a connection to the tools system at ${ip_address} and return its identifier.</doc>
<status status="PASS" start="2026-05-25T01:57:53.658553" elapsed="0.369284"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:54.028712" level="INFO">${mininet_conn_id} = 62</msg>
<arg>${mininet_conn_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:54.028222" elapsed="0.000534"/>
</kw>
<if>
<branch type="IF" condition="'${custom}' != '${EMPTY}'">
<kw name="Put File" owner="SSHLibrary">
<arg>${custom}</arg>
<doc>Uploads file(s) from the local machine to the remote machine.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:54.031064" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:54.028855" elapsed="0.002281"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:54.028818" elapsed="0.002344"/>
</if>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:54.031653" level="INFO">Start mininet --topo tree,1 to 10.30.170.200</msg>
<arg>Start mininet ${options} to ${controller}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:54.031340" elapsed="0.000359"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:57:54.034088" level="INFO">sudo mn --controller 'remote,ip=10.30.170.200,port=6633' --topo tree,1 --switch ovsk,protocols=OpenFlow13</msg>
<arg>sudo mn --controller 'remote,ip=${controller},port=${ofport}' ${options} --switch ovsk,protocols=OpenFlow${ofversion}</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:57:54.031874" elapsed="0.002272"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:57:54.189099" level="INFO">[?2004l*** Creating network
*** Adding controller
*** Adding hosts:
h1 h2 
*** Adding switches:
s1 
*** Adding links:
(s1, h1) (s1, h2) 
*** Configuring hosts
h1 h2 
*** Starting controller
c0 
*** Starting 1 switches
s1 ...
*** Starting CLI:
mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:57:54.034307" elapsed="0.154868"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:54.189629" level="INFO">Check OVS configuratiom</msg>
<arg>Check OVS configuratiom</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:54.189383" elapsed="0.000293"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:57:54.190927" level="INFO">sh ovs-vsctl show</msg>
<arg>sh ovs-vsctl show</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:57:54.189832" elapsed="0.001150"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:57:54.201637" level="INFO">d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "ptcp:6654"
        Controller "tcp:10.30.170.200:6633"
        fail_mode: secure
        Port s1-eth1
            Interface s1-eth1
        Port s1-eth2
            Interface s1-eth2
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"
mininet&gt;</msg>
<arg>mininet&gt;</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:57:54.191154" elapsed="0.010543"/>
</kw>
<return>
<value>${mininet_conn_id}</value>
<status status="PASS" start="2026-05-25T01:57:54.201747" elapsed="0.000034"/>
</return>
<msg time="2026-05-25T01:57:54.201928" level="INFO">${mininet_conn_id} = 62</msg>
<var>${mininet_conn_id}</var>
<doc>Start Mininet with custom topology and connect to controller.</doc>
<status status="PASS" start="2026-05-25T01:57:51.713584" elapsed="2.488445"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:54.202547" level="INFO">${mininet_conn_id} = 62</msg>
<arg>${mininet_conn_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:57:54.202220" elapsed="0.000369"/>
</kw>
<kw name="Create Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:54.203108" level="INFO">Creating Session using : alias=session, url=http://10.30.170.200:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7f5ace4db950&gt;, timeout=None, proxies=None, verify=False,                     debug=0 </msg>
<arg>session</arg>
<arg>http://${ODL_SYSTEM_IP}:${RESTCONFPORT}</arg>
<arg>auth=${AUTH}</arg>
<arg>headers=${HEADERS_XML}</arg>
<doc>Create Session: create a HTTP session to a server</doc>
<status status="PASS" start="2026-05-25T01:57:54.202748" elapsed="0.000553"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:54.213283" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:54.213429" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node0i01xim3xr5f01n7bmiiue4x395.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Sun, 24-May-2026 01:57:54 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '222'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:57:54.213547" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:54.204363" elapsed="0.009214"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:54.216035" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1"},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:54.213774" elapsed="0.002324"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-05-25T01:57:54.218637" level="INFO">Item found from container 0 times.</msg>
<msg time="2026-05-25T01:57:54.218717" level="INFO">${count} = 0</msg>
<var>${count}</var>
<arg>${resp.text}</arg>
<arg>"node-id":"openflow:</arg>
<doc>Returns and logs how many times ``item`` is found from ``container``.</doc>
<status status="PASS" start="2026-05-25T01:57:54.216288" elapsed="0.002454"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<msg time="2026-05-25T01:57:54.219250" level="INFO">Argument types are:
&lt;class 'int'&gt;
&lt;class 'str'&gt;</msg>
<msg time="2026-05-25T01:57:54.219418" level="FAIL">0.0 != 1.0</msg>
<arg>${count}</arg>
<arg>${switches}</arg>
<doc>Fails if objects are unequal after converting them to real numbers.</doc>
<status status="FAIL" start="2026-05-25T01:57:54.218908" elapsed="0.000591">0.0 != 1.0</status>
</kw>
<arg>1</arg>
<doc>Check switches are in the topology.</doc>
<status status="FAIL" start="2026-05-25T01:57:54.204080" elapsed="0.015535">0.0 != 1.0</status>
</kw>
<kw name="Check Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:57:55.231924" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 path_url=/rests/data/network-topology:network-topology?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0i01xim3xr5f01n7bmiiue4x395.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:57:55.232192" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '921'} 
 body={"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-05-25T01:57:55.232352" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_TOPO_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:57:55.221427" elapsed="0.010962"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:55.286932" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"node-id":"openflow:1","opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']","termination-point":[{"tp-id":"openflow:1:2","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:2']"},{"tp-id":"openflow:1:LOCAL","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:LOCAL']"},{"tp-id":"openflow:1:1","opendaylight-topology-inventory:inventory-node-connector-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']/node-connector[id='openflow:1:1']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:55.232750" elapsed="0.054263"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-05-25T01:57:55.289696" level="INFO">Item found from container 1 time.</msg>
<msg time="2026-05-25T01:57:55.289782" level="INFO">${count} = 1</msg>
<var>${count}</var>
<arg>${resp.text}</arg>
<arg>"node-id":"openflow:</arg>
<doc>Returns and logs how many times ``item`` is found from ``container``.</doc>
<status status="PASS" start="2026-05-25T01:57:55.287321" elapsed="0.002485"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<msg time="2026-05-25T01:57:55.290354" level="INFO">Argument types are:
&lt;class 'int'&gt;
&lt;class 'str'&gt;</msg>
<arg>${count}</arg>
<arg>${switches}</arg>
<doc>Fails if objects are unequal after converting them to real numbers.</doc>
<status status="PASS" start="2026-05-25T01:57:55.290051" elapsed="0.000362"/>
</kw>
<arg>1</arg>
<doc>Check switches are in the topology.</doc>
<status status="PASS" start="2026-05-25T01:57:55.220642" elapsed="0.069840"/>
</kw>
<arg>10s</arg>
<arg>1s</arg>
<arg>FlowLib.Check Switches In Topology</arg>
<arg>1</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:57:54.203477" elapsed="1.087053"/>
</kw>
<doc>Starts mininet and verify if topology is in operational datastore.</doc>
<status status="PASS" start="2026-05-25T01:57:51.713149" elapsed="3.577439"/>
</kw>
<test id="s1-s11-t1" name="Create Two Active Switch Connections To Controller And Check OVS Connections" line="25">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:57:55.291683" level="INFO">${controller_opt} = </msg>
<var>${controller_opt}</var>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:57:55.291428" elapsed="0.000282"/>
</kw>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-05-25T01:57:55.292341" level="INFO">${controller_opt} =   tcp:10.30.170.200:6633 tcp:10.30.170.200:6653</msg>
<var>${controller_opt}</var>
<arg>${controller_opt}</arg>
<arg>${SPACE}tcp:${ODL_SYSTEM_IP}:${ODL_OF_PORT}${SPACE}tcp:${ODL_SYSTEM_IP}:${ODL_OF_PORT1}</arg>
<doc>Catenates the given items together and returns the resulted string.</doc>
<status status="PASS" start="2026-05-25T01:57:55.291864" elapsed="0.000504"/>
</kw>
<kw name="Set Controller In OVS Bridge" owner="OVSDB">
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:55.302224" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:55.301892" elapsed="0.000392"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:55.301866" elapsed="0.000446"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:57:55.302619" level="INFO">index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:57:55.302724" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:57:55.302465" elapsed="0.000287"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:55.303327" level="INFO">Attempting to execute command "sudo ovs-vsctl set bridge s1 protocols=OpenFlow13" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:55.302921" elapsed="0.000454"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:57:55.303934" level="INFO">${conn_id} = 63</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:57:55.303534" elapsed="0.000433"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:57:55.304898" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:57:55.304975" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:57:55.304623" elapsed="0.000376"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:55.305175" elapsed="0.000324"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:57:55.306389" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:57:55.673915" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:57:41 UTC 2026

  System load:  0.1                Processes:             110
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:57:53 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:57:55.306025" elapsed="0.368098"/>
</kw>
<msg time="2026-05-25T01:57:55.674217" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:55.305669" elapsed="0.368642"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:57:55.304210" elapsed="0.370220"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:57:55.674970" level="INFO">Executing command 'sudo ovs-vsctl set bridge s1 protocols=OpenFlow13'.</msg>
<msg time="2026-05-25T01:57:55.737610" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:57:55.737935" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:57:55.738048" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:57:55.674701" elapsed="0.063453"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:57:55.738610" elapsed="0.000618"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:55.740614" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:55.739856" elapsed="0.000857"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:57:55.741282" elapsed="0.000042"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:55.740898" elapsed="0.000498"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:55.740842" elapsed="0.000605"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:57:55.741801" elapsed="0.000064"/>
</return>
<status status="PASS" start="2026-05-25T01:57:55.741566" elapsed="0.000371"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:55.741532" elapsed="0.000457"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:57:55.742063" elapsed="0.000062"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:57:55.747990" elapsed="0.000241"/>
</kw>
<msg time="2026-05-25T01:57:55.748296" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:55.747171" elapsed="0.001216"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:55.748632" elapsed="0.000032"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:55.748862" elapsed="0.000028"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:57:55.742807" elapsed="0.006171"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:57:55.301348" elapsed="0.447782"/>
</kw>
<msg time="2026-05-25T01:57:55.749207" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:55.300732" elapsed="0.448542"/>
</kw>
<arg>${tools_system}</arg>
<arg>sudo ovs-vsctl set bridge ${bridge} protocols=OpenFlow${ofversion}</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:57:55.300104" elapsed="0.449285"/>
</kw>
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:55.752492" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:55.752059" elapsed="0.000537"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:55.752031" elapsed="0.000598"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:57:55.753017" level="INFO">index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:57:55.753185" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:57:55.752842" elapsed="0.000383"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:55.753999" level="INFO">Attempting to execute command "sudo ovs-vsctl set-controller s1   tcp:10.30.170.200:6633 tcp:10.30.170.200:6653" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:55.753437" elapsed="0.000653"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:57:55.755048" level="INFO">${conn_id} = 64</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:57:55.754361" elapsed="0.000762"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:57:55.756643" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:57:55.756966" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:57:55.756193" elapsed="0.000809"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:55.757249" elapsed="0.000437"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:57:55.758569" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:57:56.122576" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:57:41 UTC 2026

  System load:  0.1                Processes:             110
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:57:55 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:57:55.758247" elapsed="0.364632"/>
</kw>
<msg time="2026-05-25T01:57:56.122970" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:55.757856" elapsed="0.365224"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:57:55.755528" elapsed="0.367680"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:57:56.123746" level="INFO">Executing command 'sudo ovs-vsctl set-controller s1   tcp:10.30.170.200:6633 tcp:10.30.170.200:6653'.</msg>
<msg time="2026-05-25T01:57:56.145721" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:57:56.145998" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:57:56.146152" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:57:56.123474" elapsed="0.022735"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:57:56.146624" elapsed="0.000604"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:56.148430" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:56.147741" elapsed="0.000828"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:57:56.149058" elapsed="0.000073"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:56.148753" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:56.148698" elapsed="0.000563"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:57:56.149616" elapsed="0.000064"/>
</return>
<status status="PASS" start="2026-05-25T01:57:56.149380" elapsed="0.000374"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:56.149346" elapsed="0.000461"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:57:56.149881" elapsed="0.000030"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:57:56.157308" elapsed="0.000323"/>
</kw>
<msg time="2026-05-25T01:57:56.157715" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:56.155893" elapsed="0.001888"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:56.157943" elapsed="0.000021"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:56.158119" elapsed="0.000021"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:57:56.150629" elapsed="0.007574"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:57:55.751326" elapsed="0.406971"/>
</kw>
<msg time="2026-05-25T01:57:56.158350" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:55.750501" elapsed="0.407898"/>
</kw>
<arg>${tools_system}</arg>
<arg>sudo ovs-vsctl set-controller ${bridge} ${controller_opt}</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:57:55.749667" elapsed="0.408812"/>
</kw>
<arg>${TOOLS_SYSTEM_IP}</arg>
<arg>s1</arg>
<arg>${controller_opt}</arg>
<doc>Sets controller for the OVS bridge ${bridge} using   tcp:10.30.170.200:6633 tcp:10.30.170.200:6653 and OF version ${ofversion}.</doc>
<status status="PASS" start="2026-05-25T01:57:55.299601" elapsed="0.858937"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check OVS OpenFlow Connections" owner="OVSDB">
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:56.169435" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:56.169141" elapsed="0.000355"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:56.169121" elapsed="0.000399"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:57:56.169796" level="INFO">index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:57:56.169900" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:57:56.169673" elapsed="0.000254"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:56.170477" level="INFO">Attempting to execute command "sudo ovs-vsctl show" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:56.170093" elapsed="0.000432"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:57:56.171136" level="INFO">${conn_id} = 65</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:57:56.170741" elapsed="0.000422"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:57:56.172535" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:57:56.172612" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:57:56.172234" elapsed="0.000402"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:56.172796" elapsed="0.000332"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:57:56.173975" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:57:56.497257" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:57:41 UTC 2026

  System load:  0.1                Processes:             110
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:57:56 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:57:56.173657" elapsed="0.323752"/>
</kw>
<msg time="2026-05-25T01:57:56.497490" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:56.173300" elapsed="0.324273"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:57:56.171382" elapsed="0.326340"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:57:56.498260" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-05-25T01:57:56.520772" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:57:56.521039" level="INFO">${stdout} = d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
        Controller "tcp:10.30.170.200:6653"
        fail_mode: secure
        Port s1-eth1
            In...</msg>
<msg time="2026-05-25T01:57:56.521191" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:57:56.497982" elapsed="0.023265"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:57:56.521654" elapsed="0.000523"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:56.523591" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:56.522771" elapsed="0.000921"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:57:56.524225" elapsed="0.000040"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:56.523878" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:56.523823" elapsed="0.000605"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:57:56.524801" elapsed="0.000060"/>
</return>
<status status="PASS" start="2026-05-25T01:57:56.524558" elapsed="0.000424"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:56.524521" elapsed="0.000524"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:57:56.525161" elapsed="0.000036"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:57:56.532378" elapsed="0.000364"/>
</kw>
<msg time="2026-05-25T01:57:56.532787" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:56.531141" elapsed="0.001708"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:56.533011" elapsed="0.000021"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:56.533195" elapsed="0.000021"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:57:56.525890" elapsed="0.007388"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:57:56.168591" elapsed="0.364779"/>
</kw>
<msg time="2026-05-25T01:57:56.533427" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:56.167964" elapsed="0.365512"/>
</kw>
<msg time="2026-05-25T01:57:56.533604" level="INFO">${output} = d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
        Controller "tcp:10.30.170.200:6653"
        fail_mode: secure
        Port s1-eth1
            In...</msg>
<var>${output}</var>
<arg>${tools_system}</arg>
<arg>sudo ovs-vsctl show</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:57:56.167332" elapsed="0.366451"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:56.534244" level="INFO">d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
        Controller "tcp:10.30.170.200:6653"
        fail_mode: secure
        Port s1-eth1
            Interface s1-eth1
        Port s1-eth2
            Interface s1-eth2
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:56.533966" elapsed="0.000326"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-05-25T01:57:56.534947" level="INFO">Item found from container 0 times.</msg>
<msg time="2026-05-25T01:57:56.535081" level="FAIL">'d1dbe9d3-622c-4912-8b46-2b35fa230f8f\n    Bridge s1\n        Controller "tcp:10.30.170.200:6633"\n        Controller "tcp:10.30.170.200:6653"\n        fail_mode: secure\n        Port s1-eth1\n            Interface s1-eth1\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n    ovs_version: "2.17.11"' contains 'is_connected' 0 times, not 1 time.</msg>
<arg>${output}</arg>
<arg>is_connected</arg>
<arg>${of_connections}</arg>
<doc>Fails if ``container`` does not contain ``item`` ``count`` times.</doc>
<status status="FAIL" start="2026-05-25T01:57:56.534445" elapsed="0.000721">'d1dbe9d3-622c-4912-8b46-2b35fa230f8f\n    Bridge s1\n        Controller "tcp:10.30.170.200:6633"\n        Controller "tcp:10.30.170.200:6653"\n        fail_mode: secure\n        Port s1-eth1\n            Interface s1-eth1\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n    ovs_version: "2.17.11"' contains 'is_connected' 0 times, not 1 time.</status>
</kw>
<arg>${TOOLS_SYSTEM_IP}</arg>
<arg>1</arg>
<doc>Check OVS instance with IP ${tools_system} has ${of_connections} OpenFlow connections.</doc>
<status status="FAIL" start="2026-05-25T01:57:56.166917" elapsed="0.368371">'d1dbe9d3-622c-4912-8b46-2b35fa230f8f\n    Bridge s1\n        Controller "tcp:10.30.170.200:6633"\n        Controller "tcp:10.30.170.200:6653"\n        fail_mode: secure\n        Port s1-eth1\n            Interface s1-eth1\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n    ovs_version: "2.17.11"' contains 'is_connected' 0 times, not 1 time.</status>
</kw>
<kw name="Check OVS OpenFlow Connections" owner="OVSDB">
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:57.552089" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:57.551716" elapsed="0.000449"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:57.551689" elapsed="0.000508"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:57:57.552531" level="INFO">index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:57:57.552650" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:57:57.552374" elapsed="0.000304"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:57.553241" level="INFO">Attempting to execute command "sudo ovs-vsctl show" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:57.552831" elapsed="0.000461"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:57:57.553842" level="INFO">${conn_id} = 66</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:57:57.553453" elapsed="0.000416"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:57:57.554793" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:57:57.554871" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:57:57.554509" elapsed="0.000387"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:57.555055" elapsed="0.000352"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:57:57.556336" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:57:57.874667" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:57:41 UTC 2026

  System load:  0.1                Processes:             110
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:57:56 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:57:57.555940" elapsed="0.318889"/>
</kw>
<msg time="2026-05-25T01:57:57.874950" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:57.555580" elapsed="0.319480"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:57:57.554104" elapsed="0.321123"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:57:57.875832" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-05-25T01:57:57.938482" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:57:57.938763" level="INFO">${stdout} = d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
        Controller "tcp:10.30.170.200:6653"
        fail_mode: secure
        Port s1-eth1
            In...</msg>
<msg time="2026-05-25T01:57:57.938868" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:57:57.875570" elapsed="0.063350"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:57:57.939391" elapsed="0.000534"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:57.941410" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:57.940539" elapsed="0.000969"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:57:57.941995" elapsed="0.000039"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:57.941691" elapsed="0.000449"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:57.941638" elapsed="0.000556"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:57:57.942561" elapsed="0.000063"/>
</return>
<status status="PASS" start="2026-05-25T01:57:57.942316" elapsed="0.000383"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:57.942282" elapsed="0.000471"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:57:57.942828" elapsed="0.000033"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:57:57.950436" elapsed="0.000214"/>
</kw>
<msg time="2026-05-25T01:57:57.950716" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:57.949581" elapsed="0.001226"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:57.951034" elapsed="0.000030"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:57.951292" elapsed="0.000030"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:57:57.943695" elapsed="0.007727"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:57:57.551143" elapsed="0.400412"/>
</kw>
<msg time="2026-05-25T01:57:57.951631" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:57.550451" elapsed="0.401244"/>
</kw>
<msg time="2026-05-25T01:57:57.951853" level="INFO">${output} = d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
        Controller "tcp:10.30.170.200:6653"
        fail_mode: secure
        Port s1-eth1
            In...</msg>
<var>${output}</var>
<arg>${tools_system}</arg>
<arg>sudo ovs-vsctl show</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:57:57.549895" elapsed="0.401995"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:57.952549" level="INFO">d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
        Controller "tcp:10.30.170.200:6653"
        fail_mode: secure
        Port s1-eth1
            Interface s1-eth1
        Port s1-eth2
            Interface s1-eth2
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:57.952135" elapsed="0.000481"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-05-25T01:57:57.953385" level="INFO">Item found from container 0 times.</msg>
<msg time="2026-05-25T01:57:57.953547" level="FAIL">'d1dbe9d3-622c-4912-8b46-2b35fa230f8f\n    Bridge s1\n        Controller "tcp:10.30.170.200:6633"\n        Controller "tcp:10.30.170.200:6653"\n        fail_mode: secure\n        Port s1-eth1\n            Interface s1-eth1\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n    ovs_version: "2.17.11"' contains 'is_connected' 0 times, not 1 time.</msg>
<arg>${output}</arg>
<arg>is_connected</arg>
<arg>${of_connections}</arg>
<doc>Fails if ``container`` does not contain ``item`` ``count`` times.</doc>
<status status="FAIL" start="2026-05-25T01:57:57.952880" elapsed="0.000772">'d1dbe9d3-622c-4912-8b46-2b35fa230f8f\n    Bridge s1\n        Controller "tcp:10.30.170.200:6633"\n        Controller "tcp:10.30.170.200:6653"\n        fail_mode: secure\n        Port s1-eth1\n            Interface s1-eth1\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n    ovs_version: "2.17.11"' contains 'is_connected' 0 times, not 1 time.</status>
</kw>
<arg>${TOOLS_SYSTEM_IP}</arg>
<arg>1</arg>
<doc>Check OVS instance with IP ${tools_system} has ${of_connections} OpenFlow connections.</doc>
<status status="FAIL" start="2026-05-25T01:57:57.549358" elapsed="0.404455">'d1dbe9d3-622c-4912-8b46-2b35fa230f8f\n    Bridge s1\n        Controller "tcp:10.30.170.200:6633"\n        Controller "tcp:10.30.170.200:6653"\n        fail_mode: secure\n        Port s1-eth1\n            Interface s1-eth1\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n    ovs_version: "2.17.11"' contains 'is_connected' 0 times, not 1 time.</status>
</kw>
<kw name="Check OVS OpenFlow Connections" owner="OVSDB">
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:58.971009" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:57:58.970585" elapsed="0.000517"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:58.970559" elapsed="0.000579"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:57:58.971458" level="INFO">index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:57:58.971578" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:57:58.971302" elapsed="0.000305"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:58.972212" level="INFO">Attempting to execute command "sudo ovs-vsctl show" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:58.971769" elapsed="0.000492"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:57:58.972819" level="INFO">${conn_id} = 67</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:57:58.972425" elapsed="0.000422"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:57:58.973792" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:57:58.973871" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:57:58.973502" elapsed="0.000393"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:58.974060" elapsed="0.000375"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:57:58.975337" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:57:59.328232" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:57:41 UTC 2026

  System load:  0.1                Processes:             110
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:57:57 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:57:58.974984" elapsed="0.353413"/>
</kw>
<msg time="2026-05-25T01:57:59.328485" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:58.974612" elapsed="0.353963"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:57:58.973087" elapsed="0.355608"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:57:59.329233" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-05-25T01:57:59.352132" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:57:59.352392" level="INFO">${stdout} = d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
        Controller "tcp:10.30.170.200:6653"
        fail_mode: secure
        Port s1-eth1
            In...</msg>
<msg time="2026-05-25T01:57:59.352491" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:57:59.328958" elapsed="0.023584"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:57:59.352918" elapsed="0.000522"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:59.354583" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:59.353911" elapsed="0.000766"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:57:59.355183" elapsed="0.000041"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:57:59.354854" elapsed="0.000442"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:59.354802" elapsed="0.000546"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:57:59.355703" elapsed="0.000058"/>
</return>
<status status="PASS" start="2026-05-25T01:57:59.355467" elapsed="0.000367"/>
</branch>
<status status="PASS" start="2026-05-25T01:57:59.355432" elapsed="0.000455"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:57:59.356023" elapsed="0.000033"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:57:59.360749" elapsed="0.000203"/>
</kw>
<msg time="2026-05-25T01:57:59.361012" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:59.359948" elapsed="0.001175"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:59.361351" elapsed="0.000030"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:57:59.361656" elapsed="0.000029"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:57:59.356747" elapsed="0.005031"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:57:58.970006" elapsed="0.391900"/>
</kw>
<msg time="2026-05-25T01:57:59.361983" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:57:58.969326" elapsed="0.392722"/>
</kw>
<msg time="2026-05-25T01:57:59.362229" level="INFO">${output} = d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
        Controller "tcp:10.30.170.200:6653"
        fail_mode: secure
        Port s1-eth1
            In...</msg>
<var>${output}</var>
<arg>${tools_system}</arg>
<arg>sudo ovs-vsctl show</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:57:58.968764" elapsed="0.393503"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:57:59.362842" level="INFO">d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
        Controller "tcp:10.30.170.200:6653"
        fail_mode: secure
        Port s1-eth1
            Interface s1-eth1
        Port s1-eth2
            Interface s1-eth2
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:57:59.362488" elapsed="0.000420"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-05-25T01:57:59.363615" level="INFO">Item found from container 0 times.</msg>
<msg time="2026-05-25T01:57:59.363761" level="FAIL">'d1dbe9d3-622c-4912-8b46-2b35fa230f8f\n    Bridge s1\n        Controller "tcp:10.30.170.200:6633"\n        Controller "tcp:10.30.170.200:6653"\n        fail_mode: secure\n        Port s1-eth1\n            Interface s1-eth1\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n    ovs_version: "2.17.11"' contains 'is_connected' 0 times, not 1 time.</msg>
<arg>${output}</arg>
<arg>is_connected</arg>
<arg>${of_connections}</arg>
<doc>Fails if ``container`` does not contain ``item`` ``count`` times.</doc>
<status status="FAIL" start="2026-05-25T01:57:59.363145" elapsed="0.000715">'d1dbe9d3-622c-4912-8b46-2b35fa230f8f\n    Bridge s1\n        Controller "tcp:10.30.170.200:6633"\n        Controller "tcp:10.30.170.200:6653"\n        fail_mode: secure\n        Port s1-eth1\n            Interface s1-eth1\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n    ovs_version: "2.17.11"' contains 'is_connected' 0 times, not 1 time.</status>
</kw>
<arg>${TOOLS_SYSTEM_IP}</arg>
<arg>1</arg>
<doc>Check OVS instance with IP ${tools_system} has ${of_connections} OpenFlow connections.</doc>
<status status="FAIL" start="2026-05-25T01:57:58.968251" elapsed="0.395788">'d1dbe9d3-622c-4912-8b46-2b35fa230f8f\n    Bridge s1\n        Controller "tcp:10.30.170.200:6633"\n        Controller "tcp:10.30.170.200:6653"\n        fail_mode: secure\n        Port s1-eth1\n            Interface s1-eth1\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n    ovs_version: "2.17.11"' contains 'is_connected' 0 times, not 1 time.</status>
</kw>
<kw name="Check OVS OpenFlow Connections" owner="OVSDB">
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:00.381917" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:58:00.381580" elapsed="0.000412"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:00.381556" elapsed="0.000461"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:58:00.382334" level="INFO">index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:58:00.382449" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:58:00.382185" elapsed="0.000293"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:00.383025" level="INFO">Attempting to execute command "sudo ovs-vsctl show" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:00.382631" elapsed="0.000457"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:58:00.383892" level="INFO">${conn_id} = 68</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:58:00.383249" elapsed="0.000670"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:58:00.384846" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:58:00.384923" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:58:00.384563" elapsed="0.000384"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:00.385124" elapsed="0.000327"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:58:00.386312" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:58:00.703934" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:57:41 UTC 2026

  System load:  0.1                Processes:             110
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:57:59 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:58:00.385982" elapsed="0.318116"/>
</kw>
<msg time="2026-05-25T01:58:00.704185" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:00.385623" elapsed="0.318643"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:58:00.384156" elapsed="0.320224"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:58:00.704921" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-05-25T01:58:00.767133" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:58:00.767394" level="INFO">${stdout} = d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
        Controller "tcp:10.30.170.200:6653"
        fail_mode: secure
        Port s1-eth1
            In...</msg>
<msg time="2026-05-25T01:58:00.767497" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:58:00.704627" elapsed="0.062924"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:58:00.767965" elapsed="0.000491"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:00.769592" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:00.768926" elapsed="0.000759"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:58:00.770198" elapsed="0.000039"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:58:00.769867" elapsed="0.000447"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:00.769809" elapsed="0.000612"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:58:00.770851" elapsed="0.000063"/>
</return>
<status status="PASS" start="2026-05-25T01:58:00.770592" elapsed="0.000394"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:00.770552" elapsed="0.000486"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:58:00.771149" elapsed="0.000034"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:58:00.777452" elapsed="0.000146"/>
</kw>
<msg time="2026-05-25T01:58:00.777643" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:00.776867" elapsed="0.000840"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:00.777868" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:00.778032" elapsed="0.000020"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:58:00.771879" elapsed="0.006258"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:58:00.381017" elapsed="0.397212"/>
</kw>
<msg time="2026-05-25T01:58:00.778285" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:00.380240" elapsed="0.398091"/>
</kw>
<msg time="2026-05-25T01:58:00.778443" level="INFO">${output} = d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
        Controller "tcp:10.30.170.200:6653"
        fail_mode: secure
        Port s1-eth1
            In...</msg>
<var>${output}</var>
<arg>${tools_system}</arg>
<arg>sudo ovs-vsctl show</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:58:00.379445" elapsed="0.399025"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:00.778883" level="INFO">d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
        Controller "tcp:10.30.170.200:6653"
        fail_mode: secure
        Port s1-eth1
            Interface s1-eth1
        Port s1-eth2
            Interface s1-eth2
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:00.778631" elapsed="0.000300"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-05-25T01:58:00.779437" level="INFO">Item found from container 0 times.</msg>
<msg time="2026-05-25T01:58:00.779544" level="FAIL">'d1dbe9d3-622c-4912-8b46-2b35fa230f8f\n    Bridge s1\n        Controller "tcp:10.30.170.200:6633"\n        Controller "tcp:10.30.170.200:6653"\n        fail_mode: secure\n        Port s1-eth1\n            Interface s1-eth1\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n    ovs_version: "2.17.11"' contains 'is_connected' 0 times, not 1 time.</msg>
<arg>${output}</arg>
<arg>is_connected</arg>
<arg>${of_connections}</arg>
<doc>Fails if ``container`` does not contain ``item`` ``count`` times.</doc>
<status status="FAIL" start="2026-05-25T01:58:00.779098" elapsed="0.000591">'d1dbe9d3-622c-4912-8b46-2b35fa230f8f\n    Bridge s1\n        Controller "tcp:10.30.170.200:6633"\n        Controller "tcp:10.30.170.200:6653"\n        fail_mode: secure\n        Port s1-eth1\n            Interface s1-eth1\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n    ovs_version: "2.17.11"' contains 'is_connected' 0 times, not 1 time.</status>
</kw>
<arg>${TOOLS_SYSTEM_IP}</arg>
<arg>1</arg>
<doc>Check OVS instance with IP ${tools_system} has ${of_connections} OpenFlow connections.</doc>
<status status="FAIL" start="2026-05-25T01:58:00.378767" elapsed="0.401043">'d1dbe9d3-622c-4912-8b46-2b35fa230f8f\n    Bridge s1\n        Controller "tcp:10.30.170.200:6633"\n        Controller "tcp:10.30.170.200:6653"\n        fail_mode: secure\n        Port s1-eth1\n            Interface s1-eth1\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n    ovs_version: "2.17.11"' contains 'is_connected' 0 times, not 1 time.</status>
</kw>
<kw name="Check OVS OpenFlow Connections" owner="OVSDB">
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:01.797428" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:58:01.797097" elapsed="0.000403"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:01.797059" elapsed="0.000465"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:58:01.797817" level="INFO">index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:58:01.797931" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:58:01.797676" elapsed="0.000283"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:01.798517" level="INFO">Attempting to execute command "sudo ovs-vsctl show" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:01.798129" elapsed="0.000435"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:58:01.799116" level="INFO">${conn_id} = 69</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:58:01.798724" elapsed="0.000419"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:58:01.800061" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:58:01.800154" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:58:01.799776" elapsed="0.000403"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:01.800341" elapsed="0.000323"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:58:01.801528" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:58:02.118855" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:57:41 UTC 2026

  System load:  0.1                Processes:             110
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:58:00 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:58:01.801211" elapsed="0.317750"/>
</kw>
<msg time="2026-05-25T01:58:02.119031" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:01.800834" elapsed="0.318290"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:58:01.799362" elapsed="0.319863"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:58:02.119691" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-05-25T01:58:02.182310" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:58:02.182524" level="INFO">${stdout} = d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
            is_connected: true
        Controller "tcp:10.30.170.200:6653"
            is_connected: true...</msg>
<msg time="2026-05-25T01:58:02.182571" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:58:02.119470" elapsed="0.063127"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:58:02.182851" elapsed="0.000352"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:02.183782" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:02.183455" elapsed="0.000374"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:58:02.184166" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:58:02.183922" elapsed="0.000300"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:02.183894" elapsed="0.000351"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:58:02.184410" elapsed="0.000033"/>
</return>
<status status="PASS" start="2026-05-25T01:58:02.184299" elapsed="0.000177"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:02.184284" elapsed="0.000216"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:58:02.184535" elapsed="0.000014"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:58:02.187935" elapsed="0.000295"/>
</kw>
<msg time="2026-05-25T01:58:02.188279" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:02.187432" elapsed="0.000913"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:02.188507" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:02.188669" elapsed="0.000020"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:58:02.184869" elapsed="0.003883"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:58:01.796545" elapsed="0.392298"/>
</kw>
<msg time="2026-05-25T01:58:02.188897" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:01.795898" elapsed="0.393044"/>
</kw>
<msg time="2026-05-25T01:58:02.189051" level="INFO">${output} = d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
            is_connected: true
        Controller "tcp:10.30.170.200:6653"
            is_connected: true...</msg>
<var>${output}</var>
<arg>${tools_system}</arg>
<arg>sudo ovs-vsctl show</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:58:01.795366" elapsed="0.393728"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:02.189503" level="INFO">d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
            is_connected: true
        Controller "tcp:10.30.170.200:6653"
            is_connected: true
        fail_mode: secure
        Port s1-eth1
            Interface s1-eth1
        Port s1-eth2
            Interface s1-eth2
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:02.189252" elapsed="0.000298"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-05-25T01:58:02.190041" level="INFO">Item found from container 2 times.</msg>
<msg time="2026-05-25T01:58:02.190165" level="FAIL">'d1dbe9d3-622c-4912-8b46-2b35fa230f8f\n    Bridge s1\n        Controller "tcp:10.30.170.200:6633"\n            is_connected: true\n        Controller "tcp:10.30.170.200:6653"\n            is_connected: true\n        fail_mode: secure\n        Port s1-eth1\n            Interface s1-eth1\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n    ovs_version: "2.17.11"' contains 'is_connected' 2 times, not 1 time.</msg>
<arg>${output}</arg>
<arg>is_connected</arg>
<arg>${of_connections}</arg>
<doc>Fails if ``container`` does not contain ``item`` ``count`` times.</doc>
<status status="FAIL" start="2026-05-25T01:58:02.189701" elapsed="0.000539">'d1dbe9d3-622c-4912-8b46-2b35fa230f8f\n    Bridge s1\n        Controller "tcp:10.30.170.200:6633"\n            is_connected: true\n        Controller "tcp:10.30.170.200:6653"\n            is_connected: true\n        fail_mode: secure\n        Port s1-eth1\n            Interface s1-eth1\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n    ovs_version: "2.17.11"' contains 'is_connected' 2 times, not 1 time.</status>
</kw>
<arg>${TOOLS_SYSTEM_IP}</arg>
<arg>1</arg>
<doc>Check OVS instance with IP ${tools_system} has ${of_connections} OpenFlow connections.</doc>
<status status="FAIL" start="2026-05-25T01:58:01.794874" elapsed="0.395479">'d1dbe9d3-622c-4912-8b46-2b35fa230f8f\n    Bridge s1\n        Controller "tcp:10.30.170.200:6633"\n            is_connected: true\n        Controller "tcp:10.30.170.200:6653"\n            is_connected: true\n        fail_mode: secure\n        Port s1-eth1\n            Interface s1-eth1\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n    ovs_version: "2.17.11"' contains 'is_connected' 2 times, not 1 time.</status>
</kw>
<kw name="Check OVS OpenFlow Connections" owner="OVSDB">
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:03.207591" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:58:03.207044" elapsed="0.000654"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:03.207002" elapsed="0.000734"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:58:03.208121" level="INFO">index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:58:03.208252" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:58:03.207931" elapsed="0.000349"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:03.208907" level="INFO">Attempting to execute command "sudo ovs-vsctl show" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:03.208516" elapsed="0.000438"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:58:03.209520" level="INFO">${conn_id} = 70</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:58:03.209129" elapsed="0.000417"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:58:03.210455" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:58:03.210531" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:58:03.210174" elapsed="0.000381"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:03.210714" elapsed="0.000321"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:58:03.211913" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:58:03.536985" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:57:41 UTC 2026

  System load:  0.1                Processes:             110
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:58:02 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:58:03.211598" elapsed="0.325495"/>
</kw>
<msg time="2026-05-25T01:58:03.537159" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:03.211236" elapsed="0.325992"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:58:03.209762" elapsed="0.327556"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:58:03.537720" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-05-25T01:58:03.560312" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:58:03.560563" level="INFO">${stdout} = d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
            is_connected: true
        Controller "tcp:10.30.170.200:6653"
            is_connected: true...</msg>
<msg time="2026-05-25T01:58:03.560664" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:58:03.537505" elapsed="0.023210"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:58:03.561125" elapsed="0.000482"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:03.562657" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:03.562044" elapsed="0.000706"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:58:03.563292" elapsed="0.000041"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:58:03.562912" elapsed="0.000494"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:03.562864" elapsed="0.000592"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:58:03.563807" elapsed="0.000050"/>
</return>
<status status="PASS" start="2026-05-25T01:58:03.563572" elapsed="0.000331"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:03.563539" elapsed="0.000398"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:58:03.563982" elapsed="0.000020"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:58:03.568371" elapsed="0.000197"/>
</kw>
<msg time="2026-05-25T01:58:03.568627" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:03.567659" elapsed="0.001051"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:03.568933" elapsed="0.000030"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:03.569178" elapsed="0.000029"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:58:03.564437" elapsed="0.004855"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:58:03.206214" elapsed="0.363202"/>
</kw>
<msg time="2026-05-25T01:58:03.569550" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:03.205282" elapsed="0.364335"/>
</kw>
<msg time="2026-05-25T01:58:03.569774" level="INFO">${output} = d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
            is_connected: true
        Controller "tcp:10.30.170.200:6653"
            is_connected: true...</msg>
<var>${output}</var>
<arg>${tools_system}</arg>
<arg>sudo ovs-vsctl show</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:58:03.204542" elapsed="0.365269"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:03.570616" level="INFO">d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
            is_connected: true
        Controller "tcp:10.30.170.200:6653"
            is_connected: true
        fail_mode: secure
        Port s1-eth1
            Interface s1-eth1
        Port s1-eth2
            Interface s1-eth2
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:03.570030" elapsed="0.000653"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-05-25T01:58:03.571410" level="INFO">Item found from container 2 times.</msg>
<msg time="2026-05-25T01:58:03.571559" level="FAIL">'d1dbe9d3-622c-4912-8b46-2b35fa230f8f\n    Bridge s1\n        Controller "tcp:10.30.170.200:6633"\n            is_connected: true\n        Controller "tcp:10.30.170.200:6653"\n            is_connected: true\n        fail_mode: secure\n        Port s1-eth1\n            Interface s1-eth1\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n    ovs_version: "2.17.11"' contains 'is_connected' 2 times, not 1 time.</msg>
<arg>${output}</arg>
<arg>is_connected</arg>
<arg>${of_connections}</arg>
<doc>Fails if ``container`` does not contain ``item`` ``count`` times.</doc>
<status status="FAIL" start="2026-05-25T01:58:03.570904" elapsed="0.000757">'d1dbe9d3-622c-4912-8b46-2b35fa230f8f\n    Bridge s1\n        Controller "tcp:10.30.170.200:6633"\n            is_connected: true\n        Controller "tcp:10.30.170.200:6653"\n            is_connected: true\n        fail_mode: secure\n        Port s1-eth1\n            Interface s1-eth1\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n    ovs_version: "2.17.11"' contains 'is_connected' 2 times, not 1 time.</status>
</kw>
<arg>${TOOLS_SYSTEM_IP}</arg>
<arg>1</arg>
<doc>Check OVS instance with IP ${tools_system} has ${of_connections} OpenFlow connections.</doc>
<status status="FAIL" start="2026-05-25T01:58:03.203839" elapsed="0.368210">'d1dbe9d3-622c-4912-8b46-2b35fa230f8f\n    Bridge s1\n        Controller "tcp:10.30.170.200:6633"\n            is_connected: true\n        Controller "tcp:10.30.170.200:6653"\n            is_connected: true\n        fail_mode: secure\n        Port s1-eth1\n            Interface s1-eth1\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n    ovs_version: "2.17.11"' contains 'is_connected' 2 times, not 1 time.</status>
</kw>
<kw name="Check OVS OpenFlow Connections" owner="OVSDB">
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:04.593858" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:58:04.593376" elapsed="0.000596"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:04.593338" elapsed="0.000675"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:58:04.594479" level="INFO">index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:58:04.594647" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:58:04.594257" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:04.595549" level="INFO">Attempting to execute command "sudo ovs-vsctl show" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:04.594908" elapsed="0.000710"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:58:04.596676" level="INFO">${conn_id} = 71</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:58:04.595847" elapsed="0.000856"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:58:04.597655" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:58:04.597731" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:58:04.597358" elapsed="0.000397"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:04.597925" elapsed="0.000368"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:58:04.599189" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:58:04.931692" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:57:41 UTC 2026

  System load:  0.1                Processes:             110
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:58:03 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:58:04.598835" elapsed="0.333129"/>
</kw>
<msg time="2026-05-25T01:58:04.932093" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:04.598468" elapsed="0.333728"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:58:04.596933" elapsed="0.335398"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:58:04.932950" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-05-25T01:58:05.006254" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:58:05.006618" level="INFO">${stdout} = d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
            is_connected: true
        Controller "tcp:10.30.170.200:6653"
            is_connected: true...</msg>
<msg time="2026-05-25T01:58:05.006783" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:58:04.932636" elapsed="0.074218"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:58:05.007479" elapsed="0.000657"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:05.009359" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:05.008630" elapsed="0.000826"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:58:05.009958" elapsed="0.000043"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:58:05.009647" elapsed="0.000463"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:05.009585" elapsed="0.000580"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:58:05.010527" elapsed="0.000065"/>
</return>
<status status="PASS" start="2026-05-25T01:58:05.010287" elapsed="0.000380"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:05.010252" elapsed="0.000467"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:58:05.010795" elapsed="0.000031"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:58:05.016246" elapsed="0.000209"/>
</kw>
<msg time="2026-05-25T01:58:05.016518" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:05.015186" elapsed="0.001422"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:05.016833" elapsed="0.000030"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:05.017058" elapsed="0.000048"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:58:05.011688" elapsed="0.005508"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:58:04.592562" elapsed="0.424762"/>
</kw>
<msg time="2026-05-25T01:58:05.017400" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:04.591474" elapsed="0.426239"/>
</kw>
<msg time="2026-05-25T01:58:05.017891" level="INFO">${output} = d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
            is_connected: true
        Controller "tcp:10.30.170.200:6653"
            is_connected: true...</msg>
<var>${output}</var>
<arg>${tools_system}</arg>
<arg>sudo ovs-vsctl show</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:58:04.590662" elapsed="0.427271"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:05.018545" level="INFO">d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
            is_connected: true
        Controller "tcp:10.30.170.200:6653"
            is_connected: true
        fail_mode: secure
        Port s1-eth1
            Interface s1-eth1
        Port s1-eth2
            Interface s1-eth2
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:05.018180" elapsed="0.000446"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-05-25T01:58:05.019427" level="INFO">Item found from container 2 times.</msg>
<msg time="2026-05-25T01:58:05.019620" level="FAIL">'d1dbe9d3-622c-4912-8b46-2b35fa230f8f\n    Bridge s1\n        Controller "tcp:10.30.170.200:6633"\n            is_connected: true\n        Controller "tcp:10.30.170.200:6653"\n            is_connected: true\n        fail_mode: secure\n        Port s1-eth1\n            Interface s1-eth1\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n    ovs_version: "2.17.11"' contains 'is_connected' 2 times, not 1 time.</msg>
<arg>${output}</arg>
<arg>is_connected</arg>
<arg>${of_connections}</arg>
<doc>Fails if ``container`` does not contain ``item`` ``count`` times.</doc>
<status status="FAIL" start="2026-05-25T01:58:05.018844" elapsed="0.000901">'d1dbe9d3-622c-4912-8b46-2b35fa230f8f\n    Bridge s1\n        Controller "tcp:10.30.170.200:6633"\n            is_connected: true\n        Controller "tcp:10.30.170.200:6653"\n            is_connected: true\n        fail_mode: secure\n        Port s1-eth1\n            Interface s1-eth1\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n    ovs_version: "2.17.11"' contains 'is_connected' 2 times, not 1 time.</status>
</kw>
<arg>${TOOLS_SYSTEM_IP}</arg>
<arg>1</arg>
<doc>Check OVS instance with IP ${tools_system} has ${of_connections} OpenFlow connections.</doc>
<status status="FAIL" start="2026-05-25T01:58:04.589571" elapsed="0.430402">'d1dbe9d3-622c-4912-8b46-2b35fa230f8f\n    Bridge s1\n        Controller "tcp:10.30.170.200:6633"\n            is_connected: true\n        Controller "tcp:10.30.170.200:6653"\n            is_connected: true\n        fail_mode: secure\n        Port s1-eth1\n            Interface s1-eth1\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n    ovs_version: "2.17.11"' contains 'is_connected' 2 times, not 1 time.</status>
</kw>
<kw name="Check OVS OpenFlow Connections" owner="OVSDB">
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:06.039540" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:58:06.039198" elapsed="0.000416"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:06.039171" elapsed="0.000471"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:58:06.039954" level="INFO">index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:58:06.040087" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:58:06.039795" elapsed="0.000322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:06.040681" level="INFO">Attempting to execute command "sudo ovs-vsctl show" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:06.040272" elapsed="0.000458"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:58:06.041305" level="INFO">${conn_id} = 72</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:58:06.040893" elapsed="0.000439"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:58:06.042259" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:58:06.042337" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:58:06.041945" elapsed="0.000415"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:06.042522" elapsed="0.000366"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:58:06.043765" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:58:06.373564" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:57:41 UTC 2026

  System load:  0.1                Processes:             110
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:58:04 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:58:06.043445" elapsed="0.330279"/>
</kw>
<msg time="2026-05-25T01:58:06.373816" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:06.043062" elapsed="0.330843"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:58:06.041548" elapsed="0.332472"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:58:06.374597" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-05-25T01:58:06.397419" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:58:06.397718" level="INFO">${stdout} = d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
        Controller "tcp:10.30.170.200:6653"
            is_connected: true
        fail_mode: secure
    ...</msg>
<msg time="2026-05-25T01:58:06.397822" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:58:06.374318" elapsed="0.023556"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:58:06.398301" elapsed="0.000538"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:06.399991" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:06.399363" elapsed="0.000759"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:58:06.400601" elapsed="0.000039"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:58:06.400303" elapsed="0.000407"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:06.400249" elapsed="0.000514"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:58:06.401146" elapsed="0.000061"/>
</return>
<status status="PASS" start="2026-05-25T01:58:06.400880" elapsed="0.000400"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:06.400846" elapsed="0.000676"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:58:06.401615" elapsed="0.000033"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:58:06.409385" elapsed="0.000328"/>
</kw>
<msg time="2026-05-25T01:58:06.409812" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:06.407869" elapsed="0.002081"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:06.410338" elapsed="0.000050"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:06.410761" elapsed="0.000051"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:58:06.402361" elapsed="0.008593"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:58:06.038612" elapsed="0.372647"/>
</kw>
<msg time="2026-05-25T01:58:06.411323" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:06.037910" elapsed="0.373462"/>
</kw>
<msg time="2026-05-25T01:58:06.411485" level="INFO">${output} = d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
        Controller "tcp:10.30.170.200:6653"
            is_connected: true
        fail_mode: secure
    ...</msg>
<var>${output}</var>
<arg>${tools_system}</arg>
<arg>sudo ovs-vsctl show</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:58:06.037380" elapsed="0.374131"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:06.411922" level="INFO">d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
        Controller "tcp:10.30.170.200:6653"
            is_connected: true
        fail_mode: secure
        Port s1-eth1
            Interface s1-eth1
        Port s1-eth2
            Interface s1-eth2
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:06.411671" elapsed="0.000298"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-05-25T01:58:06.412486" level="INFO">Item found from container 1 time.</msg>
<arg>${output}</arg>
<arg>is_connected</arg>
<arg>${of_connections}</arg>
<doc>Fails if ``container`` does not contain ``item`` ``count`` times.</doc>
<status status="PASS" start="2026-05-25T01:58:06.412137" elapsed="0.000418"/>
</kw>
<arg>${TOOLS_SYSTEM_IP}</arg>
<arg>1</arg>
<doc>Check OVS instance with IP ${tools_system} has ${of_connections} OpenFlow connections.</doc>
<status status="PASS" start="2026-05-25T01:58:06.036786" elapsed="0.375830"/>
</kw>
<arg>20s</arg>
<arg>1s</arg>
<arg>OVSDB.Check OVS OpenFlow Connections</arg>
<arg>${TOOLS_SYSTEM_IP}</arg>
<arg>1</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:57:56.158708" elapsed="10.253961"/>
</kw>
<kw name="Check Master Connection">
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:06.415206" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:58:06.414900" elapsed="0.000364"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:06.414880" elapsed="0.000407"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:58:06.415563" level="INFO">index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:58:06.415667" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:58:06.415439" elapsed="0.000256"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:06.416241" level="INFO">Attempting to execute command "sudo timeout --signal=KILL 30 ovsdb-client monitor Controller target,role" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:06.415846" elapsed="0.000442"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:58:06.416823" level="INFO">${conn_id} = 73</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:58:06.416446" elapsed="0.000403"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:58:06.417741" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:58:06.417817" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:58:06.417477" elapsed="0.000364"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:06.418002" elapsed="0.000356"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:58:06.419317" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:58:06.740482" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:57:41 UTC 2026

  System load:  0.1                Processes:             110
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:58:06 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:58:06.418979" elapsed="0.321673"/>
</kw>
<msg time="2026-05-25T01:58:06.740740" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:06.418557" elapsed="0.322277"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:58:06.417083" elapsed="0.323872"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:58:06.741544" level="INFO">Executing command 'sudo timeout --signal=KILL 30 ovsdb-client monitor Controller target,role'.</msg>
<msg time="2026-05-25T01:58:36.760776" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-05-25T01:58:36.761413" level="INFO">${stdout} = row                                  action  target                   role
------------------------------------ ------- ------------------------ ------
b7e38399-8da4-4691-8d5e-d22232217b00 initial "tc...</msg>
<msg time="2026-05-25T01:58:36.761551" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:58:06.741256" elapsed="30.020365"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:58:36.762206" elapsed="0.000595"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:36.764113" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:36.763375" elapsed="0.000847"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:58:36.764761" elapsed="0.000042"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:58:36.764423" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:36.764368" elapsed="0.000566"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:58:36.765437" elapsed="0.000072"/>
</return>
<status status="PASS" start="2026-05-25T01:58:36.765102" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:36.765027" elapsed="0.000622"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:58:36.765734" elapsed="0.000036"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:58:36.770449" elapsed="0.000212"/>
</kw>
<msg time="2026-05-25T01:58:36.770725" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:36.769621" elapsed="0.001196"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:36.771047" elapsed="0.000053"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:36.771302" elapsed="0.000030"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:58:36.766250" elapsed="0.005173"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:58:06.414359" elapsed="30.357196"/>
</kw>
<msg time="2026-05-25T01:58:36.771648" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:06.413776" elapsed="30.357939"/>
</kw>
<msg time="2026-05-25T01:58:36.771876" level="INFO">${output} = row                                  action  target                   role
------------------------------------ ------- ------------------------ ------
b7e38399-8da4-4691-8d5e-d22232217b00 initial "tc...</msg>
<var>${output}</var>
<arg>${TOOLS_SYSTEM_IP}</arg>
<arg>sudo timeout --signal=KILL ${timeout} ovsdb-client monitor Controller target,role</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:58:06.413226" elapsed="30.358689"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:58:36.772642" level="INFO">${output} = row                                  action  target                   role
------------------------------------ ------- ------------------------ ------
b7e38399-8da4-4691-8d5e-d22232217b00 initial "tc...</msg>
<arg>${output}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:58:36.772174" elapsed="0.000530"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${output}</arg>
<arg>master</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:58:36.772980" elapsed="0.000485"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:36.774210" level="INFO">row                                  action  target                   role
------------------------------------ ------- ------------------------ ------
b7e38399-8da4-4691-8d5e-d22232217b00 initial "tcp:10.30.170.200:6653" master
86fb8c43-7824-4d2a-ab0d-1c1ab21feaa9 initial "tcp:10.30.170.200:6633" []

row                                  action target                   role
------------------------------------ ------ ------------------------ ------
b7e38399-8da4-4691-8d5e-d22232217b00 old                             master
                                     new    "tcp:10.30.170.200:6653" []
86fb8c43-7824-4d2a-ab0d-1c1ab21feaa9 old                             []
                                     new    "tcp:10.30.170.200:6633" master

row                                  action target                   role
------------------------------------ ------ ------------------------ ------
b7e38399-8da4-4691-8d5e-d22232217b00 old                             []
                                     new    "tcp:10.30.170.200:6653" master
86fb8c43-7824-4d2a-ab0d-1c1ab21feaa9 old                             master
                                     new    "tcp:10.30.170.200:6633" other

row                                  action target                   role
------------------------------------ ------ ------------------------ -----
86fb8c43-7824-4d2a-ab0d-1c1ab21feaa9 old                             other
                                     new    "tcp:10.30.170.200:6633" []

row                                  action target                   role
------------------------------------ ------ ------------------------ ------
b7e38399-8da4-4691-8d5e-d22232217b00 old                             master
                                     new    "tcp:10.30.170.200:6653" []
86fb8c43-7824-4d2a-ab0d-1c1ab21feaa9 old                             []
                                     new    "tcp:10.30.170.200:6633" master

row                                  action target                   role
------------------------------------ ------ ------------------------ ------
b7e38399-8da4-4691-8d5e-d22232217b00 old                             []
                                     new    "tcp:10.30.170.200:6653" master
86fb8c43-7824-4d2a-ab0d-1c1ab21feaa9 old                             master
                                     new    "tcp:10.30.170.200:6633" []</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:36.773832" elapsed="0.000465"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:58:36.774360" elapsed="0.000043"/>
</return>
<arg>30</arg>
<doc>Execute OvsVsctl List Controllers Command and check for master connection.</doc>
<status status="PASS" start="2026-05-25T01:58:06.412855" elapsed="30.361686"/>
</kw>
<kw name="Report Failure Due To Bug" owner="Utils" type="TEARDOWN">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:58:36.776337" level="INFO">${test_skipped} = False</msg>
<var>${test_skipped}</var>
<arg>len(re.findall('SKIPPED', """${TEST_MESSAGE}""")) &gt; 0</arg>
<arg>modules=re</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:58:36.775668" elapsed="0.000708"/>
</kw>
<if>
<branch type="IF" condition="('${TEST_STATUS}' != 'FAIL') or ${test_skipped}">
<return>
<status status="PASS" start="2026-05-25T01:58:36.776762" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-05-25T01:58:36.776502" elapsed="0.000359"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:36.776474" elapsed="0.000421"/>
</if>
<kw name="Comment" owner="BuiltIn">
<arg>Jira tickets are {PROJECT}-{NUMBER} while Bugzilla tickets are {NUMBER}</arg>
<doc>Displays the given messages in the log file as keyword arguments.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:36.777167" elapsed="0.000032"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<var>${match}</var>
<arg>Should Contain</arg>
<arg>${number}</arg>
<arg>-</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:36.777463" elapsed="0.000031"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<var>${bug_url}</var>
<arg>${match}</arg>
<arg>https://jira.opendaylight.org/browse/${number}</arg>
<arg>https://bugs.opendaylight.org/show_bug.cgi?id=${number}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:36.777719" elapsed="0.000029"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<var>${msg}</var>
<arg>This test fails due to ${bug_url}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:36.777927" elapsed="0.000020"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${newline}</var>
<arg>chr(10)</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:36.778134" elapsed="0.000027"/>
</kw>
<kw name="Set Test Message" owner="BuiltIn">
<arg>${msg}${newline}${newline}${TEST_MESSAGE}</arg>
<doc>Sets message for the current test case.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:36.778333" elapsed="0.000024"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:36.778517" elapsed="0.000023"/>
</kw>
<if>
<branch type="IF" condition="&quot;${include_bug_in_tags}&quot;==&quot;True&quot;">
<kw name="Set Tags" owner="BuiltIn">
<arg>${bug_url}</arg>
<doc>Adds given ``tags`` for the current test or all tests in a suite.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:36.778789" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:58:36.778609" elapsed="0.000236"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:58:36.778590" elapsed="0.000281"/>
</if>
<arg>8723</arg>
<doc>Report that a test failed due to a known Bugzilla bug whose
number is provided as an argument.
Not FAILED (incl. SKIPPED) test are not reported.
This keyword must be used in the [Teardown] setting of the affected test
or as the first line of the test if FastFail module is not being
used. It reports the URL of the bug on console and also puts it
into the Robot log file.</doc>
<status status="PASS" start="2026-05-25T01:58:36.775086" elapsed="0.003838"/>
</kw>
<doc>Make a second connection from switch s1 to a controller</doc>
<status status="PASS" start="2026-05-25T01:57:55.290651" elapsed="41.488322"/>
</test>
<test id="s1-s11-t2" name="Restore original Connection To Controller And Check OVS Connection" line="36">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-05-25T01:58:36.780184" level="INFO">${controller_opt} = </msg>
<var>${controller_opt}</var>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-05-25T01:58:36.779904" elapsed="0.000307"/>
</kw>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-05-25T01:58:36.780751" level="INFO">${controller_opt} =   tcp:10.30.170.200:6633</msg>
<var>${controller_opt}</var>
<arg>${controller_opt}</arg>
<arg>${SPACE}tcp:${ODL_SYSTEM_IP}:${ODL_OF_PORT}</arg>
<doc>Catenates the given items together and returns the resulted string.</doc>
<status status="PASS" start="2026-05-25T01:58:36.780365" elapsed="0.000413"/>
</kw>
<kw name="Set Controller In OVS Bridge" owner="OVSDB">
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:36.791059" elapsed="0.000037"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:58:36.790768" elapsed="0.000406"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:36.790748" elapsed="0.000453"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:58:36.791501" level="INFO">index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:58:36.791607" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:58:36.791356" elapsed="0.000278"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:36.792192" level="INFO">Attempting to execute command "sudo ovs-vsctl set bridge s1 protocols=OpenFlow13" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:36.791788" elapsed="0.000450"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:58:36.792838" level="INFO">${conn_id} = 74</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:58:36.792400" elapsed="0.000464"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:58:36.793791" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:58:36.793868" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:58:36.793516" elapsed="0.000377"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:36.794053" elapsed="0.000348"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:58:36.795276" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:58:37.120915" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:57:41 UTC 2026

  System load:  0.1                Processes:             110
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:58:06 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:58:36.794942" elapsed="0.326217"/>
</kw>
<msg time="2026-05-25T01:58:37.121301" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:36.794573" elapsed="0.326846"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:58:36.793102" elapsed="0.328482"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:58:37.122328" level="INFO">Executing command 'sudo ovs-vsctl set bridge s1 protocols=OpenFlow13'.</msg>
<msg time="2026-05-25T01:58:37.174946" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:58:37.175362" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:58:37.175464" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:58:37.121947" elapsed="0.053570"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:58:37.176230" elapsed="0.000589"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:37.178118" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:37.177389" elapsed="0.000842"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:58:37.178714" elapsed="0.000040"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:58:37.178413" elapsed="0.000413"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:37.178359" elapsed="0.000519"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:58:37.179297" elapsed="0.000069"/>
</return>
<status status="PASS" start="2026-05-25T01:58:37.178998" elapsed="0.000446"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:37.178963" elapsed="0.000538"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:58:37.179579" elapsed="0.000033"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:58:37.186890" elapsed="0.000156"/>
</kw>
<msg time="2026-05-25T01:58:37.187109" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:37.186233" elapsed="0.000944"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:37.187338" elapsed="0.000021"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:37.187501" elapsed="0.000020"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:58:37.180356" elapsed="0.007228"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:58:36.790232" elapsed="0.397511"/>
</kw>
<msg time="2026-05-25T01:58:37.187798" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:36.789586" elapsed="0.398265"/>
</kw>
<arg>${tools_system}</arg>
<arg>sudo ovs-vsctl set bridge ${bridge} protocols=OpenFlow${ofversion}</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:58:36.788823" elapsed="0.399107"/>
</kw>
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:37.190191" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:58:37.189874" elapsed="0.000376"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:37.189853" elapsed="0.000421"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:58:37.190556" level="INFO">index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:58:37.190660" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:58:37.190423" elapsed="0.000264"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:37.191241" level="INFO">Attempting to execute command "sudo ovs-vsctl set-controller s1   tcp:10.30.170.200:6633" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:37.190841" elapsed="0.000448"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:58:37.191826" level="INFO">${conn_id} = 75</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:58:37.191447" elapsed="0.000405"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:58:37.192753" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:58:37.192829" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:58:37.192473" elapsed="0.000379"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:37.193012" elapsed="0.000356"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:58:37.194237" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:58:37.566906" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:57:41 UTC 2026

  System load:  0.1                Processes:             110
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:58:37 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:58:37.193902" elapsed="0.373194"/>
</kw>
<msg time="2026-05-25T01:58:37.567189" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:37.193540" elapsed="0.373736"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:58:37.192079" elapsed="0.375312"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:58:37.567889" level="INFO">Executing command 'sudo ovs-vsctl set-controller s1   tcp:10.30.170.200:6633'.</msg>
<msg time="2026-05-25T01:58:37.590870" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:58:37.591174" level="INFO">${stdout} = </msg>
<msg time="2026-05-25T01:58:37.591283" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:58:37.567647" elapsed="0.023692"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:58:37.591748" elapsed="0.000510"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:37.593476" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:37.592760" elapsed="0.000814"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:58:37.594062" elapsed="0.000072"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:58:37.593753" elapsed="0.000579"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:37.593700" elapsed="0.000694"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:58:37.594768" elapsed="0.000061"/>
</return>
<status status="PASS" start="2026-05-25T01:58:37.594519" elapsed="0.000383"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:37.594484" elapsed="0.000471"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:58:37.595029" elapsed="0.000031"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:58:37.601959" elapsed="0.000166"/>
</kw>
<msg time="2026-05-25T01:58:37.602170" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:37.600833" elapsed="0.001401"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:37.602396" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:37.602558" elapsed="0.000021"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:58:37.595759" elapsed="0.006883"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:58:37.189334" elapsed="0.413399"/>
</kw>
<msg time="2026-05-25T01:58:37.602787" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:37.188731" elapsed="0.414103"/>
</kw>
<arg>${tools_system}</arg>
<arg>sudo ovs-vsctl set-controller ${bridge} ${controller_opt}</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:58:37.188151" elapsed="0.414764"/>
</kw>
<arg>${TOOLS_SYSTEM_IP}</arg>
<arg>s1</arg>
<arg>${controller_opt}</arg>
<doc>Sets controller for the OVS bridge ${bridge} using   tcp:10.30.170.200:6633 and OF version ${ofversion}.</doc>
<status status="PASS" start="2026-05-25T01:58:36.788352" elapsed="0.814621"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check OVS OpenFlow Connections" owner="OVSDB">
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:37.613768" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:58:37.613449" elapsed="0.000386"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:37.613428" elapsed="0.000432"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:58:37.614153" level="INFO">index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:58:37.614262" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:58:37.614011" elapsed="0.000279"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:37.614832" level="INFO">Attempting to execute command "sudo ovs-vsctl show" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:37.614446" elapsed="0.000433"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:58:37.615462" level="INFO">${conn_id} = 76</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:58:37.615039" elapsed="0.000449"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:58:37.616398" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:58:37.616485" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:58:37.616117" elapsed="0.000394"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:37.616676" elapsed="0.000336"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:58:37.617910" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:58:37.944003" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:57:41 UTC 2026

  System load:  0.1                Processes:             110
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:58:37 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:58:37.617584" elapsed="0.326723"/>
</kw>
<msg time="2026-05-25T01:58:37.944395" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:37.617216" elapsed="0.327261"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:58:37.615705" elapsed="0.328888"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:58:37.945155" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-05-25T01:58:37.967756" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:58:37.968028" level="INFO">${stdout} = d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
        fail_mode: secure
        Port s1-eth1
            Interface s1-eth1
        Port s1-eth2
       ...</msg>
<msg time="2026-05-25T01:58:37.968170" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:58:37.944856" elapsed="0.023368"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:58:37.968640" elapsed="0.000586"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:37.970376" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:37.969701" elapsed="0.000772"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:58:37.970944" elapsed="0.000038"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:58:37.970647" elapsed="0.000407"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:37.970597" elapsed="0.000540"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:58:37.971502" elapsed="0.000064"/>
</return>
<status status="PASS" start="2026-05-25T01:58:37.971260" elapsed="0.000382"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:37.971225" elapsed="0.000471"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:58:37.971774" elapsed="0.000031"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:58:37.978529" elapsed="0.000150"/>
</kw>
<msg time="2026-05-25T01:58:37.978724" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:37.977807" elapsed="0.000981"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:37.978952" elapsed="0.000021"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:37.979132" elapsed="0.000021"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:58:37.972509" elapsed="0.006709"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:58:37.612873" elapsed="0.366439"/>
</kw>
<msg time="2026-05-25T01:58:37.979367" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:37.612300" elapsed="0.367115"/>
</kw>
<msg time="2026-05-25T01:58:37.979529" level="INFO">${output} = d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
        fail_mode: secure
        Port s1-eth1
            Interface s1-eth1
        Port s1-eth2
       ...</msg>
<var>${output}</var>
<arg>${tools_system}</arg>
<arg>sudo ovs-vsctl show</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:58:37.611785" elapsed="0.367770"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:37.979975" level="INFO">d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
        fail_mode: secure
        Port s1-eth1
            Interface s1-eth1
        Port s1-eth2
            Interface s1-eth2
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:37.979715" elapsed="0.000308"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-05-25T01:58:37.980592" level="INFO">Item found from container 0 times.</msg>
<msg time="2026-05-25T01:58:37.980701" level="FAIL">'d1dbe9d3-622c-4912-8b46-2b35fa230f8f\n    Bridge s1\n        Controller "tcp:10.30.170.200:6633"\n        fail_mode: secure\n        Port s1-eth1\n            Interface s1-eth1\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n    ovs_version: "2.17.11"' contains 'is_connected' 0 times, not 1 time.</msg>
<arg>${output}</arg>
<arg>is_connected</arg>
<arg>${of_connections}</arg>
<doc>Fails if ``container`` does not contain ``item`` ``count`` times.</doc>
<status status="FAIL" start="2026-05-25T01:58:37.980246" elapsed="0.000529">'d1dbe9d3-622c-4912-8b46-2b35fa230f8f\n    Bridge s1\n        Controller "tcp:10.30.170.200:6633"\n        fail_mode: secure\n        Port s1-eth1\n            Interface s1-eth1\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n    ovs_version: "2.17.11"' contains 'is_connected' 0 times, not 1 time.</status>
</kw>
<arg>${TOOLS_SYSTEM_IP}</arg>
<arg>1</arg>
<doc>Check OVS instance with IP ${tools_system} has ${of_connections} OpenFlow connections.</doc>
<status status="FAIL" start="2026-05-25T01:58:37.611383" elapsed="0.369508">'d1dbe9d3-622c-4912-8b46-2b35fa230f8f\n    Bridge s1\n        Controller "tcp:10.30.170.200:6633"\n        fail_mode: secure\n        Port s1-eth1\n            Interface s1-eth1\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n    ovs_version: "2.17.11"' contains 'is_connected' 0 times, not 1 time.</status>
</kw>
<kw name="Check OVS OpenFlow Connections" owner="OVSDB">
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:38.997791" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:58:38.997344" elapsed="0.000542"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:38.997312" elapsed="0.000601"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:58:38.998229" level="INFO">index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:58:38.998344" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:58:38.998080" elapsed="0.000292"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:38.998914" level="INFO">Attempting to execute command "sudo ovs-vsctl show" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:38.998526" elapsed="0.000435"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:58:38.999773" level="INFO">${conn_id} = 77</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:58:38.999135" elapsed="0.000665"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:58:39.000718" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:58:39.000796" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:58:39.000437" elapsed="0.000383"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:39.001006" elapsed="0.000343"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:58:39.002217" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:58:39.333002" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:57:41 UTC 2026

  System load:  0.1                Processes:             110
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:58:37 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:58:39.001880" elapsed="0.331306"/>
</kw>
<msg time="2026-05-25T01:58:39.333272" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:39.001521" elapsed="0.331835"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:58:39.000022" elapsed="0.333459"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:58:39.333999" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-05-25T01:58:39.356336" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:58:39.356584" level="INFO">${stdout} = d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
        fail_mode: secure
        Port s1-eth1
            Interface s1-eth1
        Port s1-eth2
       ...</msg>
<msg time="2026-05-25T01:58:39.356684" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:58:39.333755" elapsed="0.022980"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:58:39.357164" elapsed="0.000455"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:39.358736" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:39.358115" elapsed="0.000714"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:58:39.359336" elapsed="0.000038"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:58:39.359007" elapsed="0.000437"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:39.358954" elapsed="0.000541"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:58:39.359844" elapsed="0.000062"/>
</return>
<status status="PASS" start="2026-05-25T01:58:39.359612" elapsed="0.000368"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:39.359578" elapsed="0.000454"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:58:39.360141" elapsed="0.000032"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:58:39.366756" elapsed="0.000204"/>
</kw>
<msg time="2026-05-25T01:58:39.367021" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:39.365973" elapsed="0.001160"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:39.367434" elapsed="0.000031"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:39.367662" elapsed="0.000029"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:58:39.360860" elapsed="0.006917"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:58:38.996516" elapsed="0.371393"/>
</kw>
<msg time="2026-05-25T01:58:39.367985" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:38.995627" elapsed="0.372423"/>
</kw>
<msg time="2026-05-25T01:58:39.368235" level="INFO">${output} = d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
        fail_mode: secure
        Port s1-eth1
            Interface s1-eth1
        Port s1-eth2
       ...</msg>
<var>${output}</var>
<arg>${tools_system}</arg>
<arg>sudo ovs-vsctl show</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:58:38.994889" elapsed="0.373383"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:39.368864" level="INFO">d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
        fail_mode: secure
        Port s1-eth1
            Interface s1-eth1
        Port s1-eth2
            Interface s1-eth2
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:39.368494" elapsed="0.000435"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-05-25T01:58:39.369628" level="INFO">Item found from container 0 times.</msg>
<msg time="2026-05-25T01:58:39.369774" level="FAIL">'d1dbe9d3-622c-4912-8b46-2b35fa230f8f\n    Bridge s1\n        Controller "tcp:10.30.170.200:6633"\n        fail_mode: secure\n        Port s1-eth1\n            Interface s1-eth1\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n    ovs_version: "2.17.11"' contains 'is_connected' 0 times, not 1 time.</msg>
<arg>${output}</arg>
<arg>is_connected</arg>
<arg>${of_connections}</arg>
<doc>Fails if ``container`` does not contain ``item`` ``count`` times.</doc>
<status status="FAIL" start="2026-05-25T01:58:39.369162" elapsed="0.000710">'d1dbe9d3-622c-4912-8b46-2b35fa230f8f\n    Bridge s1\n        Controller "tcp:10.30.170.200:6633"\n        fail_mode: secure\n        Port s1-eth1\n            Interface s1-eth1\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n    ovs_version: "2.17.11"' contains 'is_connected' 0 times, not 1 time.</status>
</kw>
<arg>${TOOLS_SYSTEM_IP}</arg>
<arg>1</arg>
<doc>Check OVS instance with IP ${tools_system} has ${of_connections} OpenFlow connections.</doc>
<status status="FAIL" start="2026-05-25T01:58:38.994242" elapsed="0.375785">'d1dbe9d3-622c-4912-8b46-2b35fa230f8f\n    Bridge s1\n        Controller "tcp:10.30.170.200:6633"\n        fail_mode: secure\n        Port s1-eth1\n            Interface s1-eth1\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n    ovs_version: "2.17.11"' contains 'is_connected' 0 times, not 1 time.</status>
</kw>
<kw name="Check OVS OpenFlow Connections" owner="OVSDB">
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:40.389352" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:58:40.389007" elapsed="0.000416"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:40.388984" elapsed="0.000464"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:58:40.389742" level="INFO">index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:58:40.389854" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:58:40.389599" elapsed="0.000282"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:40.390439" level="INFO">Attempting to execute command "sudo ovs-vsctl show" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:40.390034" elapsed="0.000453"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:58:40.391026" level="INFO">${conn_id} = 78</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:58:40.390647" elapsed="0.000405"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:58:40.391964" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:58:40.392040" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:58:40.391685" elapsed="0.000379"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:40.392240" elapsed="0.000321"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:58:40.393521" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:58:40.742714" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:57:41 UTC 2026

  System load:  0.1                Processes:             110
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:58:39 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:58:40.393203" elapsed="0.349623"/>
</kw>
<msg time="2026-05-25T01:58:40.742894" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:40.392822" elapsed="0.350139"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:58:40.391287" elapsed="0.351775"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:58:40.743485" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-05-25T01:58:40.806418" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:58:40.806664" level="INFO">${stdout} = d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
        fail_mode: secure
        Port s1-eth1
            Interface s1-eth1
        Port s1-eth2
       ...</msg>
<msg time="2026-05-25T01:58:40.806764" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:58:40.743283" elapsed="0.063531"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:58:40.807239" elapsed="0.000460"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:40.808799" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:40.808180" elapsed="0.000711"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:58:40.809374" elapsed="0.000036"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:58:40.809062" elapsed="0.000419"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:40.809013" elapsed="0.000520"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:58:40.809876" elapsed="0.000060"/>
</return>
<status status="PASS" start="2026-05-25T01:58:40.809648" elapsed="0.000358"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:40.809614" elapsed="0.000444"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:58:40.810167" elapsed="0.000034"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:58:40.817194" elapsed="0.000141"/>
</kw>
<msg time="2026-05-25T01:58:40.817378" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:40.816351" elapsed="0.001092"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:40.817610" elapsed="0.000021"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:40.817772" elapsed="0.000020"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:58:40.810856" elapsed="0.006996"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:58:40.388449" elapsed="0.429492"/>
</kw>
<msg time="2026-05-25T01:58:40.817996" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:40.387796" elapsed="0.430244"/>
</kw>
<msg time="2026-05-25T01:58:40.818169" level="INFO">${output} = d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
        fail_mode: secure
        Port s1-eth1
            Interface s1-eth1
        Port s1-eth2
       ...</msg>
<var>${output}</var>
<arg>${tools_system}</arg>
<arg>sudo ovs-vsctl show</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:58:40.387276" elapsed="0.430919"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:40.818597" level="INFO">d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
        fail_mode: secure
        Port s1-eth1
            Interface s1-eth1
        Port s1-eth2
            Interface s1-eth2
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:40.818350" elapsed="0.000294"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-05-25T01:58:40.819157" level="INFO">Item found from container 0 times.</msg>
<msg time="2026-05-25T01:58:40.819266" level="FAIL">'d1dbe9d3-622c-4912-8b46-2b35fa230f8f\n    Bridge s1\n        Controller "tcp:10.30.170.200:6633"\n        fail_mode: secure\n        Port s1-eth1\n            Interface s1-eth1\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n    ovs_version: "2.17.11"' contains 'is_connected' 0 times, not 1 time.</msg>
<arg>${output}</arg>
<arg>is_connected</arg>
<arg>${of_connections}</arg>
<doc>Fails if ``container`` does not contain ``item`` ``count`` times.</doc>
<status status="FAIL" start="2026-05-25T01:58:40.818792" elapsed="0.000597">'d1dbe9d3-622c-4912-8b46-2b35fa230f8f\n    Bridge s1\n        Controller "tcp:10.30.170.200:6633"\n        fail_mode: secure\n        Port s1-eth1\n            Interface s1-eth1\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n    ovs_version: "2.17.11"' contains 'is_connected' 0 times, not 1 time.</status>
</kw>
<arg>${TOOLS_SYSTEM_IP}</arg>
<arg>1</arg>
<doc>Check OVS instance with IP ${tools_system} has ${of_connections} OpenFlow connections.</doc>
<status status="FAIL" start="2026-05-25T01:58:40.386783" elapsed="0.432721">'d1dbe9d3-622c-4912-8b46-2b35fa230f8f\n    Bridge s1\n        Controller "tcp:10.30.170.200:6633"\n        fail_mode: secure\n        Port s1-eth1\n            Interface s1-eth1\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n    ovs_version: "2.17.11"' contains 'is_connected' 0 times, not 1 time.</status>
</kw>
<kw name="Check OVS OpenFlow Connections" owner="OVSDB">
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:41.838155" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:58:41.837686" elapsed="0.000565"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:41.837655" elapsed="0.000631"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:58:41.838699" level="INFO">index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:58:41.838855" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:58:41.838500" elapsed="0.000393"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:41.839665" level="INFO">Attempting to execute command "sudo ovs-vsctl show" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:41.839129" elapsed="0.000601"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:58:41.840535" level="INFO">${conn_id} = 79</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:58:41.839951" elapsed="0.000621"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:58:41.841601" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:58:41.841678" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:58:41.841321" elapsed="0.000382"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:41.841865" elapsed="0.000338"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:58:41.843055" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:58:42.430116" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:58:42 UTC 2026

  System load:  0.07               Processes:             118
  Usage of /:   19.3% of 38.58GB   Users logged in:       1
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:58:40 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:58:41.842740" elapsed="0.588112"/>
</kw>
<msg time="2026-05-25T01:58:42.430936" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:41.842374" elapsed="0.588645"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:58:41.840872" elapsed="0.590276"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:58:42.431633" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-05-25T01:58:42.453946" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-05-25T01:58:42.454233" level="INFO">${stdout} = d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
            is_connected: true
        fail_mode: secure
        Port s1-eth1
            Interface s1-et...</msg>
<msg time="2026-05-25T01:58:42.454338" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:58:42.431396" elapsed="0.022994"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:58:42.454764" elapsed="0.000508"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:42.456695" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:42.455732" elapsed="0.001196"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:58:42.457435" elapsed="0.000038"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:58:42.457138" elapsed="0.000403"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:42.457054" elapsed="0.000538"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:58:42.457939" elapsed="0.000060"/>
</return>
<status status="PASS" start="2026-05-25T01:58:42.457707" elapsed="0.000394"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:42.457674" elapsed="0.000484"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:58:42.458233" elapsed="0.000031"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:58:42.465350" elapsed="0.000324"/>
</kw>
<msg time="2026-05-25T01:58:42.465772" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:42.464094" elapsed="0.001815"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:42.466317" elapsed="0.000050"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:42.466683" elapsed="0.000046"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:58:42.458927" elapsed="0.007939"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:58:41.836870" elapsed="0.630225"/>
</kw>
<msg time="2026-05-25T01:58:42.467222" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:41.835822" elapsed="0.631502"/>
</kw>
<msg time="2026-05-25T01:58:42.467568" level="INFO">${output} = d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
            is_connected: true
        fail_mode: secure
        Port s1-eth1
            Interface s1-et...</msg>
<var>${output}</var>
<arg>${tools_system}</arg>
<arg>sudo ovs-vsctl show</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:58:41.835099" elapsed="0.632527"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:42.468650" level="INFO">d1dbe9d3-622c-4912-8b46-2b35fa230f8f
    Bridge s1
        Controller "tcp:10.30.170.200:6633"
            is_connected: true
        fail_mode: secure
        Port s1-eth1
            Interface s1-eth1
        Port s1-eth2
            Interface s1-eth2
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:42.467970" elapsed="0.000785"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-05-25T01:58:42.469400" level="INFO">Item found from container 1 time.</msg>
<arg>${output}</arg>
<arg>is_connected</arg>
<arg>${of_connections}</arg>
<doc>Fails if ``container`` does not contain ``item`` ``count`` times.</doc>
<status status="PASS" start="2026-05-25T01:58:42.469041" elapsed="0.000427"/>
</kw>
<arg>${TOOLS_SYSTEM_IP}</arg>
<arg>1</arg>
<doc>Check OVS instance with IP ${tools_system} has ${of_connections} OpenFlow connections.</doc>
<status status="PASS" start="2026-05-25T01:58:41.834442" elapsed="0.635091"/>
</kw>
<arg>20s</arg>
<arg>1s</arg>
<arg>OVSDB.Check OVS OpenFlow Connections</arg>
<arg>${TOOLS_SYSTEM_IP}</arg>
<arg>1</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="PASS" start="2026-05-25T01:58:37.603157" elapsed="4.866427"/>
</kw>
<kw name="Check Master Connection">
<kw name="Run Command On Mininet" owner="Utils">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run Command On Remote System" owner="Utils">
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot; and &quot;${return_stderr}&quot;!=&quot;True&quot;">
<kw name="Fail" owner="BuiltIn">
<arg>At least one of {return_stdout} or {return_stderr} args should be set to True</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-05-25T01:58:42.472083" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:58:42.471778" elapsed="0.000363"/>
</branch>
<status status="PASS" start="2026-05-25T01:58:42.471760" elapsed="0.000406"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:58:42.472460" level="INFO">index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<msg time="2026-05-25T01:58:42.472561" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.68
alias=None
port=22
timeout=30 seconds
newline=

prompt=&gt;
term_type=vt100
width=80
height=24
path_separator=/
encoding=UTF-8
escape_ansi=False
encoding_errors=strict</msg>
<var>${current_ssh_connection}</var>
<doc>Returns information about the connection.</doc>
<status status="PASS" start="2026-05-25T01:58:42.472334" elapsed="0.000253"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:58:42.473129" level="INFO">Attempting to execute command "sudo timeout --signal=KILL 20 ovsdb-client monitor Controller target,role" on remote system "10.30.171.68" by user "jenkins" with keyfile pass "any" and prompt "&gt;" and password ""</msg>
<arg>Attempting to execute command "${cmd}" on remote system "${system}" by user "${user}" with keyfile pass "${keyfile_pass}" and prompt "${prompt}" and password "${password}"</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:58:42.472737" elapsed="0.000438"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-05-25T01:58:42.473710" level="INFO">${conn_id} = 80</msg>
<var>${conn_id}</var>
<arg>${system}</arg>
<arg>prompt=${prompt}</arg>
<arg>timeout=${prompt_timeout}</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="PASS" start="2026-05-25T01:58:42.473330" elapsed="0.000406"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-05-25T01:58:42.474862" level="INFO">Length is 0.</msg>
<msg time="2026-05-25T01:58:42.474939" level="INFO">${pwd_length} = 0</msg>
<var>${pwd_length}</var>
<arg>${password}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-05-25T01:58:42.474399" elapsed="0.000564"/>
</kw>
<kw name="Run Keyword And Return If" owner="BuiltIn">
<arg>${pwd_length} &gt; 0</arg>
<arg>SSHLibrary.Login</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:42.475144" elapsed="0.000321"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-05-25T01:58:42.476347" level="INFO">Logging into '10.30.171.68:22' as 'jenkins'.</msg>
<msg time="2026-05-25T01:58:42.797902" level="INFO">Read output: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Mon May 25 01:58:42 UTC 2026

  System load:  0.07               Processes:             118
  Usage of /:   19.3% of 38.58GB   Users logged in:       1
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.68
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

9 additional security updates can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


The list of available updates is more than a week old.
To check for new updates run: sudo apt update
New release '24.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Last login: Mon May 25 01:58:42 2026 from 10.30.170.242
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Logs into the SSH server using key-based authentication.</doc>
<status status="PASS" start="2026-05-25T01:58:42.475993" elapsed="0.322246"/>
</kw>
<msg time="2026-05-25T01:58:42.798409" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>SSHLibrary.Login With Public Key</arg>
<arg>${user}</arg>
<arg>${USER_HOME}/.ssh/${SSH_KEY}</arg>
<arg>${KEYFILE_PASS}</arg>
<arg>delay=${delay}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:42.475635" elapsed="0.322937"/>
</kw>
<arg>${user}</arg>
<arg>${password}</arg>
<doc>On active SSH session: if given non-empty password, do Login, else do Login With Public Key.</doc>
<status status="PASS" start="2026-05-25T01:58:42.473948" elapsed="0.324868"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-05-25T01:58:42.799901" level="INFO">Executing command 'sudo timeout --signal=KILL 20 ovsdb-client monitor Controller target,role'.</msg>
<msg time="2026-05-25T01:59:02.819237" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-05-25T01:59:02.819660" level="INFO">${stdout} = row                                  action  target                   role
------------------------------------ ------- ------------------------ ------
4ecb8583-8dba-4b0c-aabd-8888571d3570 initial "tc...</msg>
<msg time="2026-05-25T01:59:02.819767" level="INFO">${stderr} = </msg>
<var>${stdout}</var>
<var>${stderr}</var>
<arg>${cmd}</arg>
<arg>return_stderr=True</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-05-25T01:58:42.799365" elapsed="20.020457"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:59:02.820380" elapsed="0.000549"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:59:02.822160" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:59:02.821466" elapsed="0.000797"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:59:02.822795" elapsed="0.000039"/>
</return>
<status status="NOT RUN" start="2026-05-25T01:59:02.822442" elapsed="0.000462"/>
</branch>
<status status="PASS" start="2026-05-25T01:59:02.822392" elapsed="0.000561"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-05-25T01:59:02.823350" elapsed="0.000069"/>
</return>
<status status="PASS" start="2026-05-25T01:59:02.823107" elapsed="0.000399"/>
</branch>
<status status="PASS" start="2026-05-25T01:59:02.823040" elapsed="0.000525"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-05-25T01:59:02.823642" elapsed="0.000032"/>
</return>
<kw name="Restore_Current_Ssh_Connection_From_Index" owner="SSHKeywords" type="TEARDOWN">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${connection_index}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:59:02.829204" elapsed="0.000148"/>
</kw>
<msg time="2026-05-25T01:59:02.829398" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${connection_index} is not None</arg>
<arg>SSHLibrary.Switch Connection</arg>
<arg>${connection_index}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:59:02.828683" elapsed="0.000782"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<arg>127.0.0.1</arg>
<doc>Opens a new SSH connection to the given ``host`` and ``port``.</doc>
<status status="NOT RUN" start="2026-05-25T01:59:02.829632" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-05-25T01:59:02.829794" elapsed="0.000019"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-05-25T01:59:02.824389" elapsed="0.005487"/>
</kw>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Reduces the common work of running a command on a remote system to a single higher level
robot keyword, taking care to log in with a public key and. The command given is written and the return value
depends on the passed argument values of return_stdout (default: True) and return_stderr (default: False).
At least one should be True, or the keyword will exit and FAIL. If both are True, the resulting return value
will be a two element list containing both. Otherwise the resulting return value is a string.
No test conditions are checked.</doc>
<status status="PASS" start="2026-05-25T01:58:42.471258" elapsed="20.358709"/>
</kw>
<msg time="2026-05-25T01:59:02.830023" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run Command On Remote System</arg>
<arg>${system}</arg>
<arg>${cmd}</arg>
<arg>${user}</arg>
<arg>${password}</arg>
<arg>prompt=${prompt}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-05-25T01:58:42.470682" elapsed="20.359404"/>
</kw>
<msg time="2026-05-25T01:59:02.830205" level="INFO">${output} = row                                  action  target                   role
------------------------------------ ------- ------------------------ ------
4ecb8583-8dba-4b0c-aabd-8888571d3570 initial "tc...</msg>
<var>${output}</var>
<arg>${TOOLS_SYSTEM_IP}</arg>
<arg>sudo timeout --signal=KILL ${timeout} ovsdb-client monitor Controller target,role</arg>
<doc>Call Run Comand On Remote System, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-05-25T01:58:42.470139" elapsed="20.360093"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-05-25T01:59:02.830890" level="INFO">${output} = row                                  action  target                   role
------------------------------------ ------- ------------------------ ------
4ecb8583-8dba-4b0c-aabd-8888571d3570 initial "tc...</msg>
<arg>${output}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-05-25T01:59:02.830539" elapsed="0.000395"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<arg>${output}</arg>
<arg>master</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="PASS" start="2026-05-25T01:59:02.831270" elapsed="0.000326"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:59:02.832036" level="INFO">row                                  action  target                   role
------------------------------------ ------- ------------------------ ------
4ecb8583-8dba-4b0c-aabd-8888571d3570 initial "tcp:10.30.170.200:6633" master</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:59:02.831790" elapsed="0.000311"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-05-25T01:59:02.832146" elapsed="0.000029"/>
</return>
<arg>20</arg>
<doc>Execute OvsVsctl List Controllers Command and check for master connection.</doc>
<status status="PASS" start="2026-05-25T01:58:42.469768" elapsed="20.362504"/>
</kw>
<kw name="Check Number Of Flows" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:59:02.851177" level="INFO">GET Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 path_url=/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0i01xim3xr5f01n7bmiiue4x395.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:59:02.854673" level="INFO">GET Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 status=200, reason=OK 
 headers={'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Transfer-Encoding': 'chunked'} 
 body={"opendaylight-inventory:nodes":{"node":[{"id":"openflow:1","flow-node-inventory:port-number":39672,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-9","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"17","byte-count":"1322","duration":{"second":24,"nanosecond":135000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"18","active-flows":1,"packets-matched":"17"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-05-25T01:59:02.855169" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_OPERATIONAL_NODES_API}</arg>
<arg>expected_status=200</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-05-25T01:59:02.832808" elapsed="0.022424"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-05-25T01:59:02.862137" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:1","flow-node-inventory:port-number":39672,"flow-node-inventory:table":[{"id":62,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":28,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":2,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":224,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":181,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":147,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":106,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":61,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":27,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":1,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":223,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":182,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":148,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":105,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":60,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":30,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":0,"flow":[{"id":"#UF$TABLE*0-9","table_id":0,"priority":0,"cookie_mask":"0","idle-timeout":0,"cookie":"10","instructions":{"instruction":[{"order":0,"apply-actions":{"action":[{"order":0,"output-action":{"max-length":65535,"output-node-connector":"CONTROLLER"}}]}}]},"hard-timeout":0,"opendaylight-flow-statistics:flow-statistics":{"packet-count":"17","byte-count":"1322","duration":{"second":24,"nanosecond":135000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"18","active-flows":1,"packets-matched":"17"}},{"id":226,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":179,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":149,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":104,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":59,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":29,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":225,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":180,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":150,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":103,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":66,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":32,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":220,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":185,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":151,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":102,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":65,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":31,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":253,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":219,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":186,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":152,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":101,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":64,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":34,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":252,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":222,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":183,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":153,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":100,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":63,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":33,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":251,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":221,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":184,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":154,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":99,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":54,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":20,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":250,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":216,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":189,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":155,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":129,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":114,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":53,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":19,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":249,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":215,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":190,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":156,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":130,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":113,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":52,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":22,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":248,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":218,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":187,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":157,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":112,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":51,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":21,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":247,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":217,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":188,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":158,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":128,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":111,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":58,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":24,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":246,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":212,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":193,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":159,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":110,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":57,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":23,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":245,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":211,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":194,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":160,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":109,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":56,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":26,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":244,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":214,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":191,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":161,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":108,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":55,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":25,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":243,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":213,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":192,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":162,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":107,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":77,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":43,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":17,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":239,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":198,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":164,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":138,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":119,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":89,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":78,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":44,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":18,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":240,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":197,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":163,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":137,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":120,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":90,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":75,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":45,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":15,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":241,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":196,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":166,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":136,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":121,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":87,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":76,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":46,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":16,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":242,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":195,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":165,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":135,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":122,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":88,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":81,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":47,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":13,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":235,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":202,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":168,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":134,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":115,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":85,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":82,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":48,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":14,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":236,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":201,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":167,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":133,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":116,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":86,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":79,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":49,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":11,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":237,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":200,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":170,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":132,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":117,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":83,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":80,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":50,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":12,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":238,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":199,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":169,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":131,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":118,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":84,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":69,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":35,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":9,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":231,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":206,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":172,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":146,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":127,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":97,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":70,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":36,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":10,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":232,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":205,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":171,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":145,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":98,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":67,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":37,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":7,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":233,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":204,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":174,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":144,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":95,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":68,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":38,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":8,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":234,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":203,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":173,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":143,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":96,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":73,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":39,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":5,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":227,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":210,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":176,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":142,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":123,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":93,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":74,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":40,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":6,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":228,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":209,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":175,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":141,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":124,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":94,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":71,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":41,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":3,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":229,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":208,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":178,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":140,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":125,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":91,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":72,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":42,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":4,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":230,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":207,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":177,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":139,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":126,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}},{"id":92,"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":0,"packets-matched":"0"}}],"opendaylight-group-statistics:group-features":{"max-groups":[4294967040],"group-types-supported":["opendaylight-group-types:group-all","opendaylight-group-types:group-ff","opendaylight-group-types:group-select","opendaylight-group-types:group-indirect"],"group-capabilities-supported":["opendaylight-group-types:chaining","opendaylight-group-types:select-weight","opendaylight-group-types:select-liveness"],"actions":[67076097]},"flow-node-inventory:manufacturer":"Nicira, Inc.","flow-node-inventory:description":"s1","flow-node-inventory:hardware":"Open vSwitch","flow-node-inventory:switch-features":{"max_tables":254,"capabilities":["flow-node-inventory:flow-feature-capability-table-stats","flow-node-inventory:flow-feature-capability-group-stats","flow-node-inventory:flow-feature-capability-queue-stats","flow-node-inventory:flow-feature-capability-flow-stats","flow-node-inventory:flow-feature-capability-port-stats"],"max_buffers":0},"flow-node-inventory:snapshot-gathering-status-start":{"begin":"2026-05-25T01:59:01.155Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"da:b0:a2:ab:fa:1c","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth1","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"23","received":"10"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":66,"nanosecond":996000000},"bytes":{"transmitted":"1916","received":"796"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"52:57:94:c7:11:48","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1","flow-node-inventory:current-feature":"","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":0,"flow-node-inventory:state":{"live":false,"blocked":false,"link-down":true},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"PORT-DOWN","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"0","received":"0"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":66,"nanosecond":989000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"aa:f2:8b:b1:fe:3f","flow-node-inventory:peer-features":"","flow-node-inventory:name":"s1-eth2","flow-node-inventory:current-feature":"ten-gb-fd copper","flow-node-inventory:supported":"","flow-node-inventory:advertised-features":"","flow-node-inventory:current-speed":10000000,"flow-node-inventory:state":{"live":true,"blocked":false,"link-down":false},"flow-node-inventory:maximum-speed":0,"flow-node-inventory:configuration":"","opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"23","received":"10"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":66,"nanosecond":996000000},"bytes":{"transmitted":"1916","received":"796"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.68","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-05-25T01:59:01.173Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-05-25T01:59:02.855686" elapsed="0.007153"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-05-25T01:59:02.865894" level="INFO">Item found from container 1 time.</msg>
<msg time="2026-05-25T01:59:02.865976" level="INFO">${count} = 1</msg>
<var>${count}</var>
<arg>${resp.text}</arg>
<arg>"priority"</arg>
<doc>Returns and logs how many times ``item`` is found from ``container``.</doc>
<status status="PASS" start="2026-05-25T01:59:02.863153" elapsed="0.002847"/>
</kw>
<kw name="Should Be Equal As Integers" owner="BuiltIn">
<msg time="2026-05-25T01:59:02.866525" level="INFO">Argument types are:
&lt;class 'int'&gt;
&lt;class 'str'&gt;</msg>
<arg>${count}</arg>
<arg>${flows}</arg>
<doc>Fails if objects are unequal after converting them to integers.</doc>
<status status="PASS" start="2026-05-25T01:59:02.866220" elapsed="0.000364"/>
</kw>
<arg>1</arg>
<doc>Check number of flows in the inventory.</doc>
<status status="PASS" start="2026-05-25T01:59:02.832502" elapsed="0.034144"/>
</kw>
<kw name="Report Failure Due To Bug" owner="Utils" type="TEARDOWN">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-05-25T01:59:02.867840" level="INFO">${test_skipped} = False</msg>
<var>${test_skipped}</var>
<arg>len(re.findall('SKIPPED', """${TEST_MESSAGE}""")) &gt; 0</arg>
<arg>modules=re</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-05-25T01:59:02.867412" elapsed="0.000455"/>
</kw>
<if>
<branch type="IF" condition="('${TEST_STATUS}' != 'FAIL') or ${test_skipped}">
<return>
<status status="PASS" start="2026-05-25T01:59:02.868117" elapsed="0.000033"/>
</return>
<status status="PASS" start="2026-05-25T01:59:02.867950" elapsed="0.000231"/>
</branch>
<status status="PASS" start="2026-05-25T01:59:02.867926" elapsed="0.000280"/>
</if>
<kw name="Comment" owner="BuiltIn">
<arg>Jira tickets are {PROJECT}-{NUMBER} while Bugzilla tickets are {NUMBER}</arg>
<doc>Displays the given messages in the log file as keyword arguments.</doc>
<status status="NOT RUN" start="2026-05-25T01:59:02.868387" elapsed="0.000022"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<var>${match}</var>
<arg>Should Contain</arg>
<arg>${number}</arg>
<arg>-</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="NOT RUN" start="2026-05-25T01:59:02.868565" elapsed="0.000020"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<var>${bug_url}</var>
<arg>${match}</arg>
<arg>https://jira.opendaylight.org/browse/${number}</arg>
<arg>https://bugs.opendaylight.org/show_bug.cgi?id=${number}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="NOT RUN" start="2026-05-25T01:59:02.868745" elapsed="0.000020"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<var>${msg}</var>
<arg>This test fails due to ${bug_url}</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="NOT RUN" start="2026-05-25T01:59:02.868916" elapsed="0.000020"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${newline}</var>
<arg>chr(10)</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-05-25T01:59:02.869100" elapsed="0.000021"/>
</kw>
<kw name="Set Test Message" owner="BuiltIn">
<arg>${msg}${newline}${newline}${TEST_MESSAGE}</arg>
<doc>Sets message for the current test case.</doc>
<status status="NOT RUN" start="2026-05-25T01:59:02.869264" elapsed="0.000019"/>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-05-25T01:59:02.869425" elapsed="0.000019"/>
</kw>
<if>
<branch type="IF" condition="&quot;${include_bug_in_tags}&quot;==&quot;True&quot;">
<kw name="Set Tags" owner="BuiltIn">
<arg>${bug_url}</arg>
<doc>Adds given ``tags`` for the current test or all tests in a suite.</doc>
<status status="NOT RUN" start="2026-05-25T01:59:02.869675" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-05-25T01:59:02.869505" elapsed="0.000223"/>
</branch>
<status status="NOT RUN" start="2026-05-25T01:59:02.869488" elapsed="0.000262"/>
</if>
<arg>8723</arg>
<doc>Report that a test failed due to a known Bugzilla bug whose
number is provided as an argument.
Not FAILED (incl. SKIPPED) test are not reported.
This keyword must be used in the [Teardown] setting of the affected test
or as the first line of the test if FastFail module is not being
used. It reports the URL of the bug on console and also puts it
into the Robot log file.</doc>
<status status="PASS" start="2026-05-25T01:59:02.867031" elapsed="0.002768"/>
</kw>
<doc>Restore original Connection To Controller And Check OVS Connection</doc>
<status status="PASS" start="2026-05-25T01:58:36.779313" elapsed="26.090531"/>
</test>
<kw name="Final Phase" type="TEARDOWN">
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-05-25T01:59:02.876655" level="INFO">DELETE Request : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes 
 path_url=/rests/data/opendaylight-inventory:nodes 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0i01xim3xr5f01n7bmiiue4x395.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-05-25T01:59:02.877660" level="INFO">DELETE Response : url=http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes 
 status=409, reason=Conflict 
 headers={'Content-Type': 'application/yang-data+xml', 'Content-Length': '308'} 
 body=&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf"&gt;&lt;error&gt;&lt;error-type&gt;protocol&lt;/error-type&gt;&lt;error-path xmlns:a="urn:opendaylight:inventory"&gt;/a:nodes&lt;/error-path&gt;&lt;error-message&gt;Data does not exist&lt;/error-message&gt;&lt;error-tag&gt;data-missing&lt;/error-tag&gt;&lt;/error&gt;&lt;/errors&gt; 
 </msg>
<msg time="2026-05-25T01:59:02.877790" level="FAIL">HTTPError: 409 Client Error: Conflict for url: http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes</msg>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}</arg>
<doc>Sends a DELETE request on a previously created HTTP Session.</doc>
<status status="FAIL" start="2026-05-25T01:59:02.870964" elapsed="0.007255">HTTPError: 409 Client Error: Conflict for url: http://10.30.170.200:8181/rests/data/opendaylight-inventory:nodes</status>
</kw>
<arg>RequestsLibrary.DELETE On Session</arg>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-05-25T01:59:02.870608" elapsed="0.007680"/>
</kw>
<kw name="Stop Mininet And Exit" owner="MininetKeywords">
<if>
<branch type="IF" condition="&quot;&quot;&quot;${mininet_conn}&quot;&quot;&quot; != &quot;&quot;">
<kw name="Switch Connection" owner="SSHLibrary">
<arg>${mininet_conn}</arg>
<doc>Switches the active connection by index or alias.</doc>
<status status="PASS" start="2026-05-25T01:59:02.884204" elapsed="0.000205"/>
</kw>
<status status="PASS" start="2026-05-25T01:59:02.883868" elapsed="0.000592"/>
</branch>
<status status="PASS" start="2026-05-25T01:59:02.883840" elapsed="0.000656"/>
</if>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-05-25T01:59:02.887522" level="INFO">exit</msg>
<arg>exit</arg>
<doc>Writes the given ``text`` on the remote machine and appends a newline.</doc>
<status status="PASS" start="2026-05-25T01:59:02.884691" elapsed="0.002889"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-05-25T01:59:02.982624" level="INFO">*** Stopping 1 controllers
c0 
*** Stopping 2 links
..
*** Stopping 1 switches
s1 
*** Stopping 2 hosts
h1 h2 
*** Done
completed in 68.891 seconds
[?2004h[jenkins@releng-14419-729-1-mininet-ovs-217-0 ~]&gt;</msg>
<arg>${TOOLS_SYSTEM_PROMPT}</arg>
<doc>Consumes and returns the server output until ``expected`` is encountered.</doc>
<status status="PASS" start="2026-05-25T01:59:02.887750" elapsed="0.095006"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-05-25T01:59:02.983109" elapsed="0.000205"/>
</kw>
<arg>${mininet_conn_id}</arg>
<doc>Stops Mininet and exits session ${mininet_conn}</doc>
<status status="PASS" start="2026-05-25T01:59:02.883553" elapsed="0.099829"/>
</kw>
<kw name="Delete All Sessions" owner="RequestsLibrary">
<msg time="2026-05-25T01:59:02.983618" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-05-25T01:59:02.983541" elapsed="0.000146"/>
</kw>
<doc>Stops mininet.</doc>
<status status="PASS" start="2026-05-25T01:59:02.870354" elapsed="0.113387"/>
</kw>
<doc>Test suite for Split connection bug.</doc>
<status status="PASS" start="2026-05-25T01:57:51.636990" elapsed="71.346786"/>
</suite>
<status status="PASS" start="2026-05-25T01:52:08.088932" elapsed="414.896855"/>
</suite>
<statistics>
<total>
<stat pass="412" fail="0" skip="0">All Tests</stat>
</total>
<tag>
<stat pass="1" fail="0" skip="0">all</stat>
<stat pass="1" fail="0" skip="0">controller</stat>
<stat pass="1" fail="0" skip="0">flood</stat>
<stat pass="1" fail="0" skip="0">inport</stat>
<stat pass="1" fail="0" skip="0">local</stat>
<stat pass="1" fail="0" skip="0">normal</stat>
<stat pass="1" fail="0" skip="0">switch_qualification</stat>
<stat pass="1" fail="0" skip="0">table</stat>
</tag>
<suite>
<stat name="openflowplugin-flow-services.txt" id="s1" pass="412" fail="0" skip="0">openflowplugin-flow-services.txt</stat>
<stat name="MD SAL NSF OF10" id="s1-s1" pass="21" fail="0" skip="0">openflowplugin-flow-services.txt.MD SAL NSF OF10</stat>
<stat name="010 Restconf Inventory" id="s1-s1-s1" pass="7" fail="0" skip="0">openflowplugin-flow-services.txt.MD SAL NSF OF10.010 Restconf Inventory</stat>
<stat name="020 Restconf Topology" id="s1-s1-s2" pass="4" fail="0" skip="0">openflowplugin-flow-services.txt.MD SAL NSF OF10.020 Restconf Topology</stat>
<stat name="030 Restconf Statistics" id="s1-s1-s3" pass="4" fail="0" skip="0">openflowplugin-flow-services.txt.MD SAL NSF OF10.030 Restconf Statistics</stat>
<stat name="040 Restconf Frm" id="s1-s1-s4" pass="6" fail="0" skip="0">openflowplugin-flow-services.txt.MD SAL NSF OF10.040 Restconf Frm</stat>
<stat name="MD SAL NSF OF13" id="s1-s2" pass="24" fail="0" skip="0">openflowplugin-flow-services.txt.MD SAL NSF OF13</stat>
<stat name="010 Restconf Inventory" id="s1-s2-s1" pass="7" fail="0" skip="0">openflowplugin-flow-services.txt.MD SAL NSF OF13.010 Restconf Inventory</stat>
<stat name="020 Restconf Topology" id="s1-s2-s2" pass="4" fail="0" skip="0">openflowplugin-flow-services.txt.MD SAL NSF OF13.020 Restconf Topology</stat>
<stat name="030 Restconf Statistics" id="s1-s2-s3" pass="4" fail="0" skip="0">openflowplugin-flow-services.txt.MD SAL NSF OF13.030 Restconf Statistics</stat>
<stat name="040 Restconf Frm" id="s1-s2-s4" pass="9" fail="0" skip="0">openflowplugin-flow-services.txt.MD SAL NSF OF13.040 Restconf Frm</stat>
<stat name="Stat Manager extended" id="s1-s3" pass="326" fail="0" skip="0">openflowplugin-flow-services.txt.Stat Manager extended</stat>
<stat name="010 SM add upd del flows" id="s1-s3-s1" pass="174" fail="0" skip="0">openflowplugin-flow-services.txt.Stat Manager extended.010 SM add upd del flows</stat>
<stat name="020 SM sal add upd del flows" id="s1-s3-s2" pass="152" fail="0" skip="0">openflowplugin-flow-services.txt.Stat Manager extended.020 SM sal add upd del flows</stat>
<stat name="Switch Qualification" id="s1-s4" pass="8" fail="0" skip="0">openflowplugin-flow-services.txt.Switch Qualification</stat>
<stat name="010 OpenFlow Connection" id="s1-s4-s1" pass="1" fail="0" skip="0">openflowplugin-flow-services.txt.Switch Qualification.010 OpenFlow Connection</stat>
<stat name="020 OpenFlow Actions" id="s1-s4-s2" pass="7" fail="0" skip="0">openflowplugin-flow-services.txt.Switch Qualification.020 OpenFlow Actions</stat>
<stat name="Reconciliation" id="s1-s5" pass="23" fail="0" skip="0">openflowplugin-flow-services.txt.Reconciliation</stat>
<stat name="010 Group Flows" id="s1-s5-s1" pass="23" fail="0" skip="0">openflowplugin-flow-services.txt.Reconciliation.010 Group Flows</stat>
<stat name="2429" id="s1-s6" pass="1" fail="0" skip="0">openflowplugin-flow-services.txt.2429</stat>
<stat name="6917" id="s1-s7" pass="2" fail="0" skip="0">openflowplugin-flow-services.txt.6917</stat>
<stat name="7258" id="s1-s8" pass="1" fail="0" skip="0">openflowplugin-flow-services.txt.7258</stat>
<stat name="7335" id="s1-s9" pass="2" fail="0" skip="0">openflowplugin-flow-services.txt.7335</stat>
<stat name="7349" id="s1-s10" pass="2" fail="0" skip="0">openflowplugin-flow-services.txt.7349</stat>
<stat name="8723" id="s1-s11" pass="2" fail="0" skip="0">openflowplugin-flow-services.txt.8723</stat>
</suite>
</statistics>
<errors>
</errors>
</robot>
